Reference Guide
2.5.0
|
Public Member Functions | |
def | __init__ (self, node) |
def | kern_args (self, stub=False, var_accesses=None, kern_call_arg_list=None) |
def | initialise (self, parent) |
Public Member Functions inherited from psyclone.domain.lfric.lfric_collection.LFRicCollection | |
def | declarations (self, parent) |
Holds all information on the the mesh properties required by either an invoke or a kernel stub. Note that the creation of a suitable mesh object is handled in the `DynMeshes` class. This class merely deals with extracting the necessary properties from that object and providing them to kernels. :param node: kernel or invoke for which to manage mesh properties. :type node: :py:class:`psyclone.domain.lfric.LFRicKern` or \ :py:class:`psyclone.dynamo0p3.LFRicInvoke`
Definition at line 496 of file dynamo0p3.py.
def psyclone.dynamo0p3.LFRicMeshProperties.initialise | ( | self, | |
parent | |||
) |
Creates the f2pygen nodes for the initialisation of properties of the mesh. :param parent: node in the f2pygen tree to which to add statements. :type parent: :py:class:`psyclone.f2pygen.SubroutineGen` :raises InternalError: if an unsupported mesh property is encountered.
Reimplemented from psyclone.domain.lfric.lfric_collection.LFRicCollection.
Definition at line 749 of file dynamo0p3.py.
References psyclone.domain.lfric.lfric_collection.LFRicCollection._calls, psyclone.parse.algorithm.FileInfo._calls, psyclone.dynamo0p3.LFRicMeshProperties._properties, psyclone.dynamo0p3.DynReferenceElement._properties, 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, and psyclone.psyir.nodes.scoping_node.ScopingNode._symbol_table.
def psyclone.dynamo0p3.LFRicMeshProperties.kern_args | ( | self, | |
stub = False , |
|||
var_accesses = None , |
|||
kern_call_arg_list = None |
|||
) |
Provides the list of kernel arguments associated with the mesh properties that the kernel requires. Optionally adds variable access information if var_accesses is given. :param bool stub: whether or not we are generating code for a \ kernel stub. :param var_accesses: optional VariablesAccessInfo instance to store \ the information about variable accesses. :type var_accesses: \ :py:class:`psyclone.core.VariablesAccessInfo` :param kern_call_arg_list: an optional KernCallArgList instance \ used to store PSyIR representation of the arguments. :type kern_call_arg_list: \ Optional[:py:class:`psyclone.domain.lfric.KernCallArgList`] :returns: the kernel arguments associated with the mesh properties. :rtype: list of str :raises InternalError: if the class has been constructed for an \ invoke rather than a single kernel call. :raises InternalError: if an unsupported mesh property is encountered.
Definition at line 544 of file dynamo0p3.py.
References psyclone.domain.lfric.lfric_collection.LFRicCollection._invoke, psyclone.nemo.NemoInvokeSchedule._invoke, psyclone.psyGen.InvokeSchedule._invoke, psyclone.domain.lfric.lfric_collection.LFRicCollection._kernel, psyclone.dynamo0p3.LFRicMeshProperties._properties, psyclone.dynamo0p3.DynReferenceElement._properties, 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, and psyclone.psyir.nodes.scoping_node.ScopingNode._symbol_table.