ComIn 0.5.1
ICON Community Interface
Loading...
Searching...
No Matches
Python Interface

Data Structures

class  variable
 
class  entry_point
 
class  plugin_info
 
class  simulation_interval
 

Functions

void comin_callback_register (t_comin_entry_point entry_point, t_comin_callback_function fct_ptr)
 
static PyObject * callback_get_ep_name (PyObject *, PyObject *args, PyObject *kwargs)
 
 register_callback (entry_point ep)
 
simulation_interval descrdata_get_simulation_interval ()
 
static PyObject * descrdata_get_timesteplength (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_get_index (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_get_block (PyObject *, PyObject *args, PyObject *kwargs)
 
template<BlockLimitGetterFn get_block_limits>
static PyObject * descrdata_get_block_limits (PyObject *, PyObject *args, PyObject *kwargs)
 
template<IndexGetterFn get_indices>
static PyObject * descrdata_get_indices (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_get_cell_npromz (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_get_edge_npromz (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_get_vert_npromz (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * current_get_datetime (PyObject *, PyObject *)
 
static PyObject * current_get_domain_id (PyObject *, PyObject *)
 
static PyObject * descrdata_index_lookup_glb2loc_cell (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_index_lookup_glb2loc_edge (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * descrdata_index_lookup_glb2loc_vert (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * setup_get_version (PyObject *, PyObject *)
 
static PyObject * parallel_get_host_mpi_comm (PyObject *, PyObject *)
 
static PyObject * parallel_get_plugin_mpi_comm (PyObject *, PyObject *)
 
static PyObject * parallel_get_host_mpi_rank (PyObject *, PyObject *)
 
static PyObject * print_debug (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * print_info (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * print_warning (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * var_request_add (PyObject *, PyObject *args, PyObject *kwargs)
 
static PyObject * metadata_get (PyObject *, PyObject *args, PyObject *kwargs)
 

Detailed Description


Data Type Documentation

◆ comin::variable

class comin::variable

Implements the __array__ (and __cuda_array_interface__) interface.

Definition at line 29 of file comin.py.

Member Function Documentation

◆ descriptor()

descriptor ( self)

Definition at line 105 of file comin.py.

◆ dim_semantics()

dim_semantics ( self)

Definition at line 60 of file comin.py.

◆ ncontained()

ncontained ( self)

Definition at line 84 of file comin.py.

◆ to_3d()

to_3d ( self)

Definition at line 88 of file comin.py.

◆ to_xarray()

to_xarray ( self)

Definition at line 63 of file comin.py.

◆ comin::entry_point

class comin::entry_point

Can be used as a function decorator or as an argument for var_get.

Definition at line 109 of file comin.py.

◆ comin::plugin_info

class comin::plugin_info
Parameters
idPlugin ID
namePlugin name
optionsOptions string
commCommunicator name

Definition at line 152 of file comin.py.

Public Member Functions

 args (self)
 

Member Function Documentation

◆ args()

args ( self)

Extract options as list of strings.

Extract the argument from the options string like as the script was called from the command line. This is supposed to be passed to argparse.ArgumentParser.parse_args.

Definition at line 168 of file comin.py.

Field Documentation

◆ options

options

Definition at line 176 of file comin.py.

◆ comin::metadata

class comin::metadata

Definition at line 228 of file comin.py.

Field Documentation

◆ descr

descr = var_descr

Definition at line 234 of file comin.py.

◆ comin::simulation_interval

class comin::simulation_interval
Parameters
exp_start
exp_end
run_start
run_end

Definition at line 254 of file comin.py.

Function Documentation

◆ callback_get_ep_name()

static PyObject * callback_get_ep_name ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Get the name of an entry point.

Python signature: callback_get_ep_name(entry_point : EntryPoint) -> str

Definition at line 81 of file callbacks.cpp.

◆ comin_callback_register()

void comin_callback_register ( t_comin_entry_point entry_point,
t_comin_callback_function fct_ptr )

Routine to register new callbacks during primary constructor.

Parameters
entry_pointID of the entry point (1-based).
fct_ptrFunction to call.

If the plugin has already registered a callback for this entry point, this function prints a warning and ignores the new callback.

Definition at line 33 of file comin_callback.cpp.

◆ current_get_datetime()

static PyObject * current_get_datetime ( PyObject * ,
PyObject *  )
static

Get current datetime string.

Python function name: current_get_datetime() -> str

See also
C::comin_current_get_datetime

Definition at line 271 of file descrdata.cpp.

◆ current_get_domain_id()

static PyObject * current_get_domain_id ( PyObject * ,
PyObject *  )
static

Get current domain ID.

Python function name: current_get_domain_id() -> int

See also
C::comin_current_get_domain_id

Definition at line 286 of file descrdata.cpp.

◆ current_get_plugin_info()

plugin_info current_get_plugin_info ( )

returns object describing the current plugin

Definition at line 179 of file comin.py.

◆ descrdata_get_block()

static PyObject * descrdata_get_block ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get block index.

Python signature: descrdata_get_block(i : int) -> int

See also
C::comin_descrdata_get_block

Definition at line 114 of file descrdata.cpp.

◆ descrdata_get_block_limits()

template<BlockLimitGetterFn get_block_limits>
static PyObject * descrdata_get_block_limits ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get block limits.

Python signature: descrdata_get_cell_block_limits(jg : int, irl_start : int, irl_end : int) -> Tuple[int,int]

Python signature: descrdata_get_edge_block_limits(jg : int, irl_start : int, irl_end : int) -> Tuple[int,int]

Python signature: descrdata_get_vert_block_limits(jg : int, irl_start : int, irl_end : int) -> Tuple[int,int]

See also
C::comin_descrdata_get_cell_block_limits
C::comin_descrdata_get_edge_block_limits
C::comin_descrdata_get_vert_block_limits

Definition at line 147 of file descrdata.cpp.

◆ descrdata_get_cell_npromz()

static PyObject * descrdata_get_cell_npromz ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get npromz.

Python signature: descrdata_get_cell_npromz(jg : int) -> int

See also
C::comin_descrdata_get_cell_npromz

Definition at line 211 of file descrdata.cpp.

◆ descrdata_get_domain()

_descrdata descrdata_get_domain ( int jg)

returns descriptive data for a given domain, arguments: jg

Definition at line 200 of file comin.py.

◆ descrdata_get_edge_npromz()

static PyObject * descrdata_get_edge_npromz ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get npromz.

Python signature: descrdata_get_edge_npromz(jg : int) -> int

See also
C::comin_descrdata_get_edge_npromz

Definition at line 231 of file descrdata.cpp.

◆ descrdata_get_global()

_descrdata descrdata_get_global ( )

returns global descriptive data object

Definition at line 205 of file comin.py.

◆ descrdata_get_index()

static PyObject * descrdata_get_index ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get nproma index.

Python signature: descrdata_get_index(i : int) -> int

See also
C::comin_descrdata_get_index

Definition at line 94 of file descrdata.cpp.

◆ descrdata_get_indices()

template<IndexGetterFn get_indices>
static PyObject * descrdata_get_indices ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get indices.

Python signature: descrdata_get_cell_indices(jg : int, i_blk : int, i_startblk : int, i_endblk : int, irl_start : int, irl_end :int) -> Tuple[int,int]

Python signature: descrdata_get_edge_indices(jg : int, i_blk : int, i_startblk : int, i_endblk : int, irl_start : int, irl_end :int) -> Tuple[int,int]

Python signature: descrdata_get_vert_indices(jg : int, i_blk : int, i_startblk : int, i_endblk : int, irl_start : int, irl_end :int) -> Tuple[int,int]

See also
C::comin_descrdata_get_cell_indices
C::comin_descrdata_get_edge_indices
C::comin_descrdata_get_vert_indices

Definition at line 186 of file descrdata.cpp.

◆ descrdata_get_simulation_interval()

simulation_interval descrdata_get_simulation_interval ( )

returns simulation interval

See also
simulation_interval

Definition at line 270 of file comin.py.

◆ descrdata_get_timesteplength()

static PyObject * descrdata_get_timesteplength ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Get timestep length for domain.

Python signature: descrdata_get_timesteplength(jg : int) -> float

Definition at line 73 of file descrdata.cpp.

◆ descrdata_get_vert_npromz()

static PyObject * descrdata_get_vert_npromz ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

get npromz.

Python signature: descrdata_get_vert_npromz(jg : int) -> int

See also
C::comin_descrdata_get_vert_npromz

Definition at line 251 of file descrdata.cpp.

◆ descrdata_index_lookup_glb2loc_cell()

static PyObject * descrdata_index_lookup_glb2loc_cell ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Maps global to local indices.

Python function name: descrdata_index_lookup_glb2loc_cell(jg : int, global_index : int) -> int

See also
C::comin_descrdata_index_lookup_glb2loc_cell

Definition at line 305 of file descrdata.cpp.

◆ descrdata_index_lookup_glb2loc_edge()

static PyObject * descrdata_index_lookup_glb2loc_edge ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Maps global to local indices.

Python function name: descrdata_index_lookup_glb2loc_edge(jg : int, global_index : int) -> int

See also
C::comin_descrdata_index_lookup_glb2loc_edge

Definition at line 328 of file descrdata.cpp.

◆ descrdata_index_lookup_glb2loc_vert()

static PyObject * descrdata_index_lookup_glb2loc_vert ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Maps global to local indices.

Python function name: descrdata_index_lookup_glb2loc_vert(jg : int, global_index : int) -> int

See also
C::comin_descrdata_index_lookup_glb2loc_vert

Definition at line 351 of file descrdata.cpp.

◆ metadata_get()

static PyObject * metadata_get ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Retrieve metadata for a variable.

Python function: metadata_get(var_descriptor : Tuple[str, int], key : str) -> int | float | str

Definition at line 126 of file variables.cpp.

◆ metadata_set()

metadata_set ( Tuple[str, int] var_descriptor,
** kwargs )

sets metadata for a requested field, arguments: name string, domain id, metadata key, metadata value

Definition at line 222 of file comin.py.

◆ parallel_get_host_mpi_comm()

static PyObject * parallel_get_host_mpi_comm ( PyObject * ,
PyObject *  )
static

Host MPI Communicator.

Python function name: parallel_get_host_mpi_comm() -> int

See also
C::comin_parallel_get_host_mpi_comm

Definition at line 389 of file descrdata.cpp.

◆ parallel_get_host_mpi_rank()

static PyObject * parallel_get_host_mpi_rank ( PyObject * ,
PyObject *  )
static

Rank number in host communicator.

Python function name: parallel_get_host_mpi_rank() -> int

See also
C::comin_parallel_get_host_mpi_rank

Definition at line 421 of file descrdata.cpp.

◆ parallel_get_plugin_mpi_comm()

static PyObject * parallel_get_plugin_mpi_comm ( PyObject * ,
PyObject *  )
static

Plugin MPI Communicator.

Python function name: parallel_get_plugin_mpi_comm() -> int

See also
C::comin_parallel_get_plugin_mpi_comm

Definition at line 405 of file descrdata.cpp.

◆ print_debug()

static PyObject * print_debug ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Print debug message through ComIn's message system.

Python signature: print_debug(msg : str) -> None

Definition at line 435 of file descrdata.cpp.

◆ print_info()

static PyObject * print_info ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Print info message through ComIn's message system.

Python signature: print_info(msg : str) -> None

Definition at line 461 of file descrdata.cpp.

◆ print_warning()

static PyObject * print_warning ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Print warning message through ComIn's message system.

Python signature: print_warning(msg : str) -> None

Definition at line 487 of file descrdata.cpp.

◆ register_callback()

register_callback ( entry_point ep)

Registers a callback function for a given endpoint.

Parameters
epThe endpoint to register the callback for.

Definition at line 132 of file comin.py.

◆ setup_get_version()

static PyObject * setup_get_version ( PyObject * ,
PyObject *  )
static

Get version.

Python function name: setup_get_version() -> Tuple[int, int, int]

See also
C::comin_setup_get_version

Definition at line 373 of file descrdata.cpp.

◆ var_descr_list()

var_descr_list ( )

List of exposed variables (descriptors)

Definition at line 210 of file comin.py.

◆ var_get()

var_get ( List[entry_point] context,
Tuple[str, int] var_descriptor,
int flag )

get variable object, arguments: [entry point], (name string, domain id), access flag)

Definition at line 146 of file comin.py.

◆ var_request_add()

static PyObject * var_request_add ( PyObject * ,
PyObject * args,
PyObject * kwargs )
static

Request the host model to add a variable.

Python signature: var_request_add(var_descriptor : Tuple[str,int], lmodexclusive : bool = False) -> None

Definition at line 35 of file variables.cpp.

Variable Documentation

◆ COMIN_DIM_SEMANTICS_BLOCK

int COMIN_DIM_SEMANTICS_BLOCK = 3

Definition at line 294 of file comin.py.

◆ COMIN_DIM_SEMANTICS_CONTAINER

int COMIN_DIM_SEMANTICS_CONTAINER = 6

Definition at line 297 of file comin.py.

◆ COMIN_DIM_SEMANTICS_LEVEL

int COMIN_DIM_SEMANTICS_LEVEL = 5

Definition at line 296 of file comin.py.

◆ COMIN_DIM_SEMANTICS_NPROMA

int COMIN_DIM_SEMANTICS_NPROMA = 2

Definition at line 293 of file comin.py.

◆ COMIN_DIM_SEMANTICS_OTHER

int COMIN_DIM_SEMANTICS_OTHER = 7

Definition at line 298 of file comin.py.

◆ COMIN_DIM_SEMANTICS_UNBLOCK

int COMIN_DIM_SEMANTICS_UNBLOCK = 4

Definition at line 295 of file comin.py.

◆ COMIN_DIM_SEMANTICS_UNDEF

int COMIN_DIM_SEMANTICS_UNDEF = 1

Definition at line 292 of file comin.py.

◆ COMIN_DIM_SEMANTICS_UNUSED

int COMIN_DIM_SEMANTICS_UNUSED = 8

Definition at line 299 of file comin.py.

◆ COMIN_FLAG_DEVICE

int COMIN_FLAG_DEVICE = 1 << 4

Definition at line 282 of file comin.py.

◆ COMIN_FLAG_NONE

int COMIN_FLAG_NONE = 0

Definition at line 278 of file comin.py.

◆ COMIN_FLAG_READ

int COMIN_FLAG_READ = 1 << 1

Definition at line 279 of file comin.py.

◆ COMIN_FLAG_SYNC_HALO

int COMIN_FLAG_SYNC_HALO = 1 << 3

Definition at line 281 of file comin.py.

◆ COMIN_FLAG_WRITE

int COMIN_FLAG_WRITE = 1 << 2

Definition at line 280 of file comin.py.

◆ COMIN_HGRID_UNSTRUCTURED_CELL

int COMIN_HGRID_UNSTRUCTURED_CELL = 1

Definition at line 284 of file comin.py.

◆ COMIN_HGRID_UNSTRUCTURED_EDGE

int COMIN_HGRID_UNSTRUCTURED_EDGE = 2

Definition at line 285 of file comin.py.

◆ COMIN_HGRID_UNSTRUCTURED_VERTEX

int COMIN_HGRID_UNSTRUCTURED_VERTEX = 3

Definition at line 286 of file comin.py.

◆ COMIN_VAR_DATATYPE_DOUBLE

int COMIN_VAR_DATATYPE_DOUBLE = 1

Definition at line 288 of file comin.py.

◆ COMIN_VAR_DATATYPE_FLOAT

int COMIN_VAR_DATATYPE_FLOAT = 2

Definition at line 289 of file comin.py.

◆ COMIN_VAR_DATATYPE_INT

int COMIN_VAR_DATATYPE_INT = 3

Definition at line 290 of file comin.py.

◆ COMIN_ZAXIS_2D

int COMIN_ZAXIS_2D = 1

Definition at line 24 of file comin.py.

◆ COMIN_ZAXIS_3D

int COMIN_ZAXIS_3D = 2

Definition at line 25 of file comin.py.

◆ COMIN_ZAXIS_3D_HALF

int COMIN_ZAXIS_3D_HALF = 3

Definition at line 26 of file comin.py.

◆ COMIN_ZAXIS_NONE

int COMIN_ZAXIS_NONE = 0

Definition at line 23 of file comin.py.

◆ COMIN_ZAXIS_UNDEF

int COMIN_ZAXIS_UNDEF = -1

Definition at line 22 of file comin.py.