Commit Graph

1312 Commits

Author SHA1 Message Date
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
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
Markus Blatt
2bbf48c39c
Merge pull request #5856 from michal-toth/bugfix/thread-spawn
Bugfix/thread spawn
2025-01-16 17:12:26 +01:00
Arne Morten Kvarving
9a97bf41c5 Transmissibility: add a cache for centroids and use this in update()
The loops repeatedly calls distanceVector which recalculates
the centroid for a cell. This is not a trivial calculation
2025-01-16 11:53:09 +01:00
Atgeirr Flø Rasmussen
635d7d77dd
Merge pull request #5862 from GitPaean/simplying_flash_usage
adapting to the interface change for PTFlash::solve()
2025-01-16 10:59:48 +01:00
Michal Tóth
66b353d8ee Remove one extraneous registration of ThreadsPerProcess parameter 2025-01-15 16:53:06 +01:00
Michal Tóth
47c44862ab Remove false-positive warning with OMP_NUM_THREADS. 2025-01-15 16:51:45 +01:00
Kai Bao
2a86950959 refactoring initial() function in FlowProblemComp
We should be able to initialize from either ZMF or XMF and YMF
initialization.
2025-01-15 16:40:10 +01:00
David Landa Marban
74d6ac18af Skip allocTrans when enableEclOutput is False and 2025-01-15 15:56:55 +01:00
Michal Tóth
c3489c5e62 Make 2 threads default and fix -1 for automatic 2025-01-15 12:09:03 +01:00
Arne Morten Kvarving
dcd739fa09 BlackoilModel: add impl file 2025-01-15 11:51:39 +01:00
Bård Skaflestad
5df8c8b2a7
Merge pull request #5885 from akva2/simulatorfullyimplicitblackoil_param_tu
SimulatorFullyImplicitBlackoil: move parameter registration to TU
2025-01-15 10:46:39 +01:00
Bård Skaflestad
95aa6599a8
Merge pull request #5884 from akva2/damaris_param_tu
Damaris: move some more code to TU
2025-01-15 10:45:54 +01:00
Bård Skaflestad
3cb1f16e05
Merge pull request #5883 from akva2/flowproblem_param_generic
FlowProblem: move some more code to FlowGenericProblem
2025-01-15 10:44:48 +01:00
Arne Morten Kvarving
d1c9c040ce SimulatorFullyImplicitBlackoil: move parameter registration to TU 2025-01-15 09:58:54 +01:00
Arne Morten Kvarving
512263110c OutputBlackoilModule: move some more code to GenericOutputBlackoilModule
typetag less parameter system now allows us to initialize these variables
in class that holds them.
2025-01-15 09:18:33 +01:00
Arne Morten Kvarving
ef176d4b5c Damaris: move some more code to TU
possible with typetag less parameter system
2025-01-15 09:14:17 +01:00
Arne Morten Kvarving
f7cfa7a04b FlowProblem: move some more code to FlowGenericProblem
typetag less parameter system now allows us to initialize these variables
in class that holds them.
2025-01-15 08:40:48 +01:00
Michal Tóth
5ba8e87f55 Uncomment OpmLog warning 2025-01-14 16:42:31 +01:00
Bård Skaflestad
6438f120ed
Merge pull request #5871 from akva2/blackoilmodel_penalty_card
BlackoilModel: move to has-a instead of is-a modelling of penalty cards
2025-01-14 15:56:47 +01:00
Arne Morten Kvarving
cee75a152a FlowBaseVanguard: move some more code to FlowGenericVanguard
typetag less parameter system now allows us to initialize these variables
in class that holds them.
2025-01-14 13:44:44 +01:00
Arne Morten Kvarving
15cb87576c SimulatorConvergenceOutput: move to separate class
model using has-a in SimulatorFullyImplicitBlackoil
2025-01-14 10:24:53 +01:00
Michal Tóth
eb782d9ae2 Set maximum threads immediately after parsing paramteres. Remove hotfix. 2025-01-14 09:56:10 +01:00
Michal Tóth
f267df98b4 Avoid repeated rewriting. 2025-01-14 09:56:10 +01:00