1 |
guez |
3 |
program test_disvert |
2 |
|
|
|
3 |
guez |
23 |
! This is a program in Fortran 95. |
4 |
|
|
! This program writes the vertical coordinates at level interfaces. |
5 |
|
|
|
6 |
guez |
3 |
use dimens_m, only: llm |
7 |
|
|
use comvert, only: pa, disvert, ap, bp, preff |
8 |
guez |
7 |
use new_unit_m, only: new_unit |
9 |
guez |
3 |
|
10 |
|
|
implicit none |
11 |
|
|
|
12 |
|
|
integer unit, l |
13 |
guez |
23 |
|
14 |
|
|
REAL s(llm+1) ! hybrid sigma-pressure coordinate |
15 |
|
|
! "s(l)" : à l'interface des couches "l" et "l-1" |
16 |
|
|
|
17 |
guez |
3 |
real p(llm + 1) ! pressure at level, in Pa |
18 |
|
|
|
19 |
|
|
!--------------------- |
20 |
|
|
|
21 |
|
|
print *, "llm = ", llm |
22 |
|
|
pa = 5e4 |
23 |
|
|
call disvert |
24 |
guez |
23 |
s = ap / pa + bp |
25 |
guez |
3 |
p = ap + bp * preff |
26 |
|
|
|
27 |
guez |
10 |
call new_unit(unit) |
28 |
guez |
3 |
open(unit, file="test_disvert.csv", status="replace", action="write") |
29 |
guez |
23 |
write(unit, fmt=*) '"ap (hPa)" "bp" "s" "p (hPa)"' ! title line |
30 |
guez |
3 |
do l = 1, llm |
31 |
guez |
23 |
write(unit, fmt=*) ap(l) / 100., bp(l), s(l), p(l) / 100. |
32 |
guez |
3 |
end do |
33 |
|
|
close(unit) |
34 |
|
|
print *, 'The file "test_disvert.csv" has been created.' |
35 |
|
|
|
36 |
|
|
end program test_disvert |