Skip to main content

Class sysc::Region

Definition: Region.hpp (line 30)

Provide a class for a System Coupling region.

Participant can declare which regions can be used in the coupled analysis. Each region can declare its input variables and output variables. Input variables represent physical quantities whose values the participant expects System Coupling to provide. Output variables represent physical quantities whose values System Coupling expects the participant to provide.

Members

Private attributes

Variable m_name

Definition: Region.hpp (line 206)

RegionName sysc::Region::m_name

Type: RegionName

Variable m_topology

Definition: Region.hpp (line 207)

Topology sysc::Region::m_topology

Type: Topology

Variable m_regionDiscretizationType

Definition: Region.hpp (line 208)

RegionDiscretizationType sysc::Region::m_regionDiscretizationType

Type: RegionDiscretizationType

Variable m_displayName

Definition: Region.hpp (line 209)

DisplayName sysc::Region::m_displayName

Type: DisplayName

Variable m_side0Regions

Definition: Region.hpp (line 211)

std::vector`<Region>` sysc::Region::m_side0Regions

Type: std::vector< Region >

Variable m_side1Regions

Definition: Region.hpp (line 212)

std::vector`<Region>` sysc::Region::m_side1Regions

Type: std::vector< Region >

Variable m_inputVariables

Definition: Region.hpp (line 214)

std::vector`<Variable>` sysc::Region::m_inputVariables

Type: std::vector< Variable >

Variable m_inputVarNameToIndex

Definition: Region.hpp (line 215)

std::map<VariableName, std::size_t> sysc::Region::m_inputVarNameToIndex

Type: std::map< VariableName, std::size_t >

Variable m_outputVariables

Definition: Region.hpp (line 217)

std::vector`<Variable>` sysc::Region::m_outputVariables

Type: std::vector< Variable >

Variable m_outputVarNameToIndex

Definition: Region.hpp (line 218)

std::map<VariableName, std::size_t> sysc::Region::m_outputVarNameToIndex

Type: std::map< VariableName, std::size_t >

Public functions

Function Region

sysc::Region::Region(const RegionName &name)

Create region to be used in a coupled analysis.

Parameters:

  • name: - Unique name for this region.

Display name will default to the same as name.

Topology will default to surface.

Region mesh type will default to mesh.

Parameters:

Return type:

Function Region

sysc::Region::Region(const RegionName &name, enum Topology topology)

Create region to be used in a coupled analysis.

Parameters:

  • name: - Unique name for this region.
  • topology: - region topology.

Display name will default to the same as name.

Region mesh type will default to mesh.

Parameters:

Return type:

Function Region

sysc::Region::Region(const RegionName &name, enum Topology topology, const DisplayName &displayName)

Create region to be used in a coupled analysis.

Parameters:

  • name: - Unique name for this region.
  • topology: - region topology.
  • displayName: - region display name.

Mesh type will default to mesh.

Parameters:

Return type:

Function Region

sysc::Region::Region(const RegionName &name, enum Topology topology, enum RegionDiscretizationType regionDiscretizationType)

Create region to be used in a coupled analysis.

Parameters:

  • name: - Unique name for this region.
  • topology: - region topology.
  • regionDiscretizationType: - region discretization type.

Display name will default to the same as name.

Parameters:

Return type:

Function Region

sysc::Region::Region(const RegionName &name, enum Topology topology, const DisplayName &displayName, enum RegionDiscretizationType regionDiscretizationType)

Create region to be used in a coupled analysis.

Parameters:

  • name: - Unique name for this region.
  • topology: - region topology.
  • displayName: - region display name.
  • regionDiscretizationType: - region mesh type.

Parameters:

Return type:

Function addInputVariable

void sysc::Region::addInputVariable(const Variable &variable)

Provide a method to add an input variable to the region.

If this variable has already been added to the region as an input variable, then this call will have no effect.

If a different variable with the same name has already been added to the region as an input variable, then a runtime error will be thrown.

If a variable with the same name has already been added to the region as an output variable, then a runtime error will be thrown.

If the variable name contains invalid characters, a runtime error will be thrown.

If the region discretization type is point cloud, then the location of the variable added to this region is insignificant.

Parameters:

  • variable: Variable whose values are provided by System Coupling and consumed by the participant.

Parameters:

Return type: void

Function addOutputVariable

void sysc::Region::addOutputVariable(const Variable &variable)

Provide a method to add an output variable to the region.

If this variable has already been added to the region as an output variable, then this call will have no effect.

If a different variable with the same name has already been added to the region as an output variable, then a runtime error will be thrown.

If a variable with the same name has already been added to the region as an input variable, then a runtime error will be thrown.

If the variable name contains invalid characters, a runtime error will be thrown.

If the region discretization type is point cloud, then the location of the variable added to this region is insignificant.

Parameters:

  • variable: Variable whose values are provided by the participant and consumed by System Coupling.

Parameters:

Return type: void

Function getName

const RegionName& sysc::Region::getName() const noexcept

Get the region's name.

Returns:

Return value is the region's unique name (string).

Return type: const RegionName &

Function getTopology

Topology sysc::Region::getTopology() const noexcept

Get the region's topology.

Returns:

Return value is the topology of this region.

Return type: Topology

Function getDisplayName

const DisplayName& sysc::Region::getDisplayName() const noexcept

Get the region's display name.

Returns:

Return value is the display name of this region.

Return type: const DisplayName &

Function getRegionDiscretizationType

RegionDiscretizationType sysc::Region::getRegionDiscretizationType() const noexcept

Get the region's mesh type.

Returns:

Return value is the mesh type of this region.

Return type: RegionDiscretizationType

Function getInputVariable

const Variable& sysc::Region::getInputVariable(const VariableName &name) const

Get the region's input variable by name.

Parameters:

  • name: Name of the desired input variable.

Returns:

Return is the Variable object that was requested.

Parameters:

Return type: const Variable &

Function getOutputVariable

const Variable& sysc::Region::getOutputVariable(const VariableName &name) const

Get the region's output variable by name.

Parameters:

  • name: Name of the desired output variable.

Returns:

Return is the Variable object that was requested.

Parameters:

Return type: const Variable &

Function getNumOutputVariables

std::size_t sysc::Region::getNumOutputVariables() const noexcept

Provide a method to get number of output variables for this region.

Return type: std::size_t

Function getNumInputVariables

std::size_t sysc::Region::getNumInputVariables() const noexcept

Provide a method to get number of input variables for this region.

Return type: std::size_t

Function getOutputVariable

const Variable& sysc::Region::getOutputVariable(std::size_t index) const

Get the region's output variable by index.

Parameters:

  • std::size_t index

Return type: const Variable &

Function getInputVariable

const Variable& sysc::Region::getInputVariable(std::size_t index) const

Get the region's input variable by index.

Parameters:

  • std::size_t index

Return type: const Variable &