Changeset 6b22af9 in flexpart.git for src/mpi_mod.f90
- Timestamp:
- Nov 20, 2015, 5:41:29 PM (8 years ago)
- Branches:
- master, 10.4.1_pesei, GFS_025, bugfixes+enhancements, dev, release-10, release-10.4.1, scaling-bug, univie
- Children:
- a1f4dd6
- Parents:
- df967a99
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/mpi_mod.f90
rf55fdce r6b22af9 105 105 ! If setting this to .false., numwfmem must be set to 3 106 106 !=============================================================================== 107 logical :: lmp_sync=. true.107 logical :: lmp_sync=.false. 108 108 !=============================================================================== 109 109 … … 119 119 logical, parameter :: mp_dbg_out = .false. 120 120 logical, parameter :: mp_time_barrier=.true. 121 logical, parameter :: mp_measure_time=. false.121 logical, parameter :: mp_measure_time=.true. 122 122 logical, parameter :: mp_exact_numpart=.true. 123 123 … … 214 214 lmp_sync=.true. ! :DBG: eso fix this... 215 215 end if 216 ! TODO: Add warnings for unimplemented flexpart features 216 217 ! TODO: Add more warnings for unimplemented flexpart features 217 218 218 219 ! Set ID of process that calls getfield/readwind. … … 434 435 ! Distribute particle variables from pid0 to all processes. 435 436 ! Called from timemanager 436 ! 437 ! *NOT IN USE* at the moment, but can be useful for debugging 437 438 ! 438 439 !*********************************************************************** … … 588 589 ! concentrations/writing output grids. * 589 590 ! * 590 ! Currently not in use, as each process calculates concentrations*591 ! separately .*591 ! Currently *not in use*, as each process calculates concentrations * 592 ! separately, but can be useful for debugging * 592 593 ! * 593 594 ! To use this routine (together with mpif_tm_send_vars) to transfer data * … … 595 596 ! (in timemanager_mpi.f90) * 596 597 ! * 597 ! if (lroot) tot_numpart=numpart ! root stores total numpart *598 ! if (lroot) tot_numpart=numpart ! root stores total numpart * 598 599 ! call mpif_tm_send_dims * 599 600 ! if (numpart>1) then * … … 605 606 ! * 606 607 ! if (numpart>0) then * 607 ! if (lroot) numpart = tot_numpart *608 ! if (lroot) numpart = tot_numpart * 608 609 ! call mpif_tm_collect_vars * 609 610 ! end if * 610 611 ! * 611 ! Then a section that begins with "if (lroot) ..." will behave like*612 ! serial flexpart*612 ! Then a section that begins with "if (lroot) ..." will behave like * 613 ! serial flexpart * 613 614 ! * 614 615 !******************************************************************************* … … 2066 2067 2067 2068 2069 subroutine set_fields_synthetic() 2070 !******************************************************************************* 2071 ! DESCRIPTION 2072 ! Set all meteorological fields to synthetic (usually constant/homogeneous) 2073 ! values. 2074 ! Used for validation and error-checking 2075 ! 2076 ! NOTE 2077 ! This version uses asynchronious communications. 2078 ! 2079 ! VARIABLES 2080 ! 2081 ! 2082 ! TODO 2083 ! 2084 !******************************************************************************* 2085 use com_mod 2086 2087 implicit none 2088 2089 integer, parameter :: li=1, ui=3 ! wfmem indices (i.e, operate on entire field) 2090 2091 2092 ! Variables transferred at initialization only 2093 !********************************************* 2094 ! readclouds=readclouds_ 2095 oro(:,:)=0.0 2096 excessoro(:,:)=0.0 2097 lsm(:,:)=0.0 2098 xlanduse(:,:,:)=0.0 2099 ! wftime 2100 ! numbwf 2101 ! nmixz 2102 ! height 2103 2104 ! Time-varying fields: 2105 uu(:,:,:,li:ui) = 10.0 2106 vv(:,:,:,li:ui) = 0.0 2107 uupol(:,:,:,li:ui) = 10.0 ! TODO check if ok 2108 vvpol(:,:,:,li:ui)=0.0 2109 ww(:,:,:,li:ui)=0. 2110 tt(:,:,:,li:ui)=300. 2111 rho(:,:,:,li:ui)=1.3 2112 drhodz(:,:,:,li:ui)=.0 2113 tth(:,:,:,li:ui)=0.0 2114 qvh(:,:,:,li:ui)=1.0 2115 qv(:,:,:,li:ui)=1.0 2116 2117 pv(:,:,:,li:ui)=1.0 2118 clouds(:,:,:,li:ui)=0.0 2119 2120 clwc(:,:,:,li:ui)=0.0 2121 ciwc(:,:,:,li:ui)=0.0 2122 2123 ! 2D fields 2124 2125 cloudsh(:,:,li:ui)=0.0 2126 vdep(:,:,:,li:ui)=0.0 2127 ps(:,:,:,li:ui)=1.0e5 2128 sd(:,:,:,li:ui)=0.0 2129 tcc(:,:,:,li:ui)=0.0 2130 tt2(:,:,:,li:ui)=300. 2131 td2(:,:,:,li:ui)=250. 2132 lsprec(:,:,:,li:ui)=0.0 2133 convprec(:,:,:,li:ui)=0.0 2134 ustar(:,:,:,li:ui)=1.0 2135 wstar(:,:,:,li:ui)=1.0 2136 hmix(:,:,:,li:ui)=10000. 2137 tropopause(:,:,:,li:ui)=10000. 2138 oli(:,:,:,li:ui)=0.01 2139 z0=1.0 2140 2141 end subroutine set_fields_synthetic 2142 2068 2143 end module mpi_mod
Note: See TracChangeset
for help on using the changeset viewer.