Skip to content

Commit

Permalink
Hypoelasticity to HLLC, preliminary features for RMT (update) (#727)
Browse files Browse the repository at this point in the history
Co-authored-by: Sawyer Remillard <sremillard@dt-login03.delta.ncsa.illinois.edu>
Co-authored-by: Sawyer Remillard <sawyer_remillard@brown.edu>
Co-authored-by: Mirelys Carcana Barbosa <mirelys_carcana_barbosa@brown.edu>
Co-authored-by: Nazarii Koval <nkoval@dt-login02.delta.ncsa.illinois.edu>
Co-authored-by: Nazarii Koval <nkoval@dt-login04.delta.ncsa.illinois.edu>
Co-authored-by: mcarcana <142601371+mcarcana@users.noreply.github.com>
Co-authored-by: Avery Trevino <atrevino1@dt-login04.delta.ncsa.illinois.edu>
Co-authored-by: Ben Wilfong <48168887+wilfonba@users.noreply.github.com>
Co-authored-by: Spencer Bryngelson <sbryngelson@gmail.com>
Co-authored-by: wilfonba <bwilfong3@gatech.edu>
  • Loading branch information
11 people authored Dec 20, 2024
1 parent 108805c commit 10b2209
Show file tree
Hide file tree
Showing 75 changed files with 5,378 additions and 939 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/lint-source.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,5 @@ jobs:

- name: No double precision intrinsics
run: |
! grep -iR 'dexp\|dlog\|dble\|dabs\|double\ precision\|real(8)\|real(4)\|dprod\|dmin\|dmax\|dfloat\|dreal\|dcos\|dsin\|dtan\|dsign\|dtanh\|dsinh\|dcosh\|\.d0\|\dd0' --exclude-dir=syscheck ./src/*
! grep -iR 'dsqrt\|dexp\|dlog\|dble\|dabs\|double\ precision\|real(8)\|real(4)\|dprod\|dmin\|dmax\|dfloat\|dreal\|dcos\|dsin\|dtan\|dsign\|dtanh\|dsinh\|dcosh\|d0' --exclude-dir=syscheck --exclude="*nvtx*" ./src/*
21 changes: 5 additions & 16 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,32 +67,21 @@ jobs:
- name: Setup Ubuntu (Intel)
if: matrix.os == 'ubuntu' && matrix.intel == true
run: |
sudo apt update -y
sudo apt install -y tar wget make cmake python3 python3-dev
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
rm GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
sudo echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo add-apt-repository "deb https://apt.repos.intel.com/oneapi all main"
sudo apt-get update
sudo apt-get install -y intel-oneapi-common-vars intel-oneapi-compiler-fortran-2022.1.0 intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic-2022.1.0 intel-oneapi-mkl-2021.4.0 intel-oneapi-mpi-2021.7.1 intel-oneapi-mpi-devel-2021.7.1
sudo apt-get install -y intel-oneapi-compiler-fortran intel-oneapi-mpi intel-oneapi-mpi-devel
source /opt/intel/oneapi/setvars.sh
echo "CXX=$(which icpc)" >> $GITHUB_ENV
echo "CC=$(which icc)" >> $GITHUB_ENV
echo "FC=$(which ifort)" >> $GITHUB_ENV
echo "OMPI_FC=$(which ifort)" >> $GITHUB_ENV
echo "OMPI_CXX=$(which icpc)" >> $GITHUB_ENV
echo "OMPI_MPICC=$(which icc)" >> $GITHUB_ENV
echo "MPI_HOME=/opt/intel/oneapi/mpi/2021.7.1/" >> $GITHUB_ENV
echo "I_MPI_ROOT=/opt/intel/oneapi/mpi/2021.7.1/" >> $GITHUB_ENV
printenv >> $GITHUB_ENV
- name: Build
run: |
if [ '${{ matrix.intel }}' == 'true' ]; then . /opt/intel/oneapi/setvars.sh; fi
/bin/bash mfc.sh build -j $(nproc) --${{ matrix.debug }} --${{ matrix.mpi }} --${{ matrix.precision }}
- name: Test
run: |
if [ '${{ matrix.intel }}' == 'true' ]; then . /opt/intel/oneapi/setvars.sh; fi
/bin/bash mfc.sh test --max-attempts 3 -j $(nproc) $OPT1 $OPT2
env:
OPT1: ${{ matrix.mpi == 'mpi' && '--test-all' || '' }}
Expand Down Expand Up @@ -142,4 +131,4 @@ jobs:
if: always()
with:
name: logs-${{ strategy.job-index }}-${{ matrix.device }}
path: test-${{ matrix.device }}.out
path: test-${{ matrix.device }}.out
1 change: 1 addition & 0 deletions benchmarks/hypo_hll/case.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@

# Turning on Hypoelasticity ================================
'hypoelasticity' : 'T',
'fd_order' : 4,
# ==========================================================

# Formatted Database Files Structure Parameters ============
Expand Down
125 changes: 63 additions & 62 deletions benchmarks/ibm/case.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,101 +35,102 @@

# Configuring case dictionary
print(json.dumps({
# Logistics ================================================
'run_time_info' : 'F',
# Logistics ================================================
'run_time_info' : 'F',
# ==========================================================

# Computational Domain Parameters ==========================
'x_domain%beg' : 0.E+00,
'x_domain%end' : 1.E+00,
'x_domain%beg' : 0.E+00,
'x_domain%end' : 1.E+00,
'y_domain%beg' : 0,
'y_domain%end' : 0.5,
'z_domain%beg' : 0.,
'z_domain%end' : 0.5,
'm' : Nx,
'n' : Ny,
'p' : Nz,
'dt' : mydt,
't_step_start' : 0,
'z_domain%end' : 0.5,
'm' : Nx,
'n' : Ny,
'p' : Nz,
'dt' : mydt,
't_step_start' : 0,
't_step_stop' : int(20*(95*size + 5)),
't_step_save' : int(20*(95*size + 5)),
# ==========================================================
# ==========================================================

# Simulation Algorithm Parameters ==========================
'num_patches' : 2,
'model_eqns' : 2,
'alt_soundspeed' : 'F',
'num_fluids' : 1,
'mpp_lim' : 'F',
'mixture_err' : 'F',
'time_stepper' : 3,
'weno_order' : 5,
'num_patches' : 2,
'model_eqns' : 2,
'alt_soundspeed' : 'F',
'num_fluids' : 1,
'mpp_lim' : 'F',
'mixture_err' : 'F',
'time_stepper' : 3,
'weno_order' : 5,
'weno_eps' : 1.E-16,
'weno_Re_flux' : 'F',
'weno_Re_flux' : 'F',
'weno_avg' : 'F',
'mapped_weno' : 'F',
'null_weights' : 'F',
'mp_weno' : 'F',
'riemann_solver' : 1,
'wave_speeds' : 1,
'avg_state' : 2,
'bc_x%beg' : -3,
'mapped_weno' : 'F',
'null_weights' : 'F',
'mp_weno' : 'F',
'riemann_solver' : 1,
'wave_speeds' : 1,
'avg_state' : 2,
'bc_x%beg' : -3,
'bc_x%end' : -3,
'bc_y%beg' : -3,
'bc_y%end' : -3,
'bc_z%beg' : -3,
'bc_z%end' : -3,
'bc_z%end' : -3,
# ==========================================================

# Turning on Hypoelasticity ================================
'hypoelasticity' : 'T',
'hypoelasticity' : 'T',
'fd_order' : 4,
# ==========================================================

# Formatted Database Files Structure Parameters ============
'format' : 1,
'precision' : 2,
'prim_vars_wrt' :'T',
'parallel_io' :'T',
# ==========================================================
# Patch 1 L ================================================
'patch_icpp(1)%geometry' : 9,
'patch_icpp(1)%x_centroid' : 0.25,
'format' : 1,
'precision' : 2,
'prim_vars_wrt' :'T',
'parallel_io' :'T',
# ==========================================================

# Patch 1 L ================================================
'patch_icpp(1)%geometry' : 9,
'patch_icpp(1)%x_centroid' : 0.25,
'patch_icpp(1)%y_centroid' : 0.25,
'patch_icpp(1)%z_centroid' : 0.25,
'patch_icpp(1)%z_centroid' : 0.25,
'patch_icpp(1)%length_x' : 0.5,
'patch_icpp(1)%length_y' : 0.5,
'patch_icpp(1)%length_z' : 0.5,
'patch_icpp(1)%vel(1)' : 0.0,
'patch_icpp(1)%length_z' : 0.5,
'patch_icpp(1)%vel(1)' : 0.0,
'patch_icpp(1)%vel(2)' : 0,
'patch_icpp(1)%vel(3)' : 0,
'patch_icpp(1)%pres' : 1.E+8,
'patch_icpp(1)%alpha_rho(1)' : 1000,
'patch_icpp(1)%alpha(1)' : 1.,
'patch_icpp(1)%tau_e(1)' : 0.0,
'patch_icpp(1)%vel(3)' : 0,
'patch_icpp(1)%pres' : 1.E+8,
'patch_icpp(1)%alpha_rho(1)' : 1000,
'patch_icpp(1)%alpha(1)' : 1.,
'patch_icpp(1)%tau_e(1)' : 0.0,
# ==========================================================

# Patch 2 R ================================================
'patch_icpp(2)%geometry' : 9,
'patch_icpp(2)%geometry' : 9,
'patch_icpp(2)%x_centroid' : 0.75,
'patch_icpp(2)%y_centroid' : 0.25,
'patch_icpp(2)%z_centroid' : 0.25,
'patch_icpp(2)%length_x' : 0.5,
'patch_icpp(2)%z_centroid' : 0.25,
'patch_icpp(2)%length_x' : 0.5,
'patch_icpp(2)%length_y' : 0.5,
'patch_icpp(2)%length_z' : 0.5,
'patch_icpp(2)%vel(1)' : 0,
'patch_icpp(2)%length_z' : 0.5,
'patch_icpp(2)%vel(1)' : 0,
'patch_icpp(2)%vel(2)' : 0,
'patch_icpp(2)%vel(3)' : 0,
'patch_icpp(2)%pres' : 1.E+05,
'patch_icpp(2)%alpha_rho(1)' : 1000,
'patch_icpp(2)%alpha(1)' : 1.,
'patch_icpp(2)%tau_e(1)' : 0.0,
'patch_icpp(2)%vel(3)' : 0,
'patch_icpp(2)%pres' : 1.E+05,
'patch_icpp(2)%alpha_rho(1)' : 1000,
'patch_icpp(2)%alpha(1)' : 1.,
'patch_icpp(2)%tau_e(1)' : 0.0,
# ==========================================================

# Fluids Physical Parameters ===============================
'fluid_pp(1)%gamma' : 1.E+00/(4.4E+00-1.E+00),
'fluid_pp(1)%pi_inf' : 4.4E+00*6.E+08/(4.4E+00 - 1.E+00),
'fluid_pp(1)%G' : 10E+09,
'fluid_pp(1)%gamma' : 1.E+00/(4.4E+00-1.E+00),
'fluid_pp(1)%pi_inf' : 4.4E+00*6.E+08/(4.4E+00 - 1.E+00),
'fluid_pp(1)%G' : 10E+09,
# ==========================================================
}))
# ==============================================================================
Loading

0 comments on commit 10b2209

Please sign in to comment.