-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Infrastructure for Geomechanical Analysis #5801
base: master
Are you sure you want to change the base?
Changes from all commits
45dc902
b977d6e
8ba1238
15e8b4a
1055037
748e8a2
08c3c69
f5764ab
4ee3ee8
473a16f
93de995
1282dce
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -163,14 +163,14 @@ namespace Dune { | |
}; | ||
|
||
|
||
/** Specialization of FieldTraits for all PrimaryVariables derived from Opm::FvBasePrimaryVariables */ | ||
template<class TypeTag, template <class> class EwomsPrimaryVariable> | ||
struct FieldTraits< EwomsPrimaryVariable< TypeTag > > | ||
: public FieldTraitsImpl< TypeTag, | ||
std::is_base_of< Opm::FvBasePrimaryVariables< TypeTag >, | ||
EwomsPrimaryVariable< TypeTag > > :: value > | ||
{ | ||
}; | ||
// /** Specialization of FieldTraits for all PrimaryVariables derived from Opm::FvBasePrimaryVariables */ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. why is this commented out? |
||
// template<class TypeTag, template <class> class EwomsPrimaryVariable> | ||
// struct FieldTraits< EwomsPrimaryVariable< TypeTag > > | ||
// : public FieldTraitsImpl< TypeTag, | ||
// std::is_base_of< Opm::FvBasePrimaryVariables< TypeTag >, | ||
// EwomsPrimaryVariable< TypeTag > > :: value > | ||
// { | ||
// }; | ||
} | ||
|
||
#endif |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -227,6 +227,7 @@ class CpGridVanguard : public FlowBaseVanguard<TypeTag> | |
} | ||
|
||
this->doLoadBalance_(this->edgeWeightsMethod(), this->ownersFirst(), | ||
this->addCorners(),this->numOverlap(), | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. missing space |
||
this->partitionMethod(), this->serialPartitioning(), | ||
this->enableDistributedWells(), | ||
this->allow_splitting_inactive_wells_, | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -424,6 +424,10 @@ void FlowGenericVanguard::registerParameters_() | |
Parameters::Register<Parameters::OwnerCellsFirst> | ||
("Order cells owned by rank before ghost/overlap cells."); | ||
#if HAVE_MPI | ||
Parameters::Register<Parameters::AddCorners> | ||
("Add corners to partion."); | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. partition |
||
Parameters::Register<Parameters::NumOverlap> | ||
("Numbers of layers overlap in parallel partition"); | ||
Parameters::Register<Parameters::PartitionMethod> | ||
("Choose partitioning strategy: 0=simple, 1=Zoltan, 2=METIS."); | ||
Parameters::Register<Parameters::SerialPartitioning> | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -1676,9 +1676,8 @@ class FlowProblem : public GetPropType<TypeTag, Properties::BaseProblem> | |
|
||
return this->rockCompTransMultWc_[tableIdx].eval(effectivePressure, SwDeltaMax, /*extrapolation=*/true); | ||
} | ||
|
||
protected: | ||
typename Vanguard::TransmissibilityType transmissibilities_; | ||
|
||
std::shared_ptr<EclMaterialLawManager> materialLawManager_; | ||
std::shared_ptr<EclThermalLawManager> thermalLawManager_; | ||
|
||
|
@@ -1694,6 +1693,8 @@ class FlowProblem : public GetPropType<TypeTag, Properties::BaseProblem> | |
PffGridVector<GridView, Stencil, PffDofData_, DofMapper> pffDofData_; | ||
TracerModel tracerModel_; | ||
|
||
|
||
private: | ||
template<class T> | ||
struct BCData | ||
{ | ||
|
@@ -1726,8 +1727,9 @@ class FlowProblem : public GetPropType<TypeTag, Properties::BaseProblem> | |
virtual void handleSolventBC(const BCProp::BCFace&, RateVector&) const = 0; | ||
|
||
virtual void handlePolymerBC(const BCProp::BCFace&, RateVector&) const = 0; | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we want this blank line. |
||
protected: | ||
BCData<int> bcindex_; | ||
private: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. add blank line |
||
bool nonTrivialBoundaryConditions_ = false; | ||
bool explicitRockCompaction_ = false; | ||
bool first_step_ = true; | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -80,8 +80,9 @@ template <class TypeTag> | |
class FlowProblemBlackoil : public FlowProblem<TypeTag> | ||
{ | ||
// TODO: the naming of the Types might be able to be adjusted | ||
public: | ||
using FlowProblemType = FlowProblem<TypeTag>; | ||
|
||
private: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we want the blank line. |
||
using typename FlowProblemType::Scalar; | ||
using typename FlowProblemType::Simulator; | ||
using typename FlowProblemType::GridView; | ||
|
@@ -436,7 +437,10 @@ class FlowProblemBlackoil : public FlowProblem<TypeTag> | |
void endTimeStep() override | ||
{ | ||
FlowProblemType::endTimeStep(); | ||
|
||
this->endStepApplyAction(); | ||
} | ||
void endStepApplyAction() | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. missing newlines. |
||
{ | ||
// after the solution is updated, the values in output module needs also updated | ||
this->eclWriter()->mutableOutputModule().invalidateLocalData(); | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these (mostly) contain prototypes for functions that are never installed, ie not in the library. if we need need these in downstreams there is more work to be done, this achieves nothing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's mostly true. They're used directly in
Main.hpp
so we either need the headers, or the include statements inMain.hpp
must go away.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, i am aware of that but Main.hpp is also not structured to be installed, it's only meant to end up in simulators, which again are not meant to be downstream accessible.
my point is that if we really want to prepare the code for downstreams we have a lot of things that need to be addressed, not just in the code but also in the build system., e.g. how we handle gpu stuff.
i'm not really opposing this change, it makes thing no worse than it already was and helps a little so...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
True. I guess it slipped through in #2532 (8c2ba0b) then.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we may getting to a point where a careful review of the full OPM build system is in order anyway.