Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
141 commits
Select commit Hold shift + click to select a range
998857e
first step
Jul 17, 2024
8d2f816
Merge branch 'develop' into pt/well-frac
paveltomin Sep 10, 2024
dba796a
WIP
Sep 13, 2024
c8557e7
enable reservoir+wells+contact mechanics in seq way
Sep 13, 2024
75d7a70
test cases
Sep 13, 2024
85fe134
Merge branch 'develop' into pt/seq-wells-frac
paveltomin Sep 13, 2024
f249115
Merge branch 'develop' into pt/well-frac
paveltomin Sep 13, 2024
d4caa6a
Merge branch 'pt/seq-wells-frac' into pt/well-frac
Sep 13, 2024
c2eb806
format
Sep 13, 2024
7e911d3
fix test
Sep 13, 2024
e927410
bug fix
Sep 13, 2024
7c3b280
remove some debug output
Sep 14, 2024
7839d7a
Merge branch 'pt/seq-wells-frac' into pt/well-frac
paveltomin Sep 14, 2024
c0702ef
test should run now
Sep 14, 2024
a4aa4a2
Merge branch 'develop' into pt/seq-wells-frac
paveltomin Sep 14, 2024
f88f482
Merge branch 'pt/seq-wells-frac' into pt/well-frac
paveltomin Sep 14, 2024
c26e1cc
Update FiniteVolumeManager.cpp
paveltomin Sep 14, 2024
7cef347
Update MeshForLoopInterface.hpp
paveltomin Sep 14, 2024
0f88d5a
Update SinglePhaseWell.cpp
paveltomin Sep 15, 2024
a4041d7
cleanup
Sep 16, 2024
7be3513
test cases
Sep 16, 2024
91d8e63
Merge branch 'pt/seq-wells-frac' into pt/well-frac
paveltomin Sep 16, 2024
7af09b0
Update SurfaceGenerator.cpp
paveltomin Sep 16, 2024
6e63f20
Update EmbeddedSurfaceGenerator.cpp
paveltomin Sep 16, 2024
6733dc1
Update SolidMechanicsMPM.hpp
paveltomin Sep 16, 2024
8a7c8fa
Update SolidMechanicsLagrangianFEM.hpp
paveltomin Sep 16, 2024
a1caadf
Update PhaseFieldFractureSolver.cpp
paveltomin Sep 16, 2024
28a7b0a
Update SolidMechanicsLagrangeContact.cpp
paveltomin Sep 16, 2024
c93f069
build fix and schema
Sep 16, 2024
5d0f32c
connect to all regions by default
Sep 16, 2024
fe5d046
implement subregion loop break
Sep 16, 2024
c4eaa53
remove schema from commit
Sep 16, 2024
b7988a5
wip
Sep 18, 2024
ba5f466
Update WellElementSubRegion.cpp
paveltomin Sep 18, 2024
5911c0d
Merge branch 'develop' into pt/seq-wells-frac
paveltomin Sep 18, 2024
bad8ebd
test fix
Sep 18, 2024
c65a65f
Merge branch 'pt/seq-wells-frac' into pt/well-frac
paveltomin Sep 18, 2024
5e61ed8
this should work
Sep 19, 2024
7858fd7
Update ElementSubRegionBase.hpp
paveltomin Sep 19, 2024
14422f2
Update SurfaceElementRegion.cpp
paveltomin Sep 19, 2024
1210866
fix hack
Sep 19, 2024
be90a23
Merge branch 'pt/connect-well-to-2d-elem' of https://github.com/GEOS-…
Sep 19, 2024
4d8a986
wip
Sep 19, 2024
418f18f
seems to work
Sep 19, 2024
cd30695
test case update
Sep 20, 2024
0c6bcef
Update WellElementSubRegion.cpp
paveltomin Sep 20, 2024
d2fc2a6
Update ComputationalGeometry.hpp
paveltomin Sep 20, 2024
b1a3f19
Merge branch 'develop' into pt/well-frac
paveltomin Oct 25, 2024
0bc4a38
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Oct 25, 2024
f18b63e
Merge remote-tracking branch 'origin/develop' into pt/well-frac
Nov 4, 2024
2b47317
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Nov 4, 2024
2f26203
Merge branch 'develop' into pt/well-frac
paveltomin Nov 7, 2024
6fe9518
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Nov 7, 2024
85bedf6
Merge branch 'develop' into pt/well-frac
paveltomin Nov 11, 2024
6ace57b
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Nov 11, 2024
af565ed
Merge branch 'develop' into pt/well-frac
paveltomin Nov 17, 2024
02a5901
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Nov 17, 2024
29ffe9b
Merge branch 'develop' into pt/well-frac
paveltomin Nov 22, 2024
cf4e21e
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Nov 22, 2024
3051704
Merge remote-tracking branch 'origin/develop' into pt/well-frac
Dec 2, 2024
2720743
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Dec 2, 2024
56d52cb
Update WellGeneratorBase.hpp
paveltomin Dec 2, 2024
74924be
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Dec 2, 2024
f8b21d9
Merge branch 'develop' into pt/well-frac
paveltomin Dec 16, 2024
a979d51
Merge branch 'develop' into pt/well-frac
paveltomin Dec 23, 2024
624187d
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Dec 23, 2024
c22d0ae
Merge branch 'develop' into pt/well-frac
paveltomin Jan 8, 2025
ec48635
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 8, 2025
9b47105
Merge branch 'develop' into pt/well-frac
paveltomin Jan 13, 2025
1021317
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 13, 2025
026e729
remove old funstions
Jan 13, 2025
7a15d18
correct typo
Jan 13, 2025
090f555
fix parallel crash and clarify output
Jan 13, 2025
6123da5
Merge branch 'develop' into pt/well-frac
paveltomin Jan 14, 2025
799e4b4
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 14, 2025
fb42fc2
Merge branch 'develop' into pt/well-frac
paveltomin Jan 16, 2025
b5472e9
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 16, 2025
0bbb761
Merge branch 'develop' into pt/well-frac
paveltomin Jan 22, 2025
e44d6c9
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 22, 2025
57b5ad6
Merge branch 'develop' into pt/well-frac
paveltomin Jan 28, 2025
e4d8400
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 28, 2025
ce2e7bf
Merge branch 'develop' into pt/well-frac
paveltomin Jan 31, 2025
616d4e0
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Jan 31, 2025
cfb4ad3
Update .integrated_tests.yaml
paveltomin Feb 1, 2025
df474a1
Update .integrated_tests.yaml
paveltomin Feb 1, 2025
5de317a
Update BASELINE_NOTES.md
paveltomin Feb 1, 2025
9031a4b
Merge branch 'develop' into pt/well-frac
paveltomin Feb 4, 2025
f98e9ea
Merge branch 'pt/well-frac' into pt/connect-well-to-2d-elem
paveltomin Feb 5, 2025
e0e560e
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Feb 6, 2025
027eb80
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Feb 7, 2025
5246773
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Feb 7, 2025
79501ec
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Feb 17, 2025
a702020
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Feb 18, 2025
18de74a
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Mar 3, 2025
30b20b6
move calculateElementCenters out
Mar 3, 2025
a4aec50
sync the rest
Mar 3, 2025
6a40a02
test
Mar 3, 2025
b9fd44f
try this
Mar 4, 2025
e517a4f
add missing file
Mar 4, 2025
9ebd1eb
correct file path
Mar 4, 2025
7f3b542
revert minor changes
Mar 4, 2025
835c350
Update FaceManager.cpp
paveltomin Mar 4, 2025
e53b870
Update ComputationalGeometry.hpp
paveltomin Mar 4, 2025
e75ee07
Update ProblemManager.cpp
paveltomin Mar 5, 2025
cce8dac
try with removing duplicates
Mar 5, 2025
4375a76
scale tolerance with global lenght scale
Mar 7, 2025
838548c
simplify and add doxygen
Mar 7, 2025
a436250
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Mar 9, 2025
7c202db
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Mar 18, 2025
ccb4aa4
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Mar 19, 2025
4d0c270
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Apr 16, 2025
ad1c20f
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin May 1, 2025
906bbd7
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin May 13, 2025
7deed47
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin May 29, 2025
6db923f
Merge branch 'develop' into pt/connect-well-to-2d-elem
jhuang2601 Jul 24, 2025
cd4caa5
update smoke tests
jhuang2601 Jul 25, 2025
a308ef1
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Jul 25, 2025
38e082e
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Jul 30, 2025
8f58720
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Aug 9, 2025
c6ebc65
doxygen fix
Aug 9, 2025
aff3ff9
one more
Aug 9, 2025
91882eb
Merge remote-tracking branch 'origin/develop' into pt/connect-well-to…
Aug 12, 2025
386ca54
Update src/coreComponents/mesh/utilities/ComputationalGeometry.hpp
paveltomin Aug 15, 2025
07ac768
Update src/coreComponents/mesh/utilities/ComputationalGeometry.hpp
paveltomin Aug 15, 2025
8ce2223
Update src/coreComponents/mesh/utilities/ComputationalGeometry.hpp
paveltomin Aug 15, 2025
c31d347
Update ComputationalGeometry.hpp
paveltomin Aug 15, 2025
896ec4a
Update src/coreComponents/mesh/ElementSubRegionBase.hpp
paveltomin Aug 15, 2025
d70ee8f
Update src/coreComponents/mesh/ElementSubRegionBase.hpp
paveltomin Aug 15, 2025
e09d625
copilot
Aug 15, 2025
4fe59ac
simplify
Aug 15, 2025
08b2fc1
Merge branch 'pt/connect-well-to-2d-elem' of https://github.com/GEOS-…
Aug 15, 2025
9c9b46b
build fix
Aug 15, 2025
0cdf7a0
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Aug 15, 2025
ae33099
Merge branch 'develop' into pt/connect-well-to-2d-elem
rrsettgast Aug 21, 2025
ace6d0d
Merge branch 'develop' into pt/connect-well-to-2d-elem
paveltomin Oct 6, 2025
27454a0
Bertrand's comments
Oct 6, 2025
f46efe0
Update WellElementSubRegion.cpp
paveltomin Oct 6, 2025
b982c47
clarify TODO comment
Oct 6, 2025
3c9ebb4
Merge branch 'pt/connect-well-to-2d-elem' of https://github.com/GEOS-…
Oct 6, 2025
5d76d83
Update baseline path in integrated tests configuration
paveltomin Oct 7, 2025
58ed082
Update baseline notes with new entries
paveltomin Oct 7, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
first step
  • Loading branch information
Pavel Tomin committed Jul 17, 2024
commit 998857e3d2c41b74b9f45dc8afbd84d0021d13f6
64 changes: 34 additions & 30 deletions src/coreComponents/mesh/WellElementSubRegion.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,8 @@ void collectLocalAndBoundaryNodes( LineBlockABC const & lineBlock,
* @param[in] ei the index of the reservoir element
* @param[inout] nodes the nodes that have already been visited
*/
void collectElementNodes( CellElementSubRegion const & subRegion,
template < typename SUBREGION_TYPE >
void collectElementNodes( SUBREGION_TYPE const & subRegion,
localIndex ei,
SortedArray< localIndex > & nodes )
{
Expand Down Expand Up @@ -306,39 +307,42 @@ bool searchLocalElements( MeshLevel const & mesh,
// the assumption here is that perforations have been entered in order of depth
bool resElemFound = false;

CellElementRegion const & region = mesh.getElemManager().getRegion< CellElementRegion >( erInit );
CellElementSubRegion const & subRegion = region.getSubRegion< CellElementSubRegion >( esrInit );
ElementRegionBase const & region = mesh.getElemManager().getRegion< ElementRegionBase >( erInit );

SortedArray< localIndex > nodes;
SortedArray< globalIndex > elements;

// here is how the search is done:
// 1 - We check if "location" is within the "init" reservoir element defined by (erInit,esrMatched,eiMatched)
// 2 - If yes, stop
// - If not, a) collect the nodes of the reservoir element defined by (erInit,esrMatched,eiMatched)
// b) use these nodes to grab the neighbors of (erInit,esrMatched,eiMatched)
// c) check if "location" is within the neighbors. If not, grab the neighbors of the neighbors, and so
// on...

// collect the nodes of the current element
// they will be used to access the neighbors and check if they contain the perforation
collectElementNodes( subRegion, eiInit, nodes );

// if no match is found, enlarge the neighborhood m_searchDepth'th times
for( localIndex d = 0; d < searchDepth; ++d )
region.forElementSubRegions< CellElementSubRegion, SurfaceElementSubRegion >( [&] ( auto & subRegion )
{
localIndex nNodes = nodes.size();

// search the reservoir elements that can be accessed from the set "nodes"
// stop if a reservoir element containing the perforation is found
// if not, enlarge the set "nodes"
resElemFound = visitNeighborElements( mesh, location, nodes, elements,
erMatched, esrMatched, eiMatched );
if( resElemFound || nNodes == nodes.size())
SortedArray< localIndex > nodes;
SortedArray< globalIndex > elements;

// here is how the search is done:
// 1 - We check if "location" is within the "init" reservoir element defined by (erInit,esrMatched,eiMatched)
// 2 - If yes, stop
// - If not, a) collect the nodes of the reservoir element defined by (erInit,esrMatched,eiMatched)
// b) use these nodes to grab the neighbors of (erInit,esrMatched,eiMatched)
// c) check if "location" is within the neighbors. If not, grab the neighbors of the neighbors, and so
// on...

// collect the nodes of the current element
// they will be used to access the neighbors and check if they contain the perforation
collectElementNodes( subRegion, eiInit, nodes );

// if no match is found, enlarge the neighborhood m_searchDepth'th times
for( localIndex d = 0; d < searchDepth; ++d )
{
break;
localIndex nNodes = nodes.size();

// search the reservoir elements that can be accessed from the set "nodes"
// stop if a reservoir element containing the perforation is found
// if not, enlarge the set "nodes"
resElemFound = visitNeighborElements( mesh, location, nodes, elements,
erMatched, esrMatched, eiMatched );
if( resElemFound || nNodes == nodes.size())
{
break;
}
}
}
} );

return resElemFound;
}

Expand Down