Tasks Manager

The GEOS tasks manager allows a user to specify tasks to be executed. These tasks are compatible targets for the Event Management.

The tasks manager is configured via the Tasks block in an input .xml file, i.e.:

<Tasks>
  <PackCollection name="historyCollection" objectPath="nodeManager" fieldName="velocity" />
</Tasks>

Tasks Manager Configuration

Task

The children of the Tasks block define different Tasks to be triggered by events specified in the Event Management during the execution of the simulation. The available task types are summarized below; the complete list of attributes for each one is given in the Datastructure Index.

Task

Purpose

PackCollection

Collect time-history data from a field (on all or a subset of objects) for output by a TimeHistory output (see below and Outputs).

CompositionalMultiphaseStatistics, SinglePhaseStatistics, SolidMechanicsStatistics, SourceFluxStatistics

Compute and report statistics (min/average/max of pressure, phase volumes, displacements, injected/produced amounts, …) in the log and/or CSV files (see Log and CSV outputs).

*Initialization (e.g. SinglePhasePoromechanicsInitialization, SolidMechanicsLagrangianFEMInitialization, HydrofractureInitialization)

Run a solver once to bring the model to equilibrium with the initial conditions before the main simulation starts (see Poromechanical Models Initialization).

SolidMechanicsStateReset

Reset the displacements (and velocities) of a solid mechanics solver and optionally enable/disable inelastic behavior, typically after an initialization step.

FieldApplicator

Apply field specifications to elements created during the simulation (e.g. fracture elements created by the SurfaceGenerator).

CellToCellDataCollection

Output cell-to-cell connection data (currently the transmissibilities) computed by a flow solver.

PVTDriver, RelpermDriver, TriaxialDriver

Run a constitutive model on its own, without a mesh, to test or calibrate it (see PVT Driver, Relperm Driver, Triaxial Driver).

Name

Type

Default

Description

CellToCellDataCollection

node

XML Element: CellToCellDataCollection

CompositionalMultiphaseReservoirPoromechanicsConformingFracturesALMInitialization

node

XML Element: CompositionalMultiphaseReservoirPoromechanicsConformingFracturesALMInitialization

CompositionalMultiphaseReservoirPoromechanicsConformingFracturesInitialization

node

XML Element: CompositionalMultiphaseReservoirPoromechanicsConformingFracturesInitialization

CompositionalMultiphaseReservoirPoromechanicsInitialization

node

XML Element: CompositionalMultiphaseReservoirPoromechanicsInitialization

CompositionalMultiphaseStatistics

node

XML Element: CompositionalMultiphaseStatistics

FieldApplicator

node

XML Element: FieldApplicator

HydrofractureInitialization

node

XML Element: HydrofractureInitialization

MultiphasePoromechanicsConformingFracturesALMInitialization

node

XML Element: MultiphasePoromechanicsConformingFracturesALMInitialization

MultiphasePoromechanicsConformingFracturesInitialization

node

XML Element: MultiphasePoromechanicsConformingFracturesInitialization

MultiphasePoromechanicsInitialization

node

XML Element: MultiphasePoromechanicsInitialization

PVTDriver

node

XML Element: PVTDriver

PackCollection

node

XML Element: PackCollection

RelpermDriver

node

XML Element: RelpermDriver

SinglePhasePoromechanicsConformingFracturesALMInitialization

node

XML Element: SinglePhasePoromechanicsConformingFracturesALMInitialization

SinglePhasePoromechanicsConformingFracturesInitialization

node

XML Element: SinglePhasePoromechanicsConformingFracturesInitialization

SinglePhasePoromechanicsEmbeddedFracturesInitialization

node

XML Element: SinglePhasePoromechanicsEmbeddedFracturesInitialization

SinglePhasePoromechanicsInitialization

node

XML Element: SinglePhasePoromechanicsInitialization

SinglePhaseReservoirPoromechanicsConformingFracturesALMInitialization

node

XML Element: SinglePhaseReservoirPoromechanicsConformingFracturesALMInitialization

SinglePhaseReservoirPoromechanicsConformingFracturesInitialization

node

XML Element: SinglePhaseReservoirPoromechanicsConformingFracturesInitialization

SinglePhaseReservoirPoromechanicsInitialization

node

XML Element: SinglePhaseReservoirPoromechanicsInitialization

SinglePhaseStatistics

node

XML Element: SinglePhaseStatistics

SolidMechanicsAugmentedLagrangianContactInitialization

node

XML Element: SolidMechanicsAugmentedLagrangianContactInitialization

SolidMechanicsEmbeddedFracturesInitialization

node

XML Element: SolidMechanicsEmbeddedFracturesInitialization

SolidMechanicsLagrangeContactInitialization

node

XML Element: SolidMechanicsLagrangeContactInitialization

SolidMechanicsLagrangianFEMInitialization

node

XML Element: SolidMechanicsLagrangianFEMInitialization

SolidMechanicsStateReset

node

XML Element: SolidMechanicsStateReset

SolidMechanicsStatistics

node

XML Element: SolidMechanicsStatistics

SourceFluxStatistics

node

XML Element: SourceFluxStatistics

TriaxialDriver

node

XML Element: TriaxialDriver

PackCollection

The PackCollection Task is used to collect time history information from fields. Either the entire field or specified named sets of indices in the field can be collected.

Name

Type

Default

Description

disableCoordCollection

integer

0

Whether or not to create coordinate meta-collectors if collected objects are mesh objects.

fieldName

groupNameRef

required

The name of the (packable) field associated with the specified object to retrieve data from

name

groupName

required

A name is required for any non-unique nodes

objectPath

groupNameRef

required

The name of the object from which to retrieve field values.

onlyOnSetChange

integer

0

Whether or not to only collect when the collected sets of indices change in any way.

setNames

groupNameRef_array

{}

The set(s) for which to retrieve data.

Note: The time history information collected via this task is buffered internally until it is output by a linked TimeHistory Output.

Triggering the Tasks

Tasks can be triggered using the Event Management. Recurring tasks should use a <PeriodicEvent> and one-time tasks should use a <SoloEvent>:

<PeriodicEvent name="historyCollectEvent"
               timeFrequency="1.0"
               targetExactTimestep="1"
               target="/Tasks/historyCollection" />

The keyword target has to match the name of a Task specified as a child of the <Tasks> block.