Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • O ogs
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
    • Locked files
  • Issues 111
    • Issues 111
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 42
    • Merge requests 42
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ogsogs
  • ogs
  • Merge requests
  • !3963

Enabled equation wise flexibility in the use of compensate_non_equilibrium_initial_residuum

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged wenqing requested to merge wenqing/ogs:non_eq_balance_source_term1 into master Jan 27, 2022
  • Overview 22
  • Commits 8
  • Pipelines 13
  • Changes 48

This MR brings my implementation to flexibly use compensate_non_equilibrium_initial_residuum in balance equation wise, or primary variable wise. The changes are:

  1. for the input data in project file, tag of compensate_non_equilibrium_initial_residuum is moved from <time_loop><processes><process> to <process_variables><process_variable>. The reason is that there is only one process defined with the monolithic scheme but the variables are always individually defined for the balance equation of each physical process.
  2. the computation of non equilibrium initial residuum is conducted if any of <process_variables><process_variable> has the tag of compensate_non_equilibrium_initial_residuum with true value. After assembly of the vector of non equilibrium initial residuum, the entries of that vector that associated with the variables with the false value of compensate_non_equilibrium_initial_residuum are set to zero. With such implementation, the flexible use of compensate_non_equilibrium_initial_residuum is realized without modifying the local assemblers.
  3. for the sake of simplicity in usage, the assembly of boundary conditions and source terms is excluded from the computation of non equilibrium initial residuum vector. That means if the compensation of non equilibrium initial residuum to the balance equation is considered, the Neumann BC and the source term must be given as their increments from the initial state. This statement is added to the documentation of the tag ofcompensate_non_equilibrium_initial_residuum.

The same as before, that tag is an optional input. If the tag of compensate_non_equilibrium_initial_residuum is not presented in project file, its value is set to false by default.

This MR fixes #3247 (closed), and fixes #3242 (closed) as well.

  1. Feature description was added to the changelog
  2. Tests covering your feature were added? Yes it does. The feature is tested by modifying the existing benchmark.
  3. Any new feature or behavior change was documented? The related parameter documentation is updated.
Edited Feb 07, 2022 by wenqing
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: non_eq_balance_source_term1