-
Notifications
You must be signed in to change notification settings - Fork 157
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
doxygen changes for io/module_fv3_io_def.F90 and module_fv3_config.F90 (
#757) doxygen changes for io/module_fv3_io_def.F90 and module_fv3_config.F90 --------- Co-authored-by: Jun Wang <[email protected]>
- Loading branch information
1 parent
53a3c52
commit 9a8f8b4
Showing
2 changed files
with
154 additions
and
44 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,36 +1,126 @@ | ||
!> @file | ||
!> @brief fv3 I/O related configration variables. | ||
!> @author Jun Wang @date 01/2017 | ||
|
||
!> @brief fv3 I/O related configration variables. | ||
!> | ||
!> @author Jun Wang @date 01/2017 | ||
module module_fv3_io_def | ||
! | ||
!*** fv3 io related configration variables | ||
! | ||
! revision history | ||
! 01/2017 Jun Wang Initial code | ||
! | ||
!------------------------------------------------------------------------ | ||
! | ||
use esmf, only : esmf_maxstr | ||
implicit none | ||
|
||
!> Number of processors used in the forecast grid component | ||
integer :: num_pes_fcst | ||
integer :: wrttasks_per_group, write_groups | ||
integer :: n_group | ||
integer :: num_files | ||
integer :: nbdlphys | ||
integer :: iau_offset | ||
logical :: lflname_fulltime | ||
logical :: time_unlimited | ||
|
||
character(len=esmf_maxstr),dimension(:),allocatable :: filename_base | ||
character(len=esmf_maxstr),dimension(:),allocatable :: output_file | ||
|
||
integer,dimension(:),allocatable :: lead_wrttask, last_wrttask | ||
|
||
character(len=esmf_maxstr),dimension(:),allocatable :: output_grid | ||
integer,dimension(:),allocatable :: imo,jmo | ||
real,dimension(:),allocatable :: cen_lon, cen_lat | ||
real,dimension(:),allocatable :: lon1, lat1, lon2, lat2, dlon, dlat | ||
real,dimension(:),allocatable :: stdlat1, stdlat2, dx, dy | ||
integer,dimension(:),allocatable :: ideflate, quantize_nsd, zstandard_level | ||
|
||
!> Number of write tasks per write group. | ||
integer :: wrttasks_per_group | ||
|
||
!> Number of the write groups | ||
integer :: write_groups | ||
|
||
!> Current write group | ||
integer :: n_group | ||
|
||
!> Number of history files | ||
integer :: num_files | ||
|
||
!> Number of the ESMF field bundles for physics fields | ||
integer :: nbdlphys | ||
|
||
!> IAU running window length | ||
integer :: iau_offset | ||
|
||
!> Logical variable to decide if full time (HH.MM.SS) is used in the history | ||
!! file names | ||
logical :: lflname_fulltime | ||
|
||
!> Logical variable to decide if unlimited time dimension is used | ||
logical :: time_unlimited | ||
|
||
|
||
!> Base names for model history output files | ||
character(len=esmf_maxstr),dimension(:),allocatable :: filename_base | ||
|
||
!> Output file format | ||
character(len=esmf_maxstr),dimension(:),allocatable :: output_file | ||
|
||
|
||
!> The first write task in a write group | ||
integer,dimension(:),allocatable :: lead_wrttask | ||
|
||
!> The last write task in a write group | ||
integer,dimension(:),allocatable :: last_wrttask | ||
|
||
!> Output grid type, e.g. "gaussian_grid" | ||
character(len=esmf_maxstr),dimension(:),allocatable :: output_grid | ||
|
||
!> The i-dimension in the output grid | ||
integer,dimension(:),allocatable :: imo | ||
|
||
!> The j-dimension in the output grid | ||
integer,dimension(:),allocatable :: jmo | ||
|
||
!> Longitude of the center point in the output grid | ||
real,dimension(:),allocatable :: cen_lon | ||
|
||
!> Latitude of the center pointer in the output grid | ||
real,dimension(:),allocatable :: cen_lat | ||
|
||
!> Longitude of the first grid point in the output grid | ||
real,dimension(:),allocatable :: lon1 | ||
|
||
!> Latitude of the first pointer in the output grid | ||
real,dimension(:),allocatable :: lat1 | ||
|
||
!> Longitude of the last grid point in the output grid | ||
real,dimension(:),allocatable :: lon2 | ||
|
||
!> Latitude of the last pointer in the output grid | ||
real,dimension(:),allocatable :: lat2 | ||
|
||
!> Longitude increment | ||
real,dimension(:),allocatable :: dlon | ||
|
||
!> Latitude increment | ||
real,dimension(:),allocatable :: dlat | ||
|
||
!> The first latitude from the pole at which the secant cone cuts the sphere | ||
real,dimension(:),allocatable :: stdlat1 | ||
|
||
!> The second latitude from the pole at which the secant cone cuts the sphere | ||
real,dimension(:),allocatable :: stdlat2 | ||
|
||
!> x-direction grid length | ||
real,dimension(:),allocatable :: dx | ||
|
||
!> y-direction grid length | ||
real,dimension(:),allocatable :: dy | ||
|
||
!> Deflate level to use, 0 means no deflate. | ||
integer,dimension(:),allocatable :: ideflate | ||
|
||
!> Number of significant digits for lossy compression. | ||
integer,dimension(:),allocatable :: quantize_nsd | ||
|
||
!> Zstandard compression level, 0 means no zstandard compression. | ||
integer,dimension(:),allocatable :: zstandard_level | ||
|
||
!> Quantize mode to use for lossy compression. | ||
character(len=esmf_maxstr),dimension(:),allocatable :: quantize_mode | ||
integer,dimension(:),allocatable :: ichunk2d, jchunk2d, ichunk3d, jchunk3d, kchunk3d | ||
|
||
!> Chunk size in i dimension for 2D data. | ||
integer,dimension(:),allocatable :: ichunk2d | ||
|
||
!> Chunk size in j dimension for 2D data. | ||
integer,dimension(:),allocatable :: jchunk2d | ||
|
||
!> Chunk size in i dimension for 3D data. | ||
integer,dimension(:),allocatable :: ichunk3d | ||
|
||
!> Chunk size in j dimension for 3D data. | ||
integer,dimension(:),allocatable :: jchunk3d | ||
|
||
!> Chunk size in k dimension for 3D data. | ||
integer,dimension(:),allocatable :: kchunk3d | ||
|
||
end module module_fv3_io_def |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,28 +1,48 @@ | ||
!> @file | ||
!> @brief fv3 configure variables from model_configure. | ||
!> @author Jun Wang @date 01/2017 | ||
|
||
!> @brief fv3 configure variables from model_configure. | ||
!> | ||
!> @author Jun Wang @date 01/2017 | ||
module module_fv3_config | ||
!------------------------------------------------------------------------ | ||
! | ||
!*** fv3 configure variables from model_configure | ||
! | ||
! revision history | ||
! 01/2017 Jun Wang Initial code | ||
! | ||
!------------------------------------------------------------------------ | ||
! | ||
use esmf | ||
|
||
implicit none | ||
! | ||
|
||
|
||
!> Atmosphere time step in seconds | ||
integer :: dt_atmos | ||
|
||
!> The first integration step | ||
integer :: first_kdt | ||
integer :: fcst_mpi_comm, fcst_ntasks | ||
! | ||
|
||
!> MPI communicator for the forecast grid component | ||
integer :: fcst_mpi_comm | ||
|
||
!> Total number of mpi tasks for the forecast grid components | ||
integer :: fcst_ntasks | ||
|
||
|
||
!> ID number for the coupled grids | ||
integer :: cpl_grid_id | ||
|
||
!> Flag to decide if model writes out coupled diagnostic fields | ||
logical :: cplprint_flag | ||
logical :: quilting, quilting_restart | ||
! | ||
|
||
!> Flag to decide if write grid components is used | ||
logical :: quilting | ||
|
||
!> Flag to decide if write grid component writes out restart files | ||
logical :: quilting_restart | ||
|
||
|
||
!> Output frequency if this array has only two elements and the value of | ||
!! the second eletment is -1. Otherwise, it is the specific output forecast | ||
!! hours | ||
real,dimension(:),allocatable :: output_fh | ||
character(esmf_maxstr),dimension(:),allocatable :: filename_base | ||
|
||
!> Calendar type | ||
character(17) :: calendar=' ' | ||
! | ||
|
||
end module module_fv3_config |