Changeset 248 for trunk/SOURCES/climat_forcage_mod.f90
- Timestamp:
- 01/28/19 14:06:08 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SOURCES/climat_forcage_mod.f90
r243 r248 6 6 ! possibilite d'utiliser autant de snapshots que l'on veut (ntr) 7 7 ! fichiers de forcage, Snapshot et valeurs de lapse rate definis dans fichier param 8 use module3d_phy,only:nx,ny,sealevel,sealevel_2d,S, S0,Tmois,Tann,Tjuly,acc,num_forc,num_param,num_rep_42,tafor,coefbmshelf,PI,ro,time,dirforcage,dirnameinp8 use module3d_phy,only:nx,ny,sealevel,sealevel_2d,S,Tmois,Tann,Tjuly,acc,num_forc,num_param,num_rep_42,tafor,coefbmshelf,PI,ro,time,dirforcage,dirnameinp 9 9 use netcdf 10 10 use io_netcdf_grisli … … 41 41 ! 2 for steady state using snap 2 ... 42 42 ! 0 for transient 43 44 ! S0 topo de ref correspondant a la climato est lu dans lect_topo45 43 46 44 ! variables pour climato mensuelle : 47 45 real,dimension(nx,ny,12) :: t2m0 !< initial monthly air temperature (climato) 48 46 real,dimension(nx,ny,12) :: pr0 !< initial monthly precip (climato) 47 real,dimension(nx,ny) :: orog0 !< topo de la climato 49 48 50 49 ! climat des snapshots : … … 53 52 real,dimension(nx,ny,ntr) :: orog_ss !< topo for every GCM snapshot 54 53 55 real,dimension(nx,ny,12,ntr) :: t2m_sstopo0 !< t2m GCM snapshot on S056 real,dimension(nx,ny,12,ntr) :: pr_sstopo0 !< pr GCM snapshot on S054 real,dimension(nx,ny,12,ntr) :: t2m_sstopo0 !< t2m GCM snapshot on orog0 55 real,dimension(nx,ny,12,ntr) :: pr_sstopo0 !< pr GCM snapshot on orog0 57 56 58 57 real :: PYY !< constante pour calcul de la fraction solide des precips … … 87 86 call Read_Ncdf_var('t2m',trim(DIRNAMEINP)//TRIM(clim_ref_file),tab3d) 88 87 t2m0(:,:,:)=tab3d(:,:,:) 88 call Read_Ncdf_var('orog',trim(DIRNAMEINP)//TRIM(clim_ref_file),tab2d) 89 orog0(:,:)=tab2d(:,:) 89 90 90 91 filtr(1)=TRIM(DIRNAMEINP)//'Snapshots-GCM/'//TRIM(forcage_file1) … … 125 126 do m=1,12 126 127 do k=1,ntr 127 t2m_sstopo0(:,:,m,k)=t2m_ss(:,:,m,k)-lapserate*( S0(:,:)-orog_ss(:,:,k))128 t2m_sstopo0(:,:,m,k)=t2m_ss(:,:,m,k)-lapserate*(orog0(:,:)-orog_ss(:,:,k)) 128 129 pr_sstopo0(:,:,m,k)=pr_ss(:,:,m,k)*exp(rappact*(t2m_sstopo0(:,:,m,k)-t2m_ss(:,:,m,k))) 129 130 enddo … … 246 247 integer :: ift !< indice correspondant au pas de temps du fichier de forcage 247 248 real :: TEMP !< calcul du nbr de jour < psolid 248 real,dimension(nx,ny) :: deltaZs ! diff temp par rapport a topo S0249 real,dimension(nx,ny) :: deltaZs ! diff temp par rapport a topo orog0 249 250 real,dimension(nx,ny,12) :: prmois ! precip sur topo Zs 250 251 … … 350 351 !$OMP WORKSHARE 351 352 Zs(:,:)=max(sealevel_2d(:,:),S(:,:)) 352 deltaZs(:,:)= -lapserate*(Zs(:,:)- S0(:,:)) ! difference de temperature entre Zs et S0353 deltaZs(:,:)= -lapserate*(Zs(:,:)-orog0(:,:)) ! difference de temperature entre Zs et orog0 353 354 !$OMP END WORKSHARE 354 355 ! correction d'altitude
Note: See TracChangeset
for help on using the changeset viewer.