Skip to content

Tidy up diffusion class and subclasses

Issue/feature addressed

Tidy-up of the diffusion class and subclasses.

Proposed solution

  • v_InitObject has been made pure virtual
  • v_Diffuse has been made pure virtual
  • Remove unused virtual function v_GetPrimVar along with public accessor
  • Remove duplicate (unused) virtual function v_DiffuseCoeffs along with public accessor
  • Remove unused function GetPenaltyFactorConst
  • Remove unused function GetDivCurl
  • Remove unused function AddSymmFluxIntegralToOffDiag
  • Virtual function v_ConsVarAveJump is specific to DiffusionIP. Removed from the base class along with public accessor. Function made non-virtual in the subclass.
  • Virtual function v_DiffuseTraceSymmFlux is specific to DiffusionIP. Removed from the base class along with public accessor. Function made non-virtual in the subclass.
  • Virtual function v_AddDiffusionSymmFluxToCoeff is specific to DiffusionIP. Removed from the base class along with public accessor. Function made non-virtual in the subclass.
  • Virtual function v_AddDiffusionSymmFluxToPhys is specific to DiffusionIP. Removed from the base class along with public accessor. Function made non-virtual in the subclass.
  • Relevant member variables and/or functions are made protected or private
  • Remove commented/unused code

Implementation

Tests

Suggested reviewers

Please suggest any people who would be appropriate to review your code.

Notes

Please add any other information that could be useful for reviewers.

Checklist

  • Functions and classes, or changes to them, are documented.
  • [ ] User guide/documentation is updated.
  • Changelog is updated.
  • [ ] Suitable tests added for new functionality.
  • Contributed code is correctly formatted. (See the contributing guidelines).
  • [ ] License added to any new files.
  • No extraneous files have been added (e.g. compiler output or test data files).
Edited by Jacques Xing

Merge request reports