Reference Guide
2.5.0
|
Public Member Functions | |
def | __init__ (self, sym_table) |
def | annexed_only (self) |
def | max_depth (self) |
def | max_depth_m1 (self) |
def | var_depth (self) |
def | literal_depth (self) |
def | literal_depth (self, value) |
def | set_by_value (self, max_depth, var_depth, literal_depth, annexed_only, max_depth_m1) |
def | __str__ (self) |
def | psyir_expression (self) |
Determines how much of the halo a read to a field accesses (the halo depth). :param sym_table: the symbol table of the enclosing InvokeSchedule. :type sym_table: :py:class:`psyclone.psyir.symbols.SymbolTable`
Definition at line 4418 of file dynamo0p3.py.
def psyclone.dynamo0p3.HaloDepth.__str__ | ( | self | ) |
return the depth of a halo dependency as a string
Definition at line 4545 of file dynamo0p3.py.
References psyclone.domain.lfric.lfric_collection.LFRicCollection._symbol_table, psyclone.dynamo0p3.DynMeshes._symbol_table, psyclone.dynamo0p3.HaloDepth._symbol_table, psyclone.psyGen.HaloExchange._symbol_table, psyclone.psyir.backend.sympy_writer.SymPyWriter._symbol_table, psyclone.psyir.nodes.scoping_node.ScopingNode._symbol_table, psyclone.dynamo0p3.HaloDepth.literal_depth(), psyclone.dynamo0p3.HaloDepth.max_depth(), psyclone.dynamo0p3.HaloDepth.max_depth_m1(), and psyclone.dynamo0p3.HaloDepth.var_depth().
def psyclone.dynamo0p3.HaloDepth.annexed_only | ( | self | ) |
:returns: True if only annexed dofs are accessed in the halo and \ False otherwise. :rtype: bool
Definition at line 4458 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._annexed_only, and psyclone.dynamo0p3.HaloReadAccess._annexed_only.
def psyclone.dynamo0p3.HaloDepth.literal_depth | ( | self | ) |
Returns the known fixed (literal) depth of halo access. Note, this depth should be added to the var_depth to find the total depth. :returns: the known fixed (literal) halo access depth. :rtype: int
Definition at line 4502 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._literal_depth, and psyclone.dynamo0p3.HaloReadAccess._literal_depth.
def psyclone.dynamo0p3.HaloDepth.literal_depth | ( | self, | |
value | |||
) |
Set the known fixed (literal) depth of halo access. :param int value: Set the known fixed (literal) halo access depth.
Definition at line 4513 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._literal_depth, psyclone.dynamo0p3.HaloReadAccess._literal_depth, and psyclone.dynamo0p3.HaloDepth.literal_depth().
def psyclone.dynamo0p3.HaloDepth.max_depth | ( | self | ) |
:returns: True if the read to the field is known to access all \ of the halo and False otherwise. :rtype: bool
Definition at line 4467 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._max_depth, and psyclone.dynamo0p3.HaloReadAccess._max_depth.
def psyclone.dynamo0p3.HaloDepth.max_depth_m1 | ( | self | ) |
Returns whether the read to the field is known to access all of the halo except the outermost level or not. :returns: True if the read to the field is known to access all \ of the halo except the outermost and False otherwise. :rtype: bool
Definition at line 4476 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._max_depth_m1.
def psyclone.dynamo0p3.HaloDepth.psyir_expression | ( | self | ) |
:returns: the PSyIR expression representing this HaloDepth. :rtype: :py:class:`psyclone.psyir.nodes.Node`
Definition at line 4568 of file dynamo0p3.py.
References psyclone.domain.lfric.lfric_collection.LFRicCollection._symbol_table, psyclone.dynamo0p3.DynMeshes._symbol_table, psyclone.dynamo0p3.HaloDepth._symbol_table, psyclone.psyGen.HaloExchange._symbol_table, psyclone.psyir.backend.sympy_writer.SymPyWriter._symbol_table, psyclone.psyir.nodes.scoping_node.ScopingNode._symbol_table, psyclone.dynamo0p3.HaloDepth.literal_depth(), psyclone.dynamo0p3.HaloDepth.max_depth(), psyclone.dynamo0p3.HaloDepth.max_depth_m1(), and psyclone.dynamo0p3.HaloDepth.var_depth().
def psyclone.dynamo0p3.HaloDepth.set_by_value | ( | self, | |
max_depth, | |||
var_depth, | |||
literal_depth, | |||
annexed_only, | |||
max_depth_m1 | |||
) |
Set halo depth information directly :param bool max_depth: True if the field accesses all of the \ halo and False otherwise :param str var_depth: A variable name specifying the halo \ access depth, if one exists, and None if not :param int literal_depth: The known fixed (literal) halo \ access depth :param bool annexed_only: True if only the halo's annexed dofs \ are accessed and False otherwise :param bool max_depth_m1: True if the field accesses all of \ the halo but does not require the outermost halo to be correct \ and False otherwise
Definition at line 4521 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._annexed_only, psyclone.dynamo0p3.HaloReadAccess._annexed_only, psyclone.dynamo0p3.HaloDepth._literal_depth, psyclone.dynamo0p3.HaloReadAccess._literal_depth, psyclone.dynamo0p3.HaloDepth._max_depth, psyclone.dynamo0p3.HaloReadAccess._max_depth, psyclone.dynamo0p3.HaloDepth._max_depth_m1, psyclone.dynamo0p3.HaloDepth._var_depth, and psyclone.dynamo0p3.HaloReadAccess._var_depth.
def psyclone.dynamo0p3.HaloDepth.var_depth | ( | self | ) |
Returns the name of the variable specifying the depth of halo access if one is provided. Note, a variable will only be provided for stencil accesses. Also note, this depth should be added to the literal_depth to find the total depth. :returns: a variable name specifying the halo access depth \ if one exists, and None if not. :rtype: str
Definition at line 4488 of file dynamo0p3.py.
References psyclone.dynamo0p3.HaloDepth._var_depth, and psyclone.dynamo0p3.HaloReadAccess._var_depth.