source: LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/read_surface_F90_orig_read_inversedlat @ 2916

Last change on this file since 2916 was 2175, checked in by jescribano, 10 years ago

SPLA code included for first time

File size: 2.1 KB
Line 
1       subroutine read_surface(name,surfa)
2
3     
4! common
5! ------
6       USE ioipsl
7       USE comgeomphy
8       USE dimphy
9       USE mod_grid_phy_lmdz
10       USE mod_phys_lmdz_para
11       USE iophy
12!       USE netcdf
13       IMPLICIT NONE
14
15       include "netcdf.inc"
16#include "dimensions.h"
17#include "paramet.h"
18
19       character*10 name
20       character*10 varname
21!
22       real tmp_dyn(iip1,jjp1)
23       REAL tmp_dyn_invers(iip1,jjp1)
24       real tmp_fi(klon)
25       real surfa(klon,5)
26!
27       integer ncid
28       integer varid
29       real rcode
30       integer start(2),count(2),status
31       integer i,j,l,ig
32       character*1 str1
33
34       print*,'Lecture du fichier donnees_lisa.nc'
35       ncid=NCOPN('donnees_lisa.nc',NCNOWRIT,rcode)
36
37       DO i=1,5
38          write(str1,'(i1)') i
39          varname=trim(name)//str1
40       print*,'lecture variable:',varname
41          varid=NCVID(ncid,trim(varname),rcode)
42!          varid=NCVID(ncid,varname,rcode)
43
44!  dimensions pour les champs scalaires et le vent zonal
45!  -----------------------------------------------------
46
47          start(1)=1
48          start(2)=1     
49          count(1)=iip1
50          count(2)=jjp1
51
52! mise a zero des tableaux
53! ------------------------
54          tmp_dyn(:,:)=0.0
55          tmp_fi(:)=0.0
56! Lecture
57! -----------------------
58#ifdef NC_DOUBLE
59          status=NF_GET_VARA_DOUBLE(ncid,varid,start,count,tmp_dyn)
60#else
61          status=NF_GET_VARA_REAL(ncid,varid,start,count,tmp_dyn)
62#endif
63
64!      call dump2d(iip1,jjp1,tmp_dyn,'tmp_dyn   ')
65       DO j=1, jjp1
66          DO ig=1, iip1
67             tmp_dyn_invers(ig,j)=tmp_dyn(ig,jjp1-j+1)
68          ENDDO
69       ENDDO
70
71       
72!JE20140522!          call gr_dyn_fi_p(1, iip1, jjp1, klon, tmp_dyn_invers, tmp_fi)
73          call gr_dyn_fi(1, iip1, jjp1, klon, tmp_dyn_invers, tmp_fi)
74!      call dump2d(iim,jjm-1,tmp_fi(2),'tmp_fi   ')
75!
76          DO j=1,klon
77
78                surfa(j,i)=tmp_fi(j)
79
80          ENDDO ! Fin de recopie du tableau
81!
82       ENDDO ! Fin boucle 1 a 5
83       print*,'Passage Grille Dyn -> Phys'
84       return
85       end subroutine read_surface
Note: See TracBrowser for help on using the repository browser.