Changeset 1682 for palm/trunk/SOURCE/production_e.f90
- Timestamp:
- Oct 7, 2015 11:56:08 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/production_e.f90
r1375 r1682 1 MODULE production_e_mod 2 1 !> @file production_e.f90 3 2 !--------------------------------------------------------------------------------! 4 3 ! This file is part of PALM. … … 20 19 ! Current revisions: 21 20 ! ----------------- 22 ! 21 ! Code annotations made doxygen readable 23 22 ! 24 23 ! Former revisions: … … 75 74 ! Description: 76 75 ! ------------ 77 ! Production terms (shear + buoyancy) of the TKE78 ! WARNING: the case with prandtl_layer = F and use_surface_fluxes = T is79 ! not considered well!76 !> Production terms (shear + buoyancy) of the TKE. 77 !> @warning The case with prandtl_layer = F and use_surface_fluxes = T is 78 !> not considered well! 80 79 !------------------------------------------------------------------------------! 80 MODULE production_e_mod 81 81 82 82 83 USE wall_fluxes_mod, & … … 88 89 PUBLIC production_e, production_e_acc, production_e_init 89 90 90 LOGICAL, SAVE :: first_call = .TRUE. ! :91 92 REAL(wp), DIMENSION(:,:), ALLOCATABLE, SAVE :: u_0 ! :93 REAL(wp), DIMENSION(:,:), ALLOCATABLE, SAVE :: v_0 ! :91 LOGICAL, SAVE :: first_call = .TRUE. !< 92 93 REAL(wp), DIMENSION(:,:), ALLOCATABLE, SAVE :: u_0 !< 94 REAL(wp), DIMENSION(:,:), ALLOCATABLE, SAVE :: v_0 !< 94 95 95 96 INTERFACE production_e … … 110 111 111 112 !------------------------------------------------------------------------------! 112 ! Call for all grid points 113 ! Description: 114 ! ------------ 115 !> Call for all grid points 113 116 !------------------------------------------------------------------------------! 114 117 SUBROUTINE production_e … … 136 139 IMPLICIT NONE 137 140 138 INTEGER(iwp) :: i ! :139 INTEGER(iwp) :: j ! :140 INTEGER(iwp) :: k ! :141 142 REAL(wp) :: def ! :143 REAL(wp) :: dudx ! :144 REAL(wp) :: dudy ! :145 REAL(wp) :: dudz ! :146 REAL(wp) :: dvdx ! :147 REAL(wp) :: dvdy ! :148 REAL(wp) :: dvdz ! :149 REAL(wp) :: dwdx ! :150 REAL(wp) :: dwdy ! :151 REAL(wp) :: dwdz ! :152 REAL(wp) :: k1 ! :153 REAL(wp) :: k2 ! :154 REAL(wp) :: km_neutral ! :155 REAL(wp) :: theta ! :156 REAL(wp) :: temp ! :141 INTEGER(iwp) :: i !< 142 INTEGER(iwp) :: j !< 143 INTEGER(iwp) :: k !< 144 145 REAL(wp) :: def !< 146 REAL(wp) :: dudx !< 147 REAL(wp) :: dudy !< 148 REAL(wp) :: dudz !< 149 REAL(wp) :: dvdx !< 150 REAL(wp) :: dvdy !< 151 REAL(wp) :: dvdz !< 152 REAL(wp) :: dwdx !< 153 REAL(wp) :: dwdy !< 154 REAL(wp) :: dwdz !< 155 REAL(wp) :: k1 !< 156 REAL(wp) :: k2 !< 157 REAL(wp) :: km_neutral !< 158 REAL(wp) :: theta !< 159 REAL(wp) :: temp !< 157 160 158 161 ! REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: usvs, vsus, wsus, wsvs 159 REAL(wp), DIMENSION(nzb:nzt+1) :: usvs ! :160 REAL(wp), DIMENSION(nzb:nzt+1) :: vsus ! :161 REAL(wp), DIMENSION(nzb:nzt+1) :: wsus ! :162 REAL(wp), DIMENSION(nzb:nzt+1) :: wsvs ! :162 REAL(wp), DIMENSION(nzb:nzt+1) :: usvs !< 163 REAL(wp), DIMENSION(nzb:nzt+1) :: vsus !< 164 REAL(wp), DIMENSION(nzb:nzt+1) :: wsus !< 165 REAL(wp), DIMENSION(nzb:nzt+1) :: wsvs !< 163 166 164 167 ! … … 714 717 715 718 !------------------------------------------------------------------------------! 716 ! Call for all grid points - accelerator version 719 ! Description: 720 ! ------------ 721 !> Call for all grid points - accelerator version 717 722 !------------------------------------------------------------------------------! 718 723 SUBROUTINE production_e_acc … … 741 746 IMPLICIT NONE 742 747 743 INTEGER(iwp) :: i ! :744 INTEGER(iwp) :: j ! :745 INTEGER(iwp) :: k ! :746 747 REAL(wp) :: def ! :748 REAL(wp) :: dudx ! :749 REAL(wp) :: dudy ! :750 REAL(wp) :: dudz ! :751 REAL(wp) :: dvdx ! :752 REAL(wp) :: dvdy ! :753 REAL(wp) :: dvdz ! :754 REAL(wp) :: dwdx ! :755 REAL(wp) :: dwdy ! :756 REAL(wp) :: dwdz ! :757 REAL(wp) :: k1 ! :758 REAL(wp) :: k2 ! :759 REAL(wp) :: km_neutral ! :760 REAL(wp) :: theta ! :761 REAL(wp) :: temp ! :762 763 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: usvs ! :764 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: vsus ! :765 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: wsus ! :766 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: wsvs ! :748 INTEGER(iwp) :: i !< 749 INTEGER(iwp) :: j !< 750 INTEGER(iwp) :: k !< 751 752 REAL(wp) :: def !< 753 REAL(wp) :: dudx !< 754 REAL(wp) :: dudy !< 755 REAL(wp) :: dudz !< 756 REAL(wp) :: dvdx !< 757 REAL(wp) :: dvdy !< 758 REAL(wp) :: dvdz !< 759 REAL(wp) :: dwdx !< 760 REAL(wp) :: dwdy !< 761 REAL(wp) :: dwdz !< 762 REAL(wp) :: k1 !< 763 REAL(wp) :: k2 !< 764 REAL(wp) :: km_neutral !< 765 REAL(wp) :: theta !< 766 REAL(wp) :: temp !< 767 768 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: usvs !< 769 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: vsus !< 770 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: wsus !< 771 REAL(wp), DIMENSION(nzb:nzt+1,nys:nyn,nxl:nxr) :: wsvs !< 767 772 !$acc declare create ( usvs, vsus, wsus, wsvs ) 768 773 … … 1380 1385 1381 1386 !------------------------------------------------------------------------------! 1382 ! Call for grid point i,j 1387 ! Description: 1388 ! ------------ 1389 !> Call for grid point i,j 1383 1390 !------------------------------------------------------------------------------! 1384 1391 SUBROUTINE production_e_ij( i, j ) … … 1406 1413 IMPLICIT NONE 1407 1414 1408 INTEGER(iwp) :: i ! :1409 INTEGER(iwp) :: j ! :1410 INTEGER(iwp) :: k ! :1411 1412 REAL(wp) :: def ! :1413 REAL(wp) :: dudx ! :1414 REAL(wp) :: dudy ! :1415 REAL(wp) :: dudz ! :1416 REAL(wp) :: dvdx ! :1417 REAL(wp) :: dvdy ! :1418 REAL(wp) :: dvdz ! :1419 REAL(wp) :: dwdx ! :1420 REAL(wp) :: dwdy ! :1421 REAL(wp) :: dwdz ! :1422 REAL(wp) :: k1 ! :1423 REAL(wp) :: k2 ! :1424 REAL(wp) :: km_neutral ! :1425 REAL(wp) :: theta ! :1426 REAL(wp) :: temp ! :1427 1428 REAL(wp), DIMENSION(nzb:nzt+1) :: usvs ! :1429 REAL(wp), DIMENSION(nzb:nzt+1) :: vsus ! :1430 REAL(wp), DIMENSION(nzb:nzt+1) :: wsus ! :1431 REAL(wp), DIMENSION(nzb:nzt+1) :: wsvs ! :1415 INTEGER(iwp) :: i !< 1416 INTEGER(iwp) :: j !< 1417 INTEGER(iwp) :: k !< 1418 1419 REAL(wp) :: def !< 1420 REAL(wp) :: dudx !< 1421 REAL(wp) :: dudy !< 1422 REAL(wp) :: dudz !< 1423 REAL(wp) :: dvdx !< 1424 REAL(wp) :: dvdy !< 1425 REAL(wp) :: dvdz !< 1426 REAL(wp) :: dwdx !< 1427 REAL(wp) :: dwdy !< 1428 REAL(wp) :: dwdz !< 1429 REAL(wp) :: k1 !< 1430 REAL(wp) :: k2 !< 1431 REAL(wp) :: km_neutral !< 1432 REAL(wp) :: theta !< 1433 REAL(wp) :: temp !< 1434 1435 REAL(wp), DIMENSION(nzb:nzt+1) :: usvs !< 1436 REAL(wp), DIMENSION(nzb:nzt+1) :: vsus !< 1437 REAL(wp), DIMENSION(nzb:nzt+1) :: wsus !< 1438 REAL(wp), DIMENSION(nzb:nzt+1) :: wsvs !< 1432 1439 1433 1440 ! … … 1903 1910 1904 1911 1912 !------------------------------------------------------------------------------! 1913 ! Description: 1914 ! ------------ 1915 !> @todo Missing subroutine description. 1916 !------------------------------------------------------------------------------! 1905 1917 SUBROUTINE production_e_init 1906 1918 … … 1917 1929 IMPLICIT NONE 1918 1930 1919 INTEGER(iwp) :: i ! :1920 INTEGER(iwp) :: j ! :1921 INTEGER(iwp) :: ku ! :1922 INTEGER(iwp) :: kv ! :1931 INTEGER(iwp) :: i !< 1932 INTEGER(iwp) :: j !< 1933 INTEGER(iwp) :: ku !< 1934 INTEGER(iwp) :: kv !< 1923 1935 1924 1936 IF ( prandtl_layer ) THEN
Note: See TracChangeset
for help on using the changeset viewer.