Skip to content
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

fix: an issue of established f-m connections being duplicated in the run time. #3466

Merged
merged 12 commits into from
Dec 19, 2024
Original file line number Diff line number Diff line change
Expand Up @@ -468,6 +468,28 @@ void SurfaceGenerator::postRestartInitialization()
} );
}

bool SurfaceGenerator::execute( real64 const time_n,
real64 const dt,
integer const cycleNumber,
integer const GEOS_UNUSED_PARAM( eventCounter ),
real64 const GEOS_UNUSED_PARAM( eventProgress ),
DomainPartition & domain )
{
solverStep( time_n, dt, cycleNumber, domain );
forDiscretizationOnMeshTargets( domain.getMeshBodies(), [&] ( string const &,
MeshLevel & meshLevel,
arrayView1d< string const > const & )
{
ElementRegionManager & elemManager = meshLevel.getElemManager();
SurfaceElementRegion & fractureRegion = elemManager.getRegion< SurfaceElementRegion >( this->m_fractureRegionName );

FaceElementSubRegion & fractureSubRegion = fractureRegion.getUniqueSubRegion< FaceElementSubRegion >();
// without the clear of the following two fields, the initial fracture's f-m connections will be replicated later
fractureSubRegion.m_recalculateConnectionsFor2dFaces.clear();
fractureSubRegion.m_newFaceElements.clear();
});
return false;
}

real64 SurfaceGenerator::solverStep( real64 const & time_n,
real64 const & dt,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,11 +85,7 @@ class SurfaceGenerator : public PhysicsSolverBase
integer const cycleNumber,
integer const GEOS_UNUSED_PARAM( eventCounter ),
real64 const GEOS_UNUSED_PARAM( eventProgress ),
DomainPartition & domain ) override
{
solverStep( time_n, dt, cycleNumber, domain );
return false;
}
DomainPartition & domain ) override;

virtual real64 solverStep( real64 const & time_n,
real64 const & dt,
Expand Down
Loading