Oasis3-MCT
Data Types | Functions/Subroutines | Variables
mod_oasis_var Module Reference

OASIS variable data and methods. More...

Data Types

type  prism_var_type
 Model variable data for model coupling. More...
 

Functions/Subroutines

subroutine, public oasis_def_var (id_nports, cdport, id_part, id_var_nodims, kinout, id_var_shape, ktype, kinfo)
 The OASIS user interface to define variables. More...
 
subroutine, public oasis_var_setup ()
 Synchronize variables across all tasks, called at oasis enddef. More...
 
subroutine oasis_var_zero (prism_var)
 Zero variable information. More...
 

Variables

integer(ip_intwp_p), public maxvar
 number of potential variables, derived from namcouple input More...
 
integer(kind=ip_i4_p), parameter, public mvarcpl = 10
 max namcouples per variable More...
 
integer(kind=ip_intwp_p), public prism_nvar = 0
 number of variables defined More...
 
type(prism_var_type), dimension(:), pointer, public prism_var
 list of defined variables More...
 

Detailed Description

OASIS variable data and methods.

Function/Subroutine Documentation

◆ oasis_def_var()

subroutine, public mod_oasis_var::oasis_def_var ( integer(kind=ip_i4_p), intent(out)  id_nports,
character(len=*), intent(in)  cdport,
integer(kind=ip_i4_p), intent(in)  id_part,
integer(kind=ip_i4_p), dimension(2), intent(in)  id_var_nodims,
integer(kind=ip_i4_p), intent(in)  kinout,
integer(kind=ip_i4_p), dimension(:), intent(in)  id_var_shape,
integer(kind=ip_i4_p), intent(in)  ktype,
integer(kind=ip_i4_p), intent(out), optional  kinfo 
)

The OASIS user interface to define variables.

Parameters
[out]id_nportscoupling field ID
[in]cdportfield name as in namcouple
[in]id_partpartition ID
[in]id_var_nodimsrank and number of bundles
[in]kinoutinput or output flag
[in]id_var_shapesize of field
[in]ktypetype of coupling field
[out]kinforeturn code
  • Check len of incoming variable name
  • Search for field in namcouple field lists
  • Return if field not found in namcouple
  • Abort if field already defined
  • Increment the variable and store the values
  • Write some diagnostics

Definition at line 51 of file mod_oasis_var.F90.

◆ oasis_var_setup()

subroutine, public mod_oasis_var::oasis_var_setup ( )

Synchronize variables across all tasks, called at oasis enddef.

  • Initialize variables on tasks where they are not previously defined.

Definition at line 185 of file mod_oasis_var.F90.

◆ oasis_var_zero()

subroutine mod_oasis_var::oasis_var_zero ( type(prism_var_type), intent(inout)  prism_var)
private

Zero variable information.

Definition at line 301 of file mod_oasis_var.F90.

Variable Documentation

◆ maxvar

integer(ip_intwp_p), public mod_oasis_var::maxvar

number of potential variables, derived from namcouple input

Definition at line 24 of file mod_oasis_var.F90.

◆ mvarcpl

integer(kind=ip_i4_p), parameter, public mod_oasis_var::mvarcpl = 10

max namcouples per variable

Definition at line 25 of file mod_oasis_var.F90.

◆ prism_nvar

integer(kind=ip_intwp_p), public mod_oasis_var::prism_nvar = 0

number of variables defined

Definition at line 40 of file mod_oasis_var.F90.

◆ prism_var

type(prism_var_type), dimension(:), pointer, public mod_oasis_var::prism_var

list of defined variables

Definition at line 41 of file mod_oasis_var.F90.