Commit Graph

1480 Commits

Author SHA1 Message Date
Bård Skaflestad
9378991243 Merge pull request #4171 from akva2/bcdata_members
Make related BC data a single class member
2022-10-18 13:56:45 +02:00
Arne Morten Kvarving
83b7aec1f1 changed: do all assembleTracerEquations_() in one call
by looping over the tracer batches. this trades memory
for runtime efficiency as we cannot reuse one matrix
but rather need to have one matrix for each phase
2022-10-18 10:54:57 +02:00
Arne Morten Kvarving
2b2b0b085c changed: avoid updating the whole element context for ghost cells
a small but obvious optimization
2022-10-18 08:43:40 +02:00
Arne Morten Kvarving
70a4cdc66b changed: put well assembly for tracer in separate function 2022-10-18 08:43:40 +02:00
Arne Morten Kvarving
cb9d6566d5 changed: put flux assembly for tracer in separate function 2022-10-18 08:43:40 +02:00
Arne Morten Kvarving
b9c397e1ba changed: put volume assembly for tracer in separate function 2022-10-18 08:43:40 +02:00
Arne Morten Kvarving
2c06152086 changed: do all advanceTracerFields in one call
by looping over the tracer batches
2022-10-18 08:43:40 +02:00
Arne Morten Kvarving
586b88d3ad changed: use BCData struct for freebc 2022-10-17 15:01:27 +02:00
Arne Morten Kvarving
95ab3427e2 initialize nonTrivialBoundaryConditions inline
this way you don't have to read the code to find the
default value
2022-10-17 15:01:27 +02:00
Arne Morten Kvarving
d2a720e40c changed: use a struct for holding BC data
keeps related data as a single class member.
use this for massratebc_
2022-10-17 15:01:27 +02:00
Atgeirr Flø Rasmussen
69f2ede363 Merge pull request #4165 from atgeirr/avoid-useless-call
Do not call assignToSolution() and throw away the result.
2022-10-14 10:31:26 +02:00
Arne Morten Kvarving
a884e3c1d6 ecltracermodel: use elements range generator 2022-10-13 23:01:35 +02:00
Arne Morten Kvarving
7f21bc55b0 eclthresholdpressure: use elements range generator 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
3599e0e5de eclproblem: use elements range generator 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
be84bc16be ecloutputblackoilmodule: use elements range generator 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
f85d388955 eclgenerictracermodel: use elements range generator 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
998cd137a0 ecltransmissibility: use elements and intersections range generators 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
da2c68ee08 eclwriter: use elements range generator 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
0329ce08a7 eclgenericwriter: use elements and intersections range generators 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
50e6ca16d6 eclgenericthresholdpressure: use elements and intersections range generators 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
82b29f113a eclbasevanguard: use elements range generator 2022-10-13 23:00:57 +02:00
Arne Morten Kvarving
a6509fe077 collecttoiorank: use elements range generator 2022-10-13 23:00:57 +02:00
Atgeirr Flø Rasmussen
de12a990aa Do not call assignToSolution() and throw away the result. 2022-10-13 21:42:53 +02:00
Arne Morten Kvarving
ecc36f6ce8 fix cmake handling
- use imported target for linking
- use separate damaris cmake script
- handle HAVE_DAMARIS config variable in the usual way

fixing issues when user does not provide an outputDir via a command_line

avoid adding damaris's command lines when we dont have damaris
2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
b7bc8437e7 Minor fixes and formatting issues addressed. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
c1b3c5e973 Rename option to EnableDamarisOutputCollective. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
2c86a61b70 Remove extra whitespace. 2022-10-13 12:23:06 +02:00
Joshua Bowden
fa7af3540c Changes needed to add Damaris functionality. The current state is that we output the pressure field and we use both HDF5 and parallel HDF5.
Damaris initialization is added after InitMpi but before starting the simulation. Damaris will invoke a separate core for writing in
parallel and leave the rest of cores for the simulator. The main changes are in main where start_damaris and then in eclwriterm where
we use damaris to output the PRESSURE. To test Damaris one can use --enable-damaris-output=true and to use parallel HDF5 one can use
--enable-async-damaris-output=true (false is the default choice)
2022-10-13 12:23:06 +02:00
Bård Skaflestad
ec83f37afa Merge pull request #4147 from akva2/tracer_begin_optimize
Optimize EclTracerModel::updateStorageCache
2022-10-13 10:47:51 +02:00
Markus Blatt
fcc3690832 Added missing include of config.h in cpp files. 2022-10-12 15:28:38 +02:00
Arne Morten Kvarving
89d4798cca changed: do all updateStorageCaches in one call
by looping over the tracer batches.
this avoids initializing the element contexts 3 times for each cell
2022-10-07 13:27:56 +02:00
Arne Morten Kvarving
9a88f56e7d changed: put tracer batches in an array
now we can easily iterate over them
2022-10-07 13:27:56 +02:00
Arne Morten Kvarving
0d1c989a25 simplify updateStorageCache
use the elements() range generator. while at it, fix some cosmetics
2022-10-07 13:27:56 +02:00
Arne Morten Kvarving
2f80274100 changed: only update primary variables in tracer update
no reason to update the extensive quantities
2022-10-07 13:27:56 +02:00
Arne Morten Kvarving
c4e2ffea57 simplify updateProperty_: use elements() range generator 2022-10-05 15:36:22 +02:00
Arne Morten Kvarving
26b8fe01a3 changed: use updateProperty_ in updateCompositionChangeLimits_() 2022-10-05 15:36:19 +02:00
Arne Morten Kvarving
2d33932160 changed: use updateProperty_ in updateMaxPolymerAdsorption_ 2022-10-05 15:31:13 +02:00
Arne Morten Kvarving
0841b2baf4 changed: use updateProperty_ in updateHysteresis_ 2022-10-05 15:28:07 +02:00
Arne Morten Kvarving
f4cd69f422 changed: use updateProperty_ in updateMinPressure_ 2022-10-05 15:25:07 +02:00
Arne Morten Kvarving
80b54a85ad changed: use updateProperty_ in updateMaxWaterSaturation_ 2022-10-05 15:21:52 +02:00
Arne Morten Kvarving
32995d34a1 changed: use updateProperty_ in updateMaxOilSaturation_ 2022-10-05 15:18:49 +02:00
Arne Morten Kvarving
e4fe00413b added: EclProblem::updateProperty_ function
this loops over the grid cells, extracts compressedDofIdx
and intensive quantities and then calls a passed function.
2022-10-05 15:11:49 +02:00
Atgeirr Flø Rasmussen
b9e157e3f5 Bugfix: fix dis/en-abling dissolution in the fluid state.
This affects the gas/water model, which should not have dissolution,
to be consistent with definitions of FluidState and ScalarFluidState
in the BlackOilIntensiveQuantities class.
2022-09-30 10:58:05 +02:00
Bård Skaflestad
3bb35b223c Merge pull request #4119 from atgeirr/refactor-boundary-flux
Refactor boundary flux
2022-09-29 16:21:34 +02:00
Atgeirr Flø Rasmussen
54284fad7f Remove unneeded timeIdx argument. 2022-09-29 14:13:49 +02:00
Atgeirr Flø Rasmussen
04183dea31 Ensure solvent boundary fluxes work.
This does the job for the element-context-based linearizer,
but not for the TpfaLinearizer, which when combined with the
solvent model will require a bit more work for bcs.
2022-09-28 08:47:04 +02:00
Atgeirr Flø Rasmussen
b7758aa706 Use std::array rather than C arrays. 2022-09-28 08:47:04 +02:00
Atgeirr Flø Rasmussen
bc13f57e95 Simplify the boundaryCondition() method. 2022-09-28 08:47:04 +02:00
Atgeirr Flø Rasmussen
5e08a9fc12 Make boundary condition data accessor function. 2022-09-28 08:47:04 +02:00
Atgeirr Flø Rasmussen
68e1479caf [WIP] Refactor calculateBoundaryGradients_()
Not addressing solvent yet.
2022-09-28 08:47:04 +02:00