Skip to content

Commit

Permalink
Merge branch 'development' into fix_transverse_use_eos
Browse files Browse the repository at this point in the history
  • Loading branch information
zingale authored Dec 12, 2024
2 parents f912f68 + 2039f47 commit 24a2f28
Show file tree
Hide file tree
Showing 26 changed files with 139 additions and 61 deletions.
3 changes: 3 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Checks: >
misc-*,
-misc-const-correctness,
-misc-include-cleaner,
-misc-use-internal-linkage,
-misc-non-private-member-variables-in-classes,
-misc-no-recursion,
modernize-*,
Expand All @@ -32,12 +33,14 @@ Checks: >
-readability-avoid-const-params-in-decls,
-readability-braces-around-statements,
-readability-else-after-return,
-readability-enum-initial-value,
-readability-function-cognitive-complexity,
-readability-function-size,
-readability-identifier-length,
-readability-implicit-bool-conversion,
-readability-isolate-declaration,
-readability-magic-numbers,
-readability-math-missing-parentheses,
-readability-named-parameter,
-readability-redundant-inline-specifier,
-readability-redundant-member-init,
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/clang-tidy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ jobs:
- name: Install dependencies
run: |
.github/workflows/dependencies_clang-tidy-apt-llvm.sh 17
.github/workflows/dependencies/dependencies_clang-tidy-apt-llvm.sh 19
- name: Compile flame_wave
run: |
echo $AMREX_HOME
echo $MICROPHYSICS_HOME
cd Exec/science/subchandra
make USE_MPI=FALSE USE_CLANG_TIDY=TRUE CLANG_TIDY=clang-tidy-17 CLANG_TIDY_WARN_ERROR=TRUE -j 4
make USE_MPI=FALSE USE_CLANG_TIDY=TRUE CLANG_TIDY=clang-tidy-19 CLANG_TIDY_WARN_ERROR=TRUE -j 4
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ echo 'export PATH=/opt/rocm/llvm/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/r

# we should not need to export HIP_PATH=/opt/rocm/hip with those installs

sudo apt-get clean
sudo apt-get update

# Ref.: https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html#installing-development-packages-for-cross-compilation
Expand All @@ -56,7 +57,9 @@ sudo apt-get install -y --no-install-recommends \
roctracer-dev \
rocprofiler-dev \
rocrand-dev \
rocprim-dev
rocfft-dev \
rocprim-dev \
rocsparse-dev

# hiprand-dev is a new package that does not exist in old versions
sudo apt-get install -y --no-install-recommends hiprand-dev || true
Expand Down
42 changes: 42 additions & 0 deletions .github/workflows/dependencies/dependencies_nvcc.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
#!/usr/bin/env bash
#
# Copyright 2020-2022 Axel Huebl
#
# License: BSD-3-Clause-LBNL

set -eu -o pipefail

# `man apt.conf`:
# Number of retries to perform. If this is non-zero APT will retry
# failed files the given number of times.
echo 'Acquire::Retries "3";' | sudo tee /etc/apt/apt.conf.d/80-retries

sudo apt-get -qqq update
sudo apt-get install -y \
build-essential \
ca-certificates \
cmake \
g++ \
gfortran \
gnupg \
libopenmpi-dev \
openmpi-bin \
pkg-config \
wget

VERSION_DOTTED=${1-12.0} && VERSION_DASHED=$(sed 's/\./-/' <<< $VERSION_DOTTED)
curl -O https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt-get update
sudo apt-get install -y \
cuda-command-line-tools-$VERSION_DASHED \
cuda-compiler-$VERSION_DASHED \
cuda-cupti-dev-$VERSION_DASHED \
cuda-minimal-build-$VERSION_DASHED \
cuda-nvml-dev-$VERSION_DASHED \
cuda-nvtx-$VERSION_DASHED \
libcublas-dev-$VERSION_DASHED \
libcufft-dev-$VERSION_DASHED \
libcurand-dev-$VERSION_DASHED \
libcusparse-dev-$VERSION_DASHED
sudo ln -s cuda-$VERSION_DOTTED /usr/local/cuda
9 changes: 1 addition & 8 deletions .github/workflows/gpu_action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,7 @@ jobs:
sudo apt-get -qq -y install curl cmake jq clang g++>=9.3.0
- name: Install CUDA
# from https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_network
run: |
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
sudo apt-get update
sudo apt-get -y install cuda-toolkit-11-8
run: .github/workflows/dependencies/dependencies_nvcc.sh 11.8

- name: Install hypre
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/hip.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
cd ../..
- name: Dependencies
run: .github/workflows/dependencies_hip.sh
run: .github/workflows/dependencies/dependencies_hip.sh

- name: compile flame_wave
run: |
Expand Down
26 changes: 26 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
# 24.12

* update clang-tidy CI (#2992, #3002)

* fix `problo` != 0 in non-Cartesian coords (#3001)

* fix `apply_av` in spherical (#3000)

* update `xrb_spherical` analysis (#2999)

* add spherical support to plm (#2996, #2997)

* fix coverity issue (#2998)

* fix geometric source term in ppm tracing for spherical (#2995)

* fix dloga for non-radial direction in tracing (#2994)

* fix `scale_flux` in 1d for Cartesian (#2991)

* add the `xrb_spherical` problem setup (#2972)

* add a new distance function that works for all geometries (#2990)

* fix confusing geom name in derive (#2989)

# 24.11

* a new well-balanced method was added to the CTU PPM solver. This
Expand Down
2 changes: 1 addition & 1 deletion Docs/source/radiation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ frequency, and :math:`m`, :math:`n` and :math:`p` are constants. For the gray so

::

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

in your GNUmakefile. See § \ `3.3.1 <#sec:opacpars>`__ for instructions on how
to configure the parameters used for this opacity setup. If you would prefer a different
Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/Rad2Tshock/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ EOS_DIR := gamma_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadBlastWave/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ EOS_DIR := gamma_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadBreakout/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ CASTRO_HOME ?= ../../..
EOS_DIR = breakout
NETWORK_DIR := general_null
NETWORK_INPUTS = breakout.net
Opacity_dir = breakout
OPACITY_DIR = breakout

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadFront/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ EOS_DIR := gamma_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadShestakovBolstad/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ EOS_DIR := rad_power_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

# number of radiation groups - this needs to correspond to radiation.nGroups in
# the inputs file
Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadSourceTest/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ EOS_DIR := rad_power_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

# use radiation interpbndry
RAD_INTERP = TRUE
Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadSphere/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ EOS_DIR := rad_power_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

# number of radiation groups - this needs to correspond to radiation.nGroups in
# the inputs file
Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadSuOlson/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ EOS_DIR := rad_power_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadSuOlsonMG/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ EOS_DIR := rad_power_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

NGROUPS := 2

Expand Down
2 changes: 1 addition & 1 deletion Exec/radiation_tests/RadThermalWave/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ EOS_DIR := gamma_law
NETWORK_DIR := general_null
NETWORK_INPUTS := gammalaw.net

Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/science/bwp-rad/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ NETWORK_DIR := general_null
NETWORK_INPUTS := H_He.net

# power-law opacity
Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
2 changes: 1 addition & 1 deletion Exec/science/planet/GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ NETWORK_DIR := general_null
NETWORK_INPUTS := ./taeho.net

# power-law opacity
Opacity_dir := rad_power_law
OPACITY_DIR := rad_power_law

PROBLEM_DIR ?= ./

Expand Down
33 changes: 19 additions & 14 deletions Exec/science/wdmerger/tests/he_double_det/inputs_pakmor_simp_sdc
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ castro.hi_bc = 2 2 2
max_step = 10000000

# Simulation end time
stop_time = 200.0
stop_time = 1000.0

# CFL number for hyperbolic system
castro.cfl = 0.5
Expand All @@ -70,10 +70,10 @@ castro.cfl = 0.5
castro.fixed_dt = -1.0

# Scale back initial timestep by this factor
castro.init_shrink = 0.01
castro.init_shrink = 0.1

# Factor by which dt is allowed to change each timestep
castro.change_max = 1.10
castro.change_max = 1.20

# If we regrid on Level 0, compute a new timestep afterward
amr.compute_new_dt_on_regrid = 1
Expand All @@ -91,6 +91,8 @@ castro.abundance_failure_rho_cutoff = 1.0e0
# Default is 10, 16 is recommended value
castro.max_subcycles = 16

# Switching to simplified SDC
castro.time_integration_method = 3

############################################################################################
# Resolution, gridding and AMR
Expand Down Expand Up @@ -292,20 +294,20 @@ integrator.atol_spec = 1.0e-6
integrator.rtol_enuc = 1.0e-6
integrator.atol_enuc = 1.0e-6

# Do not abort or retry on a failed burn (Castro will handle this)
integrator.abort_on_failure = 0

# Renormalize abundances during the burn
integrator.renormalize_abundances = 1

# Maximum temperature allowed in the burn
integrator.MAX_TEMP = 1.0e10

# Use tabular rate evaluation when available
network.use_tables = 1
network.use_tables = 0

# Switching to simplified SDC
castro.time_integration_method = 3
# use retry in the burner and cap the number of steps to make the
# reactions go faster
integrator.use_burn_retry = 1
integrator.retry_swap_jacobian = 1
integrator.ode_max_steps = 10000

############################################################################################
# Gravity
Expand Down Expand Up @@ -380,16 +382,16 @@ amr.check_file = chk
castro.dump_old = 1

# Simulation time between checkpoints
amr.check_per = 1.0
amr.check_per = -1

# Number of timesteps between checkpoints
amr.check_int = -1
amr.check_int = 50

# Root name of plot files
amr.plot_file = plt

# Simulation time between plotfiles
amr.plot_per = 1.0
amr.plot_per = 2.0

# Number of timesteps between plotfiles
amr.plot_int = -1
Expand Down Expand Up @@ -426,17 +428,20 @@ gravity.v = 1
amr.plot_vars = ALL

# Derived variables to add to plot files
amr.derive_plot_vars = pressure
amr.derive_plot_vars = ALL

# State variables to add to small plot files
amr.small_plot_vars = density Temp

# Derived variables to add to small plot files
amr.derive_small_plot_vars = enuc X(He4) X(C12) X(O16)
amr.derive_small_plot_vars = abar enuc MachNumber magvel magvort X(He4) X(C12) X(O16)

# Name of the diagnostic sum output files
amr.data_log = star_diag.out primary_diag.out secondary_diag.out rotation_diag.out

# write plotfiles as single precision
fab.format = NATIVE_32

############################################################################################
# Problem parameters
############################################################################################
Expand Down
Loading

0 comments on commit 24a2f28

Please sign in to comment.