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).