Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into presGradient
Browse files Browse the repository at this point in the history
  • Loading branch information
frankfeifan committed Apr 30, 2024
2 parents c47db26 + d84a7e1 commit a803a65
Show file tree
Hide file tree
Showing 374 changed files with 11,840 additions and 6,377 deletions.
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"build": {
"dockerfile": "Dockerfile",
"args": {
"GEOS_TPL_TAG": "256-147"
"GEOS_TPL_TAG": "263-252"
}
},
"runArgs": [
Expand Down
2 changes: 2 additions & 0 deletions .devcontainer/postCreateCommand.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,5 @@
git submodule init
git submodule deinit integratedTests
git submodule update
# Load the pretty printer for LvArray
echo "source /workspaces/GEOS/src/coreComponents/LvArray/scripts/gdb-printers-shallow.py" > ~/.gdbinit
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
groups:
# open a single pull-request for all GitHub actions updates
github-actions:
patterns:
- '*'
38 changes: 28 additions & 10 deletions .github/workflows/build_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,15 @@ jobs:
build_test_deploy:
runs-on: ${{ inputs.RUNS_ON }}
steps:
- name: 'Cleanup build folder'
run: |
pwd
echo "cleaning ${GITHUB_WORKSPACE}"
ls -la ./
rm -rf ./* ./.*|| true
echo "expecting ${GITHUB_WORKSPACE} to be empty"
ls -la ./
- name: Checkout Repository
uses: actions/[email protected]
with:
Expand Down Expand Up @@ -103,9 +112,9 @@ jobs:
script_args+=(--data-basename ${DATA_BASENAME})
DATA_EXCHANGE_DIR=/mnt/geos-exchange # Exchange folder outside of the container
DATA_EXCHANGE_DIR=${GITHUB_WORKSPACE}/geos-exchange # Exchange folder outside of the container
if [ ! -d "${DATA_EXCHANGE_DIR}" ]; then
sudo mkdir -p ${DATA_EXCHANGE_DIR}
mkdir -p ${DATA_EXCHANGE_DIR}
fi
DATA_EXCHANGE_MOUNT_POINT=/tmp/exchange # Exchange folder inside of the container
docker_args+=(--volume=${DATA_EXCHANGE_DIR}:${DATA_EXCHANGE_MOUNT_POINT})
Expand All @@ -119,7 +128,7 @@ jobs:
script_args+=(--sccache-credentials $(basename ${GOOGLE_GHA_CREDS_PATH}))
fi
if [ ${{ inputs.RUNS_ON }} == 'self-hosted' ]; then
if [ ${{ inputs.RUNS_ON }} == 'streak' ] || [ ${{ inputs.RUNS_ON }} == 'streak2' ]; then
RUNNER_CERTIFICATES_DIR=/etc/pki/ca-trust/source/anchors/
mkdir -p ${GITHUB_WORKSPACE}/certificates
cp ${RUNNER_CERTIFICATES_DIR}/*.crt* ${GITHUB_WORKSPACE}/certificates
Expand Down Expand Up @@ -169,7 +178,7 @@ jobs:
-h=`hostname` \
${{ inputs.DOCKER_REPOSITORY }}:${{ inputs.DOCKER_IMAGE_TAG }} \
${GITHUB_WORKSPACE_MOUNT_POINT}/scripts/ci_build_and_test_in_container.sh \
${script_args[@]}
${script_args[@]}
EXIT_STATUS=$?
echo "Received exit status ${EXIT_STATUS} from the build process."
set -e
Expand All @@ -181,11 +190,11 @@ jobs:
echo "Download the bundle at https://storage.googleapis.com/${{ inputs.GCP_BUCKET }}/${DATA_BASENAME}"
fi
fi
# Remove the container and the workspace to avoid any conflict with the next run.
echo github.workspace = ${{ github.workspace }}
#rm -rf ${{ github.workspace }}/*
#docker rm -f ${CONTAINER_NAME}
# manually remove the workspace to avoid issues with the next job when using self-hosted runners
if [ -d "${GITHUB_WORKSPACE}/integratedTests" ]; then
rm -rf ${GITHUB_WORKSPACE}/integratedTests
fi
exit ${EXIT_STATUS}
Expand All @@ -196,4 +205,13 @@ jobs:
files: geos_coverage.info.cleaned
fail_ci_if_error: true
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

- name: 'Cleanup build folder'
run: |
pwd
echo "cleaning ${GITHUB_WORKSPACE}"
ls -la ./
rm -rf ./* ./.*|| true
echo "expecting ${GITHUB_WORKSPACE} to be empty"
ls -la ./
22 changes: 14 additions & 8 deletions .github/workflows/ci_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,19 +124,19 @@ jobs:
fail-fast : false
matrix:
include:
- name: Ubuntu (20.04, gcc 9.3.0, open-mpi 4.0.3)
- name: Ubuntu (20.04, gcc 9.4.0, open-mpi 4.0.3)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc9

- name: Ubuntu debug (20.04, gcc 10.3.0, open-mpi 4.0.3) - github codespaces
- name: Ubuntu debug (20.04, gcc 10.5.0, open-mpi 4.0.3) - github codespaces
CMAKE_BUILD_TYPE: Debug
DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc10

- name: Ubuntu (20.04, gcc 10.3.0, open-mpi 4.0.3) - github codespaces
- name: Ubuntu (20.04, gcc 10.5.0, open-mpi 4.0.3) - github codespaces
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc10

- name: Ubuntu (22.04, gcc 11.2.0, open-mpi 4.1.2)
- name: Ubuntu (22.04, gcc 11.4.0, open-mpi 4.1.2)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc11
ENABLE_HYPRE: ON
Expand All @@ -149,6 +149,12 @@ jobs:
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF

- name: Ubuntu (22.04, clang 15.0.7, open-mpi 4.1.2)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu22.04-clang15
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF

- name: Pecan CPU (centos 7.7, gcc 8.2.0, open-mpi 4.0.1, mkl 2019.5)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/pecan-cpu-gcc8.2.0-openmpi4.0.1-mkl2019.5
Expand Down Expand Up @@ -200,7 +206,8 @@ jobs:
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GCP_BUCKET: geosx/integratedTests
RUNS_ON: ubuntu-22.04
RUNS_ON: streak2
DOCKER_RUN_ARGS: "--cpus=32 --memory=384g"

code_coverage:
needs:
Expand Down Expand Up @@ -246,9 +253,8 @@ jobs:
ENABLE_HYPRE_DEVICE: CUDA
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
RUNS_ON: self-hosted
DOCKER_RUN_ARGS: "--cpus=8 --memory=128g --runtime=nvidia --gpus all"

RUNS_ON: streak
DOCKER_RUN_ARGS: "--cpus=8 --memory=256g --runtime=nvidia --gpus all"

- name: Centos (7.7, gcc 8.3.1, open-mpi 1.10.7, cuda 11.8.89)
BUILD_AND_TEST_CLI_ARGS: "--no-run-unit-tests --no-install-schema"
Expand Down
4 changes: 0 additions & 4 deletions host-configs/apple/macOS_Matteo.cmake

This file was deleted.

7 changes: 7 additions & 0 deletions host-configs/apple/macOS_customized.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
set( HOMEBREW_DIR $ENV{HOMEBREW_DIR} )
set( CONFIG_NAME $ENV{GEOS_CONFIG_NAME} )

set(Python3_ROOT_DIR $ENV{GEOS_PYTHON_DIR} CACHE PATH "")
set(Python3_EXECUTABLE ${Python3_ROOT_DIR}/bin/python3 CACHE PATH "")

include(${CMAKE_CURRENT_LIST_DIR}/macOS_base.cmake)
8 changes: 8 additions & 0 deletions host-configs/tpls.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,14 @@
#
message("in tpls.cmake GEOSX_TPL_DIR=${GEOSX_TPL_DIR}")

#
# General TPL Folder verifications
#
if(NOT EXISTS ${GEOSX_TPL_DIR})
message(WARNING "'GEOSX_TPL_DIR' does not exist.\n")
endif()


if(EXISTS ${GEOSX_TPL_DIR}/raja)
set(RAJA_DIR ${GEOSX_TPL_DIR}/raja CACHE PATH "" FORCE)
endif()
Expand Down
196 changes: 196 additions & 0 deletions inputFiles/compositionalMultiphaseFlow/4comp_2ph_cap_1d_upwind.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
<?xml version="1.0" ?>

<Problem>
<Solvers gravityVector="{0.38268, 0., -0.92388}">
<CompositionalMultiphaseFVM
name="compflow"
logLevel="1"
discretization="fluidTPFA"
targetRegions="{ Region1 }"
temperature="297.15">
<NonlinearSolverParameters
newtonTol="5e-4"
lineSearchAction="None"
newtonMaxIter="15"/>
<LinearSolverParameters
directParallel="0"/>
</CompositionalMultiphaseFVM>
</Solvers>

<Mesh>
<InternalMesh
name="mesh1"
elementTypes="{ C3D8 }"
xCoords="{ 0, 100 }"
yCoords="{ 0, 1 }"
zCoords="{ 0, 1 }"
nx="{ 100 }"
ny="{ 1 }"
nz="{ 1 }"
cellBlockNames="{ block1 }"/>
</Mesh>


<Geometry>
<Box
name="source"
xMin="{ -0.01, -0.01, -0.01 }"
xMax="{ 1.01, 1.01, 1.01 }"/>
</Geometry>

<Events
maxTime="1.0368e8">
<PeriodicEvent
name="outputs"
timeFrequency="1.728e6"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="solverApplications1"
forceDt="1.728e6"
target="/Solvers/compflow"/>

<PeriodicEvent
name="restarts"
timeFrequency="3e7"
targetExactTimestep="0"
target="/Outputs/restartOutput"/>
</Events>

<NumericalMethods>
<FiniteVolume>
<TwoPointFluxApproximation
name="fluidTPFA"
upwindingScheme="IHU"
/>
</FiniteVolume>
</NumericalMethods>

<ElementRegions>
<CellElementRegion
name="Region1"
cellBlocks="{ block1 }"
materialList="{ fluid1, rock, relperm, cappres }"/>
</ElementRegions>

<Constitutive>
<DeadOilFluid
name="fluid1"
phaseNames="{ gas, oil }"
surfaceDensities="{ 100.0, 1000.0 }"
componentMolarWeight="{ 16e-3, 114e-3 }"
tableFiles="{ pvdg_m.txt, pvdo_m.txt}"/>


<CompressibleSolidConstantPermeability
name="rock"
solidModelName="nullSolid"
porosityModelName="rockPorosity"
permeabilityModelName="rockPerm"/>

<NullModel
name="nullSolid"/>

<PressurePorosity
name="rockPorosity"
defaultReferencePorosity="0.2"
referencePressure="0.0"
compressibility="1.0e-9"/>

<BrooksCoreyRelativePermeability
name="relperm"
phaseNames="{ gas, oil }"
phaseMinVolumeFraction="{ 0.0, 0.0 }"
phaseRelPermExponent="{ 2.0, 2.5 }"
phaseRelPermMaxValue="{ 0.9, 0.9 }"/>

<BrooksCoreyCapillaryPressure
name="cappres"
phaseNames="{ gas, oil }"
phaseMinVolumeFraction="{ 0.0, 0.0 }"
phaseCapPressureExponentInv="{ 4 , 0 }"
phaseEntryPressure="{ 0.75e6, 0 }"
capPressureEpsilon="1e-8"/>

<ConstantPermeability
name="rockPerm"
permeabilityComponents="{ 1.0e-13, 1.0e-13, 1.0e-13 }"/>
</Constitutive>

<FieldSpecifications>
<!-- Initial pressure: ~5 bar -->
<FieldSpecification
name="initialPressure"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1/block1"
fieldName="pressure"
scale="7.5e6"/>

<FieldSpecification
name="initialComposition_gas"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1/block1"
fieldName="globalCompFraction"
component="0"
functionName="initial_gas"
scale="1"/>

<FieldSpecification
name="initialComposition_oil"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1/block1"
fieldName="globalCompFraction"
component="1"
functionName="initial_oil"
scale="1"/>

<FieldSpecification
name="sourceTermPressure"
objectPath="ElementRegions/Region1/block1"
fieldName="pressure"
scale="1e7"
setNames="{ source }"/>

<FieldSpecification
name="sourceTermComposition_oil"
setNames="{ source }"
objectPath="ElementRegions/Region1/block1"
fieldName="globalCompFraction"
component="1"
scale="0.1"/>

<FieldSpecification
name="sourceTermComposition_gas"
setNames="{ source }"
objectPath="ElementRegions/Region1/block1"
fieldName="globalCompFraction"
component="0"
scale="0.9"/>

<!-- Initial composition: no water, only heavy hydrocarbon components and N2 -->
</FieldSpecifications>

<Functions>
<TableFunction name="initial_gas"
inputVarNames="{elementCenter}"
coordinates="{0.0, 35., 36.}"
values="{0.9, 0.9, 0.1}"
/>
<TableFunction name="initial_oil"
inputVarNames="{elementCenter}"
coordinates="{0.0, 35. , 36.}"
values="{0.9, 0.9, .1}"
/>
</Functions>

<Outputs>
<VTK
name="vtkOutput"/>

<Restart
name="restartOutput"/>
</Outputs>
</Problem>
Loading

0 comments on commit a803a65

Please sign in to comment.