Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
M
Méso-NH code
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Méso-NH
Méso-NH code
Commits
166df24c
Commit
166df24c
authored
2 years ago
by
RODIER Quentin
Browse files
Options
Downloads
Patches
Plain Diff
Quentin 28/07/2022: move outside of turb, computation of ZDIST for OCEAN (+not used yet)
parent
1ad2e6a1
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/common/turb/mode_turb_ver_thermo_flux.F90
+0
-45
0 additions, 45 deletions
src/common/turb/mode_turb_ver_thermo_flux.F90
src/mesonh/ext/phys_paramn.f90
+35
-1
35 additions, 1 deletion
src/mesonh/ext/phys_paramn.f90
with
35 additions
and
46 deletions
src/common/turb/mode_turb_ver_thermo_flux.F90
+
0
−
45
View file @
166df24c
...
...
@@ -238,11 +238,9 @@ USE MODD_PARAMETERS
USE
MODD_TURB_n
,
ONLY
:
LHGRAD
,
XCOEFHGRADTHL
,
XCOEFHGRADRM
,
XALTHGRAD
,
XCLDTHOLD
USE
MODD_CONF
USE
MODD_LES
USE
MODD_DIM_n
USE
MODD_OCEANH
USE
MODD_REF
,
ONLY
:
LCOUPLES
USE
MODD_TURB_n
USE
MODD_FRC
!
USE
MODI_GRADIENT_U
USE
MODI_GRADIENT_V
...
...
@@ -258,8 +256,6 @@ USE MODE_IO_FIELD_WRITE, ONLY: IO_FIELD_WRITE
USE
MODE_PRANDTL
!
USE
MODI_SECOND_MNH
USE
MODE_ll
USE
MODE_GATHER_ll
!
IMPLICIT
NONE
!
...
...
@@ -384,24 +380,14 @@ INTEGER :: IIB,IJB ! Lower bounds of the physical
INTEGER
::
IIE
,
IJE
! Upper bounds of the physical
! sub-domain in x and y directions
!
REAL
,
DIMENSION
(:),
ALLOCATABLE
::
ZXHAT_ll
! Position x in the conformal
! plane (array on the complete domain)
REAL
,
DIMENSION
(:),
ALLOCATABLE
::
ZYHAT_ll
! Position y in the conformal
! plane (array on the complete domain)
!
!
REAL
::
ZTIME1
,
ZTIME2
REAL
::
ZDELTAX
REAL
::
ZXBEG
,
ZXEND
,
ZYBEG
,
ZYEND
! Forcing size for ocean deep convection
REAL
,
DIMENSION
(
SIZE
(
XXHAT
),
SIZE
(
XYHAT
))
::
ZDIST
! distance
! from the center of the cooling
REAL
::
ZFLPROV
INTEGER
::
JKM
! vertical index loop
INTEGER
::
JSW
REAL
::
ZSWA
! index for time flux interpolation
!
INTEGER
::
IIU
,
IJU
INTEGER
::
IRESP
INTEGER
::
JK
LOGICAL
::
GUSERV
! flag to use water
LOGICAL
::
GFTH2
! flag to use w'th'2
...
...
@@ -421,34 +407,6 @@ IF (LHOOK) CALL DR_HOOK('TURB_VER_THERMO_FLUX',0,ZHOOK_HANDLE)
! Size for a given proc & a given model
IIU
=
SIZE
(
PTHLM
,
1
)
IJU
=
SIZE
(
PTHLM
,
2
)
!
!! Compute Shape of sfc flux for Oceanic Deep Conv Case
!
IF
(
OOCEAN
.AND.
LDEEPOC
)
THEN
!* COMPUTES THE PHYSICAL SUBDOMAIN BOUNDS
ALLOCATE
(
ZXHAT_ll
(
NIMAX_ll
+2
*
JPHEXT
),
ZYHAT_ll
(
NJMAX_ll
+2
*
JPHEXT
))
!compute ZXHAT_ll = position in the (0:Lx) domain 1 (Lx=Size of domain1 )
!compute XXHAT_ll = position in the (L0_subproc,Lx_subproc) domain for the current subproc
! L0_subproc as referenced in the full domain 1
CALL
GATHERALL_FIELD_ll
(
'XX'
,
XXHAT
,
ZXHAT_ll
,
IRESP
)
CALL
GATHERALL_FIELD_ll
(
'YY'
,
XYHAT
,
ZYHAT_ll
,
IRESP
)
CALL
GET_DIM_EXT_ll
(
'B'
,
IIU
,
IJU
)
CALL
GET_INDICE_ll
(
IIB
,
IJB
,
IIE
,
IJE
,
IIU
,
IJU
)
DO
JJ
=
IJB
,
IJE
DO
JI
=
IIB
,
IIE
ZDIST
(
JI
,
JJ
)
=
SQRT
(
&
((
(
XXHAT
(
JI
)
+
XXHAT
(
JI
+1
))
*
0.5
-
XCENTX_OC
)
/
XRADX_OC
)
**
2
+
&
((
(
XYHAT
(
JJ
)
+
XYHAT
(
JJ
+1
))
*
0.5
-
XCENTY_OC
)
/
XRADY_OC
)
**
2
&
)
END
DO
END
DO
DO
JJ
=
IJB
,
IJE
DO
JI
=
IIB
,
IIE
IF
(
ZDIST
(
JI
,
JJ
)
>
1.
)
XSSTFL
(
JI
,
JJ
)
=
0.
END
DO
END
DO
END
IF
!END DEEP OCEAN CONV CASE
!
IKT
=
SIZE
(
PTHLM
,
3
)
IKTE
=
IKT
-
JPVEXT_TURB
IKTB
=
1
+
JPVEXT_TURB
...
...
@@ -1025,9 +983,6 @@ IF ( ((OTURB_FLX .AND. TPFILE%LOPENED) .OR. LLES_CALL) .AND. (KRRL > 0) ) THEN
END
IF
!
END
IF
!end of <w Rc>
IF
(
OOCEAN
.AND.
LDEEPOC
)
THEN
DEALLOCATE
(
ZXHAT_ll
,
ZYHAT_ll
)
END
IF
!
!----------------------------------------------------------------------------
IF
(
LHOOK
)
CALL
DR_HOOK
(
'TURB_VER_THERMO_FLUX'
,
1
,
ZHOOK_HANDLE
)
...
...
This diff is collapsed.
Click to expand it.
src/mesonh/ext/phys_paramn.f90
+
35
−
1
View file @
166df24c
...
...
@@ -261,6 +261,7 @@ USE MODD_DEEP_CONVECTION_n
USE
MODD_DEF_EDDY_FLUX_n
! Ajout PP
USE
MODD_DEF_EDDYUV_FLUX_n
! Ajout PP
USE
MODD_DIAG_IN_RUN
,
ONLY
:
LDIAG_IN_RUN
,
XCURRENT_TKE_DISS
USE
MODD_DIM_n
,
ONLY
:
NIMAX_ll
,
NJMAX_ll
USE
MODD_DRAGBLDG_n
USE
MODD_DRAGTREE_n
USE
MODD_DUST
...
...
@@ -319,6 +320,7 @@ use mode_budget, only: Budget_store_end, Budget_store_init
USE
MODE_DATETIME
USE
MODE_DUST_PSD
USE
MODE_ll
USE
MODE_GATHER_ll
USE
MODE_MNH_TIMING
USE
MODE_MODELN_HANDLER
USE
MODE_MPPDB
...
...
@@ -422,7 +424,7 @@ INTEGER :: IIU, IJU, IKU ! dimensional indexes
!
INTEGER
::
JSV
! Loop index for Scalar Variables
INTEGER
::
JSWB
! loop on SW spectral bands
INTEGER
::
IIB
,
IIE
,
IJB
,
IJE
,
IKB
,
IKE
INTEGER
::
IIB
,
IIE
,
IJB
,
IJE
,
IKB
,
IKE
,
JI
,
JJ
INTEGER
::
IMODEIDX
! index values for the Beginning or the End of the physical
! domain in x and y directions
...
...
@@ -456,6 +458,9 @@ REAL, DIMENSION(:), ALLOCATABLE :: ZPROSOL1(:),ZPROSOL2(:) ! Funtions for penetr
!
REAL
,
DIMENSION
(:,:,:),
ALLOCATABLE
::
ZLENGTHM
,
ZLENGTHH
,
ZMFMOIST
!LHARAT turb option from AROME
REAL
,
DIMENSION
(:,:,:),
ALLOCATABLE
::
ZTDIFF
,
ZTDISS
REAL
,
DIMENSION
(:),
ALLOCATABLE
::
ZXHAT_ll
,
ZYHAT_ll
! Position x/y in the conformal
! plane (array on the complete domain)
REAL
,
DIMENSION
(:,:),
ALLOCATABLE
::
ZDIST
! distance from the center of the cooling
!
!-----------------------------------------------------------------------------
...
...
@@ -1487,6 +1492,35 @@ END IF
!
ALLOCATE
(
ZTDIFF
(
IIU
,
IJU
,
IKU
))
ALLOCATE
(
ZTDISS
(
IIU
,
IJU
,
IKU
))
!
!
!! Compute Shape of sfc flux for Oceanic Deep Conv Case
!
IF
(
LOCEAN
.AND.
LDEEPOC
)
THEN
ALLOCATE
(
ZDIST
(
IIU
,
IJU
))
!* COMPUTES THE PHYSICAL SUBDOMAIN BOUNDS
ALLOCATE
(
ZXHAT_ll
(
NIMAX_ll
+2
*
JPHEXT
),
ZYHAT_ll
(
NJMAX_ll
+2
*
JPHEXT
))
!compute ZXHAT_ll = position in the (0:Lx) domain 1 (Lx=Size of domain1 )
!compute XXHAT_ll = position in the (L0_subproc,Lx_subproc) domain for the current subproc
! L0_subproc as referenced in the full domain 1
CALL
GATHERALL_FIELD_ll
(
'XX'
,
XXHAT
,
ZXHAT_ll
,
IRESP
)
CALL
GATHERALL_FIELD_ll
(
'YY'
,
XYHAT
,
ZYHAT_ll
,
IRESP
)
CALL
GET_DIM_EXT_ll
(
'B'
,
IIU
,
IJU
)
DO
JJ
=
IJB
,
IJE
DO
JI
=
IIB
,
IIE
ZDIST
(
JI
,
JJ
)
=
SQRT
(
&
((
(
XXHAT
(
JI
)
+
XXHAT
(
JI
+1
))
*
0.5
-
XCENTX_OC
)
/
XRADX_OC
)
**
2
+
&
((
(
XYHAT
(
JJ
)
+
XYHAT
(
JJ
+1
))
*
0.5
-
XCENTY_OC
)
/
XRADY_OC
)
**
2
&
)
END
DO
END
DO
DO
JJ
=
IJB
,
IJE
DO
JI
=
IIB
,
IIE
IF
(
ZDIST
(
JI
,
JJ
)
>
1.
)
XSSTFL
(
JI
,
JJ
)
=
0.
END
DO
END
DO
END
IF
!END DEEP OCEAN CONV CASE
!
!
CALL
TURB
(
1
,
IKU
,
1
,
IMI
,
NRR
,
NRRL
,
NRRI
,
CLBCX
,
CLBCY
,
1
,
NMODEL_CLOUD
,
&
LTURB_FLX
,
LTURB_DIAG
,
LSUBG_COND
,
LRMC01
,
LOCEAN
,
LDIAG_IN_RUN
,
&
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment