GEOS-DEV / GEOS-DEV/GEOS

Time history outputs in multi-region problems

Open
#1,636 3 comments 0 reactions 1 assignee View on GitHub

@wrtobin is already working on this.

Since Oct 14, 2021.

type: feature
Dominant language
C++
Stars
287
Forks
109
Avg merge
4d 41m
Merged PRs (30d)
5

Description

What is the requested feature?
The objectPath attribute in PackCollection seems to require a full path to the object in question (objectPath="ElementRegions/ALL_TETRA/REGION_NAME"). Other things, such as FieldSpecification tend to allow a higher level path, which is then applied to its children (objectPath="ElementRegions/ALL_TETRA/").

For problems with many regions, this can require the user to duplicate the PackCollection, TimeHistory, and Events entries for each region:

<?xml version="1.0" ?>

<Problem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="/usr/workspace/uwisc/GEOSX/src/coreComponents/fileIO/schema/schema.xsd">

  <Outputs>
    <TimeHistory
      name="pressure_a"
      sources="{ /Tasks/pressure_a }"
      filename="well_pressure_a"/>
    <TimeHistory
      name="pressure_b"
      sources="{ /Tasks/pressure_b }"
      filename="well_pressure_b"/>
    ...
  </Outputs>

  <Tasks>
    <PackCollection
      name="pressure_a"
      objectPath="ElementRegions/ALL_TETRA/ALL_TETRA"
      fieldName="pressure"
      setNames="{ $monitor_wells$ }"/>
    <PackCollection
      name="pressure_b"
      objectPath="ElementRegions/ALL_TETRA/FAULT_RFF_TETRA"
      fieldName="pressure"
      setNames="{ $monitor_wells$ }"/>
    ...
  </Tasks>

  <Events>
    <PeriodicEvent
      name="wellPressureCollection">
      <PeriodicEvent
        name="pressure_a"
        target="/Tasks/pressure_a"/>
      <PeriodicEvent
        name="pressure_b"
        target="/Tasks/pressure_b"/>
      ...
    </PeriodicEvent>

    <PeriodicEvent
      name="wellPressureOutput"
      timeFrequency="$history_frequency$"
      targetExactTimestep="0">
      <PeriodicEvent
        name="pressure_a"
        target="/Outputs/pressure_a"/>
      <PeriodicEvent
        name="pressure_b"
        target="/Outputs/pressure_b"/>
      ...
    </PeriodicEvent>
  </Events>

</Problem>

I'm not sure if there is a reason for this behavior, but it would be great if it were consistent with the other uses of objectPath

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.