Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • O ogs
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 71
    • Issues 71
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 24
    • Merge requests 24
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ogs
  • 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
Reviewer
Request review from
Time tracking
Source branch: non_eq_balance_source_term1