mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Performance: Added OpenMP to mock models
This commit is contained in:
parent
c0c78c8ada
commit
e47f2e6317
@ -135,10 +135,14 @@ void RigReservoirBuilderMock::appendCubeNodes(const cvf::Vec3d& min, const cvf::
|
|||||||
void RigReservoirBuilderMock::appendCells(size_t nodeStartIndex, size_t cellCount, RigGridBase* hostGrid, std::vector<RigCell>& cells)
|
void RigReservoirBuilderMock::appendCells(size_t nodeStartIndex, size_t cellCount, RigGridBase* hostGrid, std::vector<RigCell>& cells)
|
||||||
{
|
{
|
||||||
size_t activeCellIndex = 0;
|
size_t activeCellIndex = 0;
|
||||||
size_t i;
|
long long i;
|
||||||
for (i = 0; i < cellCount; i++)
|
|
||||||
|
cells.resize(cellCount);
|
||||||
|
|
||||||
|
#pragma omp parallel for
|
||||||
|
for (i = 0; i < static_cast<long long>(cellCount); i++)
|
||||||
{
|
{
|
||||||
RigCell riCell;
|
RigCell& riCell = cells[i];
|
||||||
|
|
||||||
riCell.setHostGrid(hostGrid);
|
riCell.setHostGrid(hostGrid);
|
||||||
riCell.setCellIndex(i);
|
riCell.setCellIndex(i);
|
||||||
@ -165,8 +169,6 @@ void RigReservoirBuilderMock::appendCells(size_t nodeStartIndex, size_t cellCoun
|
|||||||
riCell.setActiveIndexInMatrixModel(activeCellIndex++);
|
riCell.setActiveIndexInMatrixModel(activeCellIndex++);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
cells.push_back(riCell);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -348,13 +350,15 @@ bool RigReservoirBuilderMock::dynamicResult(RigCaseData* eclipseCase, const QStr
|
|||||||
double scaleValue = 1.0 + resultIndex * 0.1;
|
double scaleValue = 1.0 + resultIndex * 0.1;
|
||||||
double offsetValue = 100 * resultIndex;
|
double offsetValue = 100 * resultIndex;
|
||||||
|
|
||||||
size_t k;
|
values->resize(eclipseCase->mainGrid()->cells().size());
|
||||||
for (k = 0; k < eclipseCase->mainGrid()->cells().size(); k++)
|
|
||||||
|
#pragma omp parallel for
|
||||||
|
for (long long k = 0; k < static_cast<long long>(eclipseCase->mainGrid()->cells().size()); k++)
|
||||||
{
|
{
|
||||||
RigCell& cell = eclipseCase->mainGrid()->cells()[k];
|
RigCell& cell = eclipseCase->mainGrid()->cells()[k];
|
||||||
{
|
{
|
||||||
double val = offsetValue + scaleValue * ( (stepIndex * 1000 + k) % eclipseCase->mainGrid()->cells().size() );
|
double val = offsetValue + scaleValue * ( (stepIndex * 1000 + k) % eclipseCase->mainGrid()->cells().size() );
|
||||||
values->push_back(val);
|
values->at(k) = val;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user