particles_types_mod module reference
Dummy data structures and methods for drifters package.
Data Types
Container for gridded fields. |
|
xyt is a data structure containing particle position and velocity fields. |
|
particle types are data structures describing a tracked particle |
|
A buffer structure for message passing. |
|
A wrapper for the particle linked list (since an array of pointers is not allowed) |
|
A grand data structure for the particles in the local MOM domain. |
Detailed Description
Dummy data structures and methods for drifters package.
Type Documentation
- type particles_types_mod/particles_gridded
Container for gridded fields.
- Type fields:
% id_uo ::
integerDiagnostic handle.% id_vo ::
integerDiagnostic handle.% id_unused ::
integerDiagnostic handle.% id_count ::
integerDiagnostic handle.% id_chksum ::
integerDiagnostic handle.% domain ::
type(domain2d), pointerMPP parallel domain.% halo ::
integerNominal halo width.% isc ::
integerStart i-index of computational domain.% iec ::
integerEnd i-index of computational domain.% jsc ::
integerStart j-index of computational domain.% jec ::
integerEnd j-index of computational domain.% isd ::
integerStart i-index of data domain.% ied ::
integerEnd i-index of data domain.% jsd ::
integerStart j-index of data domain.% jed ::
integerEnd j-index of data domain.% isg ::
integerStart i-index of global domain.% ieg ::
integerEnd i-index of global domain.% jsg ::
integerStart j-index of global domain.% jeg ::
integerEnd j-index of global domain.% is_offset ::
integeradd to i to recover global i-index% js_offset ::
integeradd to j to recover global j-index% my_pe ::
integerMPI PE index.% pe_n ::
integerMPI PE index of PE to the north.% pe_s ::
integerMPI PE index of PE to the south.% pe_e ::
integerMPI PE index of PE to the east.% pe_w ::
integerMPI PE index of PE to the west.% grid_is_latlon ::
logicalFlag to say whether the coordinate is in lat-lon degrees, or meters.% grid_is_regular ::
logicalFlag to say whether point in cell can be found assuming regular Cartesian grid.% lx ::
realLength of the domain in x direction.% lon ::
real, dimension(:,:), allocatableLongitude of cell corners (degree E)% lat ::
real, dimension(:,:), allocatableLatitude of cell corners (degree N)% lonc ::
real, dimension(:,:), allocatableLongitude of cell centers (degree E)% latc ::
real, dimension(:,:), allocatableLatitude of cell centers (degree N)% dx ::
real, dimension(:,:), allocatableLength of cell edge (m)% dy ::
real, dimension(:,:), allocatableLength of cell edge (m)% area ::
real, dimension(:,:), allocatableArea of cell (m^2)% msk ::
real, dimension(:,:), allocatableOcean-land mask (1=ocean)% cos ::
real, dimension(:,:), allocatableCosine from rotation matrix to lat-lon coords.% sin ::
real, dimension(:,:), allocatableSine from rotation matrix to lat-lon coords.% ocean_depth ::
real, dimension(:,:), allocatableDepth of ocean (m)% uo ::
real, dimension(:,:), allocatableOcean zonal flow (m/s)% vo ::
real, dimension(:,:), allocatableOcean meridional flow (m/s)% tmp ::
real, dimension(:,:), allocatableTemporary work space.% tmpc ::
real, dimension(:,:), allocatableTemporary work space.% parity_x ::
real, dimension(:,:), allocatableX component of vector point from i,j to i+1,j+1.% parity_y ::
real, dimension(:,:), allocatableY component of vector point from i,j to i+1,j+1.% particle_counter_grd ::
integer, dimension(:,:), allocatableCounts particles created for naming purposes.
- type particles_types_mod/xyt
xyt is a data structure containing particle position and velocity fields.
- Type fields:
% lon ::
realLongitude of particle (degree N or unit of grid coordinate)% lat ::
realLatitude of particle (degree N or unit of grid coordinate)% day ::
realDay of this record (days)% lat_old ::
realPrevious latitude.% lon_old ::
realPrevious longitude.% uvel ::
realZonal velocity of particle (m/s)% vvel ::
realMeridional velocity of particle (m/s)% uvel_old ::
realPrevious zonal velocity component (m/s)% vvel_old ::
realPrevious meridional velocity component (m/s)% year ::
integerYear of this record.% particle_num ::
integerCurrent particle number.% id ::
integer(kind=int64)Particle Identifier.% next ::
type(xyt), pointerPointer to the next position in the list.
- type particles_types_mod/particle
particle types are data structures describing a tracked particle
- Type fields:
% prev ::
type(particle), pointerPrevious link in list.% next ::
type(particle), pointerNext link in list.% lon ::
realLongitude of particle (degree N or unit of grid coordinate)% lat ::
realLatitude of particle (degree E or unit of grid coordinate)% depth ::
realDepth of particle.% uvel ::
realZonal velocity of particle (m/s)% vvel ::
realMeridional velocity of particle (m/s)% lon_old ::
realprevious lon (degrees)% lat_old ::
realprevious lat (degrees)% uvel_old ::
realprevious uvel% vvel_old ::
realprevious vvel% start_lon ::
realstarting longitude where particle was created% start_lat ::
realstarting latitude where particle was created% start_day ::
realorigination position (degrees) and day% start_year ::
integerorigination year% halo_part ::
realequal to zero for particles on the computational domain, and 1 for particles on the halo% id ::
integer(kind=int64)particle identifier% drifter_num ::
integer(kind=int64)particle identifier% ine ::
integernearest i-index in NE direction (for convenience)% jne ::
integernearest j-index in NE direction (for convenience)% xi ::
realnon-dimensional x-coordinate within current cell (0..1)% yj ::
realnon-dimensional y-coordinate within current cell (0..1)% uo ::
realzonal ocean velocity% vo ::
realmeridional ocean velocity by the particle (m/s)% trajectory ::
type(xyt), pointerTrajectory for this particle.
- type particles_types_mod/buffer
A buffer structure for message passing.
- Type fields:
% size ::
integerSize of buffer.% data ::
real, dimension(:,:), pointerBuffer memory.
- type particles_types_mod/linked_list
A wrapper for the particle linked list (since an array of pointers is not allowed)
- Type fields:
% first ::
type(particle), pointerPointer to the beginning of a linked list of parts.
- type particles_types_mod/particles
A grand data structure for the particles in the local MOM domain.
- Type fields:
% clock ::
integerHandles for clocks.% clock_mom ::
integerHandles for clocks.% clock_the ::
integerHandles for clocks.% clock_int ::
integerHandles for clocks.% clock_cal ::
integerHandles for clocks.% clock_com ::
integerHandles for clocks.% clock_ini ::
integerHandles for clocks.% clock_ior ::
integerHandles for clocks.% clock_iow ::
integerHandles for clocks.% clock_dia ::
integerHandles for clocks.% clock_trw ::
integerHandles for clocks.% clock_trp ::
integerHandles for clocks.% grd ::
type(particles_gridded)Container with all gridded data.% list ::
type(linked_list), dimension(:,:), allocatableLinked list of particles.% trajectories ::
type(xyt), pointerA linked list for detached segments of trajectories.% dt ::
realTime-step between particle calls.% current_year ::
integerCurrent year (years)% current_yearday ::
realCurrent year-day, 1.00-365.99, (days)% traj_sample_hrs ::
integerPeriod between sampling for trajectories (hours)% traj_write_hrs ::
integerPeriod between writing of trajectories (hours)% verbose_hrs ::
integerPeriod between terminal status reports (hours)% restarted ::
logicalIndicate whether we read state from a restart or not.% runge_not_verlet ::
logicalTrue=Runge-Kutta, False=Verlet.% ignore_missing_restart_parts ::
logicalTrue allows the model to ignore particles missing in the restart.% halo_debugging ::
logicalUse for debugging halos (remove when its working)% save_short_traj ::
logicalTrue saves only lon,lat,time,id in particle_trajectory.nc.% ignore_traj ::
logicalIf true, then model does not write trajectory data at all.% use_new_predictive_corrective ::
logicalFlag to use Bob’s predictive corrective particle scheme.% debug_particle_with_id ::
integer(kind=int64)If positive, monitors a part with this id.% obuffer_n ::
type(buffer), pointerBuffer for outgoing parts to the north.% ibuffer_n ::
type(buffer), pointerBuffer for incoming parts from the north.% obuffer_s ::
type(buffer), pointerBuffer for outgoing parts to the south.% ibuffer_s ::
type(buffer), pointerBuffer for incoming parts from the south.% obuffer_e ::
type(buffer), pointerBuffer for outgoing parts to the east.% ibuffer_e ::
type(buffer), pointerBuffer for incoming parts from the east.% obuffer_w ::
type(buffer), pointerBuffer for outgoing parts to the west.% ibuffer_w ::
type(buffer), pointerBuffer for incoming parts from the west.% obuffer_io ::
type(buffer), pointerBuffer for outgoing parts during i/o.% ibuffer_io ::
type(buffer), pointerBuffer for incoming parts during i/o.