Changeset 5470 for LMDZ6/trunk/libf/phylmd/physiq_mod.F90
- Timestamp:
- Jan 11, 2025, 9:36:52 PM (3 days ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/physiq_mod.F90
r5468 r5470 1019 1019 1020 1020 REAL picefra(klon,klev) 1021 REAL zrel_oro(klon)1021 REAL nm_oro(klon) 1022 1022 !IM cf. AM 081204 END 1023 1023 ! … … 4841 4841 ! a l'echelle sous-maille: 4842 4842 ! 4843 4844 ! calculation of nm_oro 4845 DO i=1,klon 4846 ! nm_oro is a proxy for the number of subgrid scale mountains 4847 ! -> condition on nm_oro can deactivate the lifting on tilted planar terrains 4848 ! such as ice sheets (work by V. Wiener) 4849 ! in such a case, the SSO scheme should activate only where nm_oro>0 i.e. by setting 4850 ! nm_oro_t=0. 4851 nm_oro(i)=zsig(i)*sqrt(cell_area(i)*(pctsrf(i,is_ter)+pctsrf(i,is_lic)))/(4.*MAX(zstd(i),1.e-8))-1. 4852 ENDDO 4853 4843 4854 IF (prt_level .GE.10) THEN 4844 4855 print *,' call orography ? ', ok_orodr … … 4851 4862 DO i=1,klon 4852 4863 itest(i)=0 4853 zrel_oro(i)=zstd(i)/(max(zsig(i),1.E-8)*sqrt(cell_area(i)))4854 !zrel_oro: relative mountain height wrt relief explained by mean slope4855 ! -> condition on zrel_oro can deactivate the drag on tilted planar terrains4856 ! such as ice sheets (work by V. Wiener)4857 4864 ! zpmm_orodr_t and zstd_orodr_t are activation thresholds set by F. Lott to 4858 4865 ! earn computation time but they are not physical. 4859 IF (((zpic(i)-zmea(i)).GT.zpmm_orodr_t).AND.(zstd(i).GT.zstd_orodr_t).AND.( zrel_oro(i).LE.zrel_oro_t)) THEN4866 IF (((zpic(i)-zmea(i)).GT.zpmm_orodr_t).AND.(zstd(i).GT.zstd_orodr_t).AND.(nm_oro(i).GT.nm_oro_t)) THEN 4860 4867 itest(i)=1 4861 4868 igwd=igwd+1 … … 4906 4913 DO i=1,klon 4907 4914 itest(i)=0 4908 !zrel_oro: relative mountain height wrt relief explained by mean slope 4909 ! -> condition on zrel_oro can deactivate the lifting on tilted planar terrains 4910 ! such as ice sheets (work by V. Wiener) 4911 zrel_oro(i)=zstd(i)/(max(zsig(i),1.E-8)*sqrt(cell_area(i))) 4912 IF (((zpic(i)-zmea(i)).GT.zpmm_orolf_t).AND.(zrel_oro(i).LE.zrel_oro_t)) THEN 4915 IF (((zpic(i)-zmea(i)).GT.zpmm_orolf_t).AND.(nm_oro(i).GT.nm_oro_t)) THEN 4913 4916 itest(i)=1 4914 4917 igwd=igwd+1 … … 5151 5154 ! car on peut s'attendre a ce que les petites echelles produisent aussi de la TKE 5152 5155 ! Mais attention, cela ne va pas dans le sens de la conservation de l'energie! 5153 IF ((zstd(i).GT.1.0) .AND.( zrel_oro(i).LE.zrel_oro_t)) THEN5156 IF ((zstd(i).GT.1.0) .AND.(nm_oro(i).GT.nm_oro_t)) THEN 5154 5157 itest(i)=1 5155 5158 igwd=igwd+1 … … 5163 5166 DO i=1,klon 5164 5167 itest(i)=0 5165 IF (((zpic(i)-zmea(i)).GT.zpmm_orodr_t).AND.(zstd(i).GT.zstd_orodr_t).AND.( zrel_oro(i).LE.zrel_oro_t)) THEN5168 IF (((zpic(i)-zmea(i)).GT.zpmm_orodr_t).AND.(zstd(i).GT.zstd_orodr_t).AND.(nm_oro(i).GT.nm_oro_t)) THEN 5166 5169 itest(i)=1 5167 5170 igwd=igwd+1
Note: See TracChangeset
for help on using the changeset viewer.