Back to OASIS4 home
Global Variables in the Psmile (defined in
oasis4/lib/psmile_oa4/src/psmile.F90)
Comps (Number_of_Comps_allocated):
of type Component (type defined in
psmile.F90), contains the component
definition.
Allocation in prism_init : Allocate (Comps(Number_of_Comps_allocated),
STAT = ierror)
Initialization in prism_init_comp.
***** more infos here
Methods
(Number_of_Methods_allocated) : of type Method (type defined in
psmile.F90), contains the informations on the points of the grid and
not
the corners (see Grids).
Allocation in prism_init : Allocate
(Methods(Number_of_Methods_allocated), STAT = ierror)
Initialization in prism_set_points.
There is
only one set of corner for one grid (stored in Grids(grid_id) but there
can be more than one set of points.
Is linked to the search based on
method point
(bilinear and bicubic interpolations) and
not on corner point (conservative interpolation).
For the conservative interpolation, only one
« method » can be defined while more than one
method (ie set of points) can be defined on one grid for the other
interpolations.
For example, for my grids, there are three kind of points for ORCA
(T,U,V) while there
are only one set of corners.
Methods contain the informations on the coordinates of the points.
Fields
(number_of_fields_allocated)
: of type GridFunction
(type defined in
psmile.F90), contains the infos about all
the
transient fields associated to one grid of a component.
Allocation in prism_init : Allocate
(Fields(Number_of_Fields_allocated), STAT = ierror)
Initialization in the prism_def_var.
As the interpolations in the Transformer are
divided in two steps, calculation of the weights and evaluation of the
interpolated field, each field of one component is associated to a
grid_id so the weights are only
calculated once for each couple of (source,target) grids.
The index grid_id is associated to the component when the component
calls the routine prism_def_grid and return a grid_id associated to a
comp_id.
***** more infos here
Grids
(Number_of_Grids_allocated)
: of type Grid
(type defined in
psmile.F90),
informations about the grids (shape ...) and
corners associated
with one component.
Allocation in prism_init : Allocate
(Grids(Number_of_Grids_allocated), STAT = ierror)
Initialization in prism_def_grid.
Masks
(Number_of_Masks_allocated)
: of type Mask (type defined in
psmile.F90),
informations about the masks associated with
one grid.
Allocation in prism_init : Allocate
(Masks(Number_of_Masks_allocated), STAT = ierror)
Initialization in prism_set_mask.
comp_infos
(1:n_act_comp) (target)
: of type Enddef_comp
(type defined in oasis4/lib/common_oa4/src/psmile_common.F90),
informations on the components located on the actual process.
Allocation in prism_enddef : Allocate (comp_infos(1:n_act_comp), STAT =
ierror)
Initialization in psmile_enddef_comp
all_comp_infos
(1:Number_of_coll_comps = SUM
(Number_of_comps_per_appl(:))) : of
type Enddef_comp (type
defined in oasis4/lib/common_oa4/src/psmile_common.F90),
informations on all the components of all applications.
Allocation in psmile_enddef_appl
: Allocate
(all_comp_infos(1:Number_of_coll_comps), STAT = ierror)
Initialization in psmile_enddef_appl.
paction : of type
Enddef_action (type defined in
psmile_common)
Allocation of the different sub-structures in psmile_get_intersect :
allocate(paction%n_answer2recv_per_grid(Number_of_Grids_allocated))
Allocate (paction%lrequest(paction%nreq), stat = ierror)
Allocate (paction%loc_messages(nd_msgint, paction%n_answer2recv), stat
= ierror)
cpl_list
(Number_of_Cpls_allocated)
: of type GridConnection
(type defined in
psmile), to store informations about source
and target grid relations (epio ...) to send info to the transformer
IO_apps_infos
: of type IO_App_info (defined in
psamile), for definition of comm of application for MPP_IO (independant
from the psmile)
Io_Comp_infos
(1:size(Comps)) : of type IO_Comp_info
(type defined in
psmile), for MPP_IO
Allocation in psmile_io_init_comp :
allocate(IO_Comps_infos(1:size(Comps)),STAT=ierror)
initialisation in psmile_io_init_comp
neighcells_3d (:,:,:) : integer
field2grid (:) : integer
Timesteps_info(:) : of type
TimeStep (type defined in psmile.F90)
Timesteps (:) : double
precision
PRISM_applProc(:) : integer
PRISM_noCompsPerAppl(:) :
integer
PRISM_compRankSets(:) : integer
PRISM_rankSets(:,:) integer
PRISM_applName(:) : character
PRISM_compName(:) : charater