Reference Guide  2.5.0
psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata Class Reference
Inheritance diagram for psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata:
Collaboration diagram for psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata:

Public Member Functions

def __init__ (self, operates_on)
 
def fortran_string (self)
 
def operates_on (self)
 
def operates_on (self, value)
 

Static Public Member Functions

def create_from_fparser2 (fparser2_tree)
 

Public Attributes

 operates_on
 

Additional Inherited Members

Detailed Description

Class to capture the values of the LFRic kernel
OPERATES_ON metadata. This class supports the creation,
modification and Fortran output of this metadata.

OPERATES_ON metadata specifies that the Kernel has been written to
expect data in the specified form, i.e. 'cell_column' means a column
of cells and 'domain' means all cells.

:param str operates_on: the value of operates_on.

Definition at line 45 of file operates_on_metadata.py.

Member Function Documentation

◆ create_from_fparser2()

def psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata.create_from_fparser2 (   fparser2_tree)
static
Create an instance of OperatesOnMetadata from an fparser2
tree.

:param fparser2_tree: fparser2 tree capturing the operates_on \
    metadata.
:type fparser2_tree: :py:class:`fparser.two.Fortran2003.\
    Data_Component_Def_Stmt`

LFRic operates_on metadata is in scalar form:

integer :: operates_on = cell_column

:returns: an instance of OperatesOnMetadata.
:rtype: :py:class:`psyclone.domain.lfric.kernel.\
    OperatesOnMetadata`

Reimplemented from psyclone.domain.lfric.kernel.common_metadata.CommonMetadata.

Definition at line 70 of file operates_on_metadata.py.

70  def create_from_fparser2(fparser2_tree):
71  '''Create an instance of OperatesOnMetadata from an fparser2
72  tree.
73 
74  :param fparser2_tree: fparser2 tree capturing the operates_on \
75  metadata.
76  :type fparser2_tree: :py:class:`fparser.two.Fortran2003.\
77  Data_Component_Def_Stmt`
78 
79  LFRic operates_on metadata is in scalar form:
80 
81  integer :: operates_on = cell_column
82 
83  :returns: an instance of OperatesOnMetadata.
84  :rtype: :py:class:`psyclone.domain.lfric.kernel.\
85  OperatesOnMetadata`
86 
87  '''
88  const = LFRicConstants()
89  valid_values = const.USER_KERNEL_ITERATION_SPACES
90  value = OperatesOnMetadata.get_intrinsic_scalar_declaration(
91  fparser2_tree, "INTEGER", "OPERATES_ON", valid_values)
92  return OperatesOnMetadata(value)
93 
Here is the caller graph for this function:

◆ fortran_string()

def psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata.fortran_string (   self)
 :returns: the operates_on metadata as Fortran.
 :rtype: str

Definition at line 61 of file operates_on_metadata.py.

61  def fortran_string(self):
62  '''
63  :returns: the operates_on metadata as Fortran.
64  :rtype: str
65  '''
66  return OperatesOnMetadata.scalar_declaration_string(
67  "INTEGER", "OPERATES_ON", self._operates_on)
68 

References psyclone.domain.lfric.kernel.lfric_kernel_metadata.LFRicKernelMetadata._operates_on, and psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata._operates_on.

Here is the caller graph for this function:

◆ operates_on() [1/2]

def psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata.operates_on (   self)
:returns: the operates_on value.
:rtype: str

Definition at line 95 of file operates_on_metadata.py.

95  def operates_on(self):
96  '''
97  :returns: the operates_on value.
98  :rtype: str
99  '''
100  return self._operates_on
101 

References psyclone.domain.lfric.kernel.lfric_kernel_metadata.LFRicKernelMetadata._operates_on, and psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata._operates_on.

Here is the caller graph for this function:

◆ operates_on() [2/2]

def psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata.operates_on (   self,
  value 
)
:param str value: sets the operates_on metadata to the \
    supplied value.

Definition at line 103 of file operates_on_metadata.py.

103  def operates_on(self, value):
104  '''
105  :param str value: sets the operates_on metadata to the \
106  supplied value.
107  '''
108  const = LFRicConstants()
109  OperatesOnMetadata.validate_scalar_value(
110  value, const.VALID_ITERATION_SPACES, "OPERATES_ON")
111  self._operates_on = value.lower()
112 
113 

References psyclone.domain.lfric.kernel.lfric_kernel_metadata.LFRicKernelMetadata._operates_on, and psyclone.domain.lfric.kernel.operates_on_metadata.OperatesOnMetadata._operates_on.

Here is the caller graph for this function:

The documentation for this class was generated from the following file: