Håkon Hægland
f867f9a977
Cleanup after rebase on master
...
After rebasing on master some changes to AdaptiveTimeStepping.hpp and
AdaptiveTimeStepping_impl.hpp were missed
2025-01-17 22:06:22 +01:00
Håkon Hægland
ac7e77bedb
Remove duplicate headers
2025-01-17 22:06:22 +01:00
Håkon Hægland
18a03da1a8
Add doxygen comments
...
Convert comment blocks into doxygen type comments
2025-01-17 22:06:22 +01:00
Håkon Hægland
dfbafd9b23
Clearify that errhandler is a handle
...
It is safe to free the error handler after MPI_Comm_set_errhandler()
has been called
2025-01-17 22:06:22 +01:00
Håkon Hægland
46406a24d6
Use Dune::MPITraits to determine MPI datatype
...
Determine size of std::size_t correctly for all platforms using
Dune::MPITraits<std::size_t>::getType()
2025-01-17 22:06:22 +01:00
Håkon Hægland
89dc1930ef
Mark GRUPSLAV and GRUPMAST as unsupported
...
Don't remove these entries from the map before reservoir coupling is
completely supported.
2025-01-17 22:06:22 +01:00
Håkon Hægland
407424544e
Fix typo in Equinor ASA
2025-01-17 22:06:22 +01:00
Håkon Hægland
8da3c203f3
Do not check return values for MPI calls
...
The custom error handlers for each slave-master communicator will
handle errors in MPI_Recv() and MPI_Send() and eventually call
MPI_Abort(). So there is no need to check return values for these
MPI calls.
2025-01-17 22:06:22 +01:00
Håkon Hægland
afab98a5a4
Clarify how the timestep is selected
...
Clarify how the master timestep is computed based on the slaves next
report date or the slaves start date.
2025-01-17 22:06:22 +01:00
Håkon Hægland
00be5ed47e
Conversion of std::time_t to double
...
Clarify the limits for conversion of std::time_t to double
2025-01-17 22:06:22 +01:00
Håkon Hægland
879fa72ce8
Eliminate TimePoint class
...
Make fuzzy comparison between two dates explicit.
2025-01-17 22:06:22 +01:00
Håkon Hægland
5ae50c90e1
Simplify storage of communicators
...
We don't need unique ptrs for the communicators. These are just simple
integers that can be copied into a std::vector.
2025-01-17 22:06:22 +01:00
Håkon Hægland
402bb85103
Enable building without MPI
2025-01-17 22:06:19 +01:00
Håkon Hægland
943d7fc2ce
Enable start at any report step
...
Enable master and slaves to start at any report step. In the previous
commits, only first report step was supported.
2025-01-17 22:05:12 +01:00
Håkon Hægland
48856f9f46
Timestepping for reservoir coupling
...
Implement adaptive time stepping for master and slave procesess
when using reservoir coupling. The original adaptive time stepping method
is refactored at the same time.
2025-01-17 22:04:17 +01:00
Håkon Hægland
9ad5b8a7f2
Rebased, and fixed command line parsing
...
Create one log file for each slave subprocess. Redirect both
stdout and stderr to this file
2025-01-17 22:04:17 +01:00
Håkon Hægland
09aa0be11c
Send slave start dates to master
2025-01-17 22:04:17 +01:00
Håkon Hægland
e47c89832d
Rebased, and fixed command line parsing
...
Create one log file for each slave subprocess. Redirect both
stdout and stderr to this file
2025-01-17 22:04:17 +01:00
Håkon Hægland
7dfc25048c
Add missing header files
2025-01-17 22:04:17 +01:00
Håkon Hægland
d4855b08e1
Check if MPI is enabled
...
Exclude the reservoir coupling stuff if MPI is not enabled
2025-01-17 22:04:15 +01:00
Håkon Hægland
864b55f99b
Rebased, and fixed command line parsing
...
Create one log file for each slave subprocess. Redirect both
stdout and stderr to this file
2025-01-17 22:03:13 +01:00
Håkon Hægland
5dfbf50b7d
Remove debug code
...
Remove debug code that was introduced by mistake in the previous commit
2025-01-17 22:01:13 +01:00
Håkon Hægland
ef62ea7a7d
Add missing header files
2025-01-17 22:01:13 +01:00
Håkon Hægland
097f951557
Improved comments
2025-01-17 22:01:13 +01:00
Håkon Hægland
dffe282bf0
Redirect slave standard output to a logfile
2025-01-17 22:01:13 +01:00
Håkon Hægland
e58ada1e76
Copy command line parameters from master
...
Copy command line parameters from master to slave command line. Also
replace data file name in master argv with data file name of the slave.
2025-01-17 22:01:13 +01:00
Håkon Hægland
71d06c5bdb
Pass parameter --slave=true to the slaves
2025-01-17 22:01:13 +01:00
Håkon Hægland
ba7c1d589b
Open MPI does not support output redirection
...
Open MPI does not support output redirection for spawned child
processes.
2025-01-17 22:01:13 +01:00
Håkon Hægland
bf5962061a
Do not specify program name twice
...
Do not specify slave program name twice when launching slave process
2025-01-17 22:01:13 +01:00
Håkon Hægland
4fd225c004
Spawn slaves from master
2025-01-17 22:01:11 +01:00
Arne Morten Kvarving
6aef3ee2f1
Transmissibility::update(): use lambdas to reduce code duplication
2025-01-17 16:55:24 +01:00
Arne Morten Kvarving
efae526ae5
Transmissibility::applyMultipliers: use FaceDir::FromIntersectionIndex
2025-01-17 16:55:24 +01:00
Arne Morten Kvarving
2dda16bc71
Transmissibility::applyAllZMultipliers: simplify by passing FaceInfo structs
2025-01-17 16:55:24 +01:00
Arne Morten Kvarving
637bd7a1c4
Transmissibility::applyNtg_: increase readbility, no reason for using a switch
2025-01-17 16:55:24 +01:00
Arne Morten Kvarving
68dfd12a3c
Transmissibility::applyNtg_: simplify by passing FaceInfo struct
...
and make it static
2025-01-17 16:55:24 +01:00
Arne Morten Kvarving
6c292a9d4a
Transmissibility::computeFaceProperties: simplify by passing FaceInfo structs
2025-01-17 16:55:24 +01:00
Arne Morten Kvarving
81de485575
Transmissibility: introduce a FaceInfo struct
...
use this to group variables in ::update()
2025-01-17 16:55:23 +01:00
Arne Morten Kvarving
e10531513a
Transmissibility::update: add faceIdxDir lambda function
...
short loop increases readability
2025-01-17 16:54:59 +01:00
Arne Morten Kvarving
2197a1ea7c
Transmissibility::update: extract calculation of harmonic mean to a lambda
2025-01-17 16:54:59 +01:00
Arne Morten Kvarving
50c5369c39
Transmissibility::computeHalfDiffusivity_: use return value instead of out-param
...
and make it static
2025-01-17 16:54:59 +01:00
Arne Morten Kvarving
9ce9fe49f2
Transmissibility::computeHalfTrans_: use return value instead of out-param
...
and make it static
2025-01-17 16:54:59 +01:00
Arne Morten Kvarving
3695ea8b0b
Transmissibility::update(): use Dune::intersections() range generator
2025-01-17 16:54:58 +01:00
Arne Morten Kvarving
a9787f23f7
Transmissibility:update: replace operator[] with insert_or_assign()
2025-01-17 16:54:17 +01:00
Arne Morten Kvarving
471eeb1004
cosmetics
2025-01-17 16:54:17 +01:00
Atgeirr Flø Rasmussen
41524e3cca
Merge pull request #5889 from atgeirr/use-createthreaditerators
...
Use the createThreadIterators() utility.
2025-01-17 13:53:21 +01:00
Markus Blatt
2bbf48c39c
Merge pull request #5856 from michal-toth/bugfix/thread-spawn
...
Bugfix/thread spawn
2025-01-16 17:12:26 +01:00
Atgeirr Flø Rasmussen
bdf825e785
Merge pull request #5888 from akva2/transmissibility_centroids_cache
...
Transmissibility: add a cache for centroids and use this in update()
2025-01-16 14:13:50 +01:00
Atgeirr Flø Rasmussen
c06d89b068
Use the createThreadIterators() utility.
2025-01-16 13:56:19 +01:00
Svenn Tveit
db18a9b4ea
Fix whitespace after rebase
2025-01-16 13:49:45 +01:00
Svenn Tveit
96ccc8cb96
Accommodate for implemnetation of generic cubic EOS
...
Which EOS formulation to use is set in the deck and passed to the flash solver and parameter cache
2025-01-16 13:29:41 +01:00