Skip to content

refactor: split FieldSpecificationBase into two classes#4025

Open
kdrienCG wants to merge 71 commits intodevelopfrom
feature/kdrienCG/refactoFieldSpecificationBase
Open

refactor: split FieldSpecificationBase into two classes#4025
kdrienCG wants to merge 71 commits intodevelopfrom
feature/kdrienCG/refactoFieldSpecificationBase

Conversation

@kdrienCG
Copy link
Copy Markdown

@kdrienCG kdrienCG commented Apr 10, 2026

(Previously #4011)

This PR aims to refactor the FieldSpecificationBase class into two separate class.
FieldSpecification for the data.
FieldSpecificationImpl for the "behavior" (with methods like apply, computeRhsContribution, etc.).

This will separate concerns and make the code easier to understand when encountering field specifications.


The following architecture is proposed:

image

kdrienCG added 30 commits March 25, 2026 15:40
@kdrienCG kdrienCG marked this pull request as draft April 10, 2026 10:26
@kdrienCG kdrienCG removed the ci: run integrated tests Allows to run the integrated tests in GEOS CI label Apr 10, 2026
@kdrienCG kdrienCG marked this pull request as ready for review April 10, 2026 11:29
@kdrienCG kdrienCG added ci: run CUDA builds Allows to triggers (costly) CUDA jobs ci: run integrated tests Allows to run the integrated tests in GEOS CI ci: run code coverage enables running of the code coverage CI jobs labels Apr 10, 2026
Comment thread src/coreComponents/fieldSpecification/FieldSpecificationManager.hpp Outdated
Comment thread src/coreComponents/fieldSpecification/FieldSpecification.hpp Outdated
Comment thread src/coreComponents/fieldSpecification/FieldSpecificationImpl.hpp Outdated
Comment thread src/coreComponents/physicsSolvers/FieldApplicator.cpp Outdated
Comment thread src/coreComponents/integrationTests/xmlTests/testXMLFile.cpp Outdated
Comment thread src/coreComponents/physicsSolvers/fluidFlow/ImmiscibleMultiphaseFlow.hpp Outdated
Comment thread src/coreComponents/fieldSpecification/FieldSpecificationManager.hpp
@kdrienCG kdrienCG removed ci: run CUDA builds Allows to triggers (costly) CUDA jobs ci: run integrated tests Allows to run the integrated tests in GEOS CI ci: run code coverage enables running of the code coverage CI jobs labels Apr 13, 2026
Comment thread src/coreComponents/fieldSpecification/FieldSpecificationImpl.hpp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

flag: no rebaseline Does not require rebaseline type: cleanup / refactor Non-functional change (NFC) type: new A new issue has been created and requires attention

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants