Skip to content

Generic integration method

Christoph Lehmann requested to merge chleh/ogs:generic-integration-method into master

This MR:

  1. Removes the templated TemplateWeightedPoint class.
  2. Introduces a new class WeightedPoint that does not need templates.
  3. Integration methods now work without templated point types.
  4. Introduces a "generic integration method" intended as a type-erased greatest common denominator for any integration method.
    The generic integration method is not used by OGS, yet. That will be follow-up work.
  5. Introduces an IntegrationMethodRegistry that provides the default (and currently only) integration method for a certain mesh element type and integration order.

Why?

I am planning to implement the time series output I am currently working on based on custom "fake" integration methods. I.e., the local assembly necessary for time series output will only take place on the fake integration points obtained from the fake integration method. By this strategy only minimal changes are necessary to the local assembler classes.

I think it will make the time series output implementation easier if the integration methods have a common interface (GenericIntegrationMethod introduced in this MR). Thereby the integration method does not need to be a template parameter to the local assemblers anymore.

Furthermore, by refactoring the integration methods it will be easier to add new proper integration methods to OGS, maybe even only for specific elements such as those located at a material interface.

Roadmap (short-term)

  1. this MR
  2. remove IntegrationMethod template parameter from local assemblers
  3. add functionality for easily switching between the default integration method and custom/fake ones.
  4. further steps towards time series output

--

  1. [-] Feature description was added to the changelog
    • not a new feature
  2. Tests covering your feature were added?
  3. [-] Any new feature or behavior change was documented?
    • no intended change in behaviour
Edited by wenqing

Merge request reports