Skip to content

Commit a1d5913

Browse files
committed
Replace all instances of PeleC, PELEC by ERF and pelec by erf.
This version builds with both gmake and cmake.
1 parent 183bac4 commit a1d5913

File tree

123 files changed

+1228
-1642
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

123 files changed

+1228
-1642
lines changed

.github/workflows/ci.yml.DISABLED

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: PeleC-CI
1+
name: ERF-CI
22

33
on:
44
push:
@@ -70,10 +70,10 @@ jobs:
7070
-DCMAKE_CXX_COMPILER:STRING=${{env.CXX_COMPILER}} \
7171
-DCMAKE_C_COMPILER:STRING=${{env.C_COMPILER}} \
7272
-DCMAKE_Fortran_COMPILER:STRING=${{env.FORTRAN_COMPILER}} \
73-
-DPELEC_ENABLE_MPI:BOOL=ON \
74-
-DPELEC_ENABLE_TESTS:BOOL=ON \
75-
-DPELEC_ENABLE_FCOMPARE_FOR_TESTS:BOOL=OFF \
76-
-DPELEC_ENABLE_MASA:BOOL=ON \
73+
-DERF_ENABLE_MPI:BOOL=ON \
74+
-DERF_ENABLE_TESTS:BOOL=ON \
75+
-DERF_ENABLE_FCOMPARE_FOR_TESTS:BOOL=OFF \
76+
-DERF_ENABLE_MASA:BOOL=ON \
7777
-DMASA_DIR:STRING=${{runner.workspace}}/deps/install/MASA \
7878
${GITHUB_WORKSPACE}
7979
- name: make

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ plt*
77
chk*
88
tmp_build_dir
99
.ccls-cache
10-
PeleC*.ex
10+
ERF*.ex
1111
extern_parameters.H
1212
extern_parameters.cpp
1313
extern_parameters_F.H

Build/cmake.sh

+8-8
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ cmake -DCMAKE_INSTALL_PREFIX:PATH=./install \
88
-DCMAKE_Fortran_COMPILER:STRING=mpifort \
99
-DMPIEXEC_PREFLAGS:STRING=--oversubscribe \
1010
-DCMAKE_BUILD_TYPE:STRING=Release \
11-
-DPELEC_DIM:STRING=3 \
12-
-DPELEC_ENABLE_MPI:BOOL=ON \
13-
-DPELEC_ENABLE_AMREX_EB:BOOL=ON \
14-
-DPELEC_ENABLE_TESTS:BOOL=ON \
15-
-DPELEC_ENABLE_MASA:BOOL=ON \
16-
-DPELEC_ENABLE_FCOMPARE:BOOL=ON \
17-
-DPELEC_ENABLE_FCOMPARE_FOR_TESTS:BOOL=OFF \
11+
-DERF_DIM:STRING=3 \
12+
-DERF_ENABLE_MPI:BOOL=ON \
13+
-DERF_ENABLE_AMREX_EB:BOOL=ON \
14+
-DERF_ENABLE_TESTS:BOOL=ON \
15+
-DERF_ENABLE_MASA:BOOL=ON \
16+
-DERF_ENABLE_FCOMPARE:BOOL=ON \
17+
-DERF_ENABLE_FCOMPARE_FOR_TESTS:BOOL=OFF \
1818
-DMASA_DIR:STRING=$(spack location -i masa) \
19-
-DPELEC_ENABLE_DOCUMENTATION:BOOL=OFF \
19+
-DERF_ENABLE_DOCUMENTATION:BOOL=OFF \
2020
-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON \
2121
.. && make -j8

CMake/BuildERFExe.cmake

+117
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
function(build_erf_exe erf_exe_name)
2+
3+
set(SRC_DIR ${CMAKE_SOURCE_DIR}/SourceCpp)
4+
set(BIN_DIR ${CMAKE_BINARY_DIR}/SourceCpp/${erf_exe_name})
5+
6+
include(${CMAKE_SOURCE_DIR}/CMake/SetERFCompileFlags.cmake)
7+
8+
add_subdirectory(${SRC_DIR}/Params ${BIN_DIR}/Params/${erf_exe_name})
9+
10+
set(ERF_EOS_DIR "${CMAKE_SOURCE_DIR}/SourceCpp/GammaLaw")
11+
target_sources(${erf_exe_name} PRIVATE
12+
${ERF_EOS_DIR}/EOS.H)
13+
target_include_directories(${erf_exe_name} SYSTEM PRIVATE ${ERF_EOS_DIR})
14+
15+
if(ERF_ENABLE_MASA)
16+
target_sources(${erf_exe_name} PRIVATE
17+
${SRC_DIR}/MMS.cpp)
18+
target_compile_definitions(${erf_exe_name} PRIVATE ERF_USE_MASA)
19+
endif()
20+
21+
target_sources(${erf_exe_name}
22+
PRIVATE
23+
${SRC_DIR}/Advance.cpp
24+
${SRC_DIR}/BCfill.cpp
25+
${SRC_DIR}/Bld.cpp
26+
${SRC_DIR}/Constants.H
27+
${SRC_DIR}/Derive.H
28+
${SRC_DIR}/Derive.cpp
29+
${SRC_DIR}/Diffterm.H
30+
${SRC_DIR}/Diffterm.cpp
31+
${SRC_DIR}/Diffusion.H
32+
${SRC_DIR}/Diffusion.cpp
33+
${SRC_DIR}/External.cpp
34+
${SRC_DIR}/Filter.H
35+
${SRC_DIR}/Filter.cpp
36+
${SRC_DIR}/Forcing.H
37+
${SRC_DIR}/Forcing.cpp
38+
${SRC_DIR}/GradUtil.H
39+
${SRC_DIR}/Hydro.H
40+
${SRC_DIR}/Hydro.cpp
41+
${SRC_DIR}/IndexDefines.H
42+
${SRC_DIR}/IndexDefines.cpp
43+
${SRC_DIR}/IO.H
44+
${SRC_DIR}/IO.cpp
45+
${SRC_DIR}/LES.H
46+
${SRC_DIR}/Transport.H
47+
${SRC_DIR}/TransportParams.H
48+
${SRC_DIR}/LES.cpp
49+
${SRC_DIR}/MOL.H
50+
${SRC_DIR}/MOL.cpp
51+
${SRC_DIR}/ERF.H
52+
${SRC_DIR}/ERF.cpp
53+
${SRC_DIR}/Problem.H
54+
${SRC_DIR}/ProblemDerive.H
55+
${SRC_DIR}/Riemann.H
56+
${SRC_DIR}/Setup.cpp
57+
${SRC_DIR}/Sources.cpp
58+
${SRC_DIR}/SumIQ.cpp
59+
${SRC_DIR}/SumUtils.cpp
60+
${SRC_DIR}/Tagging.H
61+
${SRC_DIR}/Tagging.cpp
62+
${SRC_DIR}/Timestep.H
63+
${SRC_DIR}/Timestep.cpp
64+
${SRC_DIR}/Utilities.H
65+
${SRC_DIR}/Utilities.cpp
66+
${SRC_DIR}/Transport.cpp
67+
${SRC_DIR}/TransportParams.cpp
68+
)
69+
70+
if(NOT "${erf_exe_name}" STREQUAL "erf_unit_tests")
71+
target_sources(${erf_exe_name}
72+
PRIVATE
73+
${SRC_DIR}/main.cpp
74+
)
75+
endif()
76+
77+
include(AMReXBuildInfo)
78+
generate_buildinfo(${erf_exe_name} ${CMAKE_SOURCE_DIR})
79+
target_include_directories(${erf_exe_name} PUBLIC ${AMREX_SUBMOD_LOCATION}/Tools/C_scripts)
80+
81+
if(ERF_ENABLE_MASA)
82+
if(MASA_FOUND)
83+
#Link our executable to the MASA libraries, etc
84+
target_link_libraries(${erf_exe_name} PRIVATE ${MASA_LIBRARY})
85+
target_compile_definitions(${erf_exe_name} PRIVATE USE_MASA DO_PROBLEM_POST_TIMESTEP DO_PROBLEM_POST_INIT)
86+
target_include_directories(${erf_exe_name} SYSTEM PRIVATE ${MASA_INCLUDE_DIRS})
87+
target_include_directories(${erf_exe_name} SYSTEM PRIVATE ${MASA_MOD_DIRS})
88+
endif()
89+
endif()
90+
91+
if(ERF_ENABLE_MPI)
92+
target_link_libraries(${erf_exe_name} PUBLIC $<$<BOOL:${MPI_CXX_FOUND}>:MPI::MPI_CXX>)
93+
endif()
94+
95+
#ERF include directories
96+
target_include_directories(${erf_exe_name} PRIVATE ${SRC_DIR})
97+
target_include_directories(${erf_exe_name} PRIVATE ${CMAKE_BINARY_DIR})
98+
99+
#Link to amrex library
100+
target_link_libraries(${erf_exe_name} PRIVATE amrex)
101+
102+
if(ERF_ENABLE_CUDA)
103+
set(pctargets "${erf_exe_name}")
104+
foreach(tgt IN LISTS pctargets)
105+
get_target_property(ERF_SOURCES ${tgt} SOURCES)
106+
list(FILTER ERF_SOURCES INCLUDE REGEX "\\.cpp")
107+
set_source_files_properties(${ERF_SOURCES} PROPERTIES LANGUAGE CUDA)
108+
endforeach()
109+
endif()
110+
111+
#Define what we want to be installed during a make install
112+
install(TARGETS ${erf_exe_name}
113+
RUNTIME DESTINATION bin
114+
ARCHIVE DESTINATION lib
115+
LIBRARY DESTINATION lib)
116+
117+
endfunction()

CMake/BuildPeleCExe.cmake

-117
This file was deleted.

CMake/SetAmrexOptions.cmake

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
#Set amrex options
22
set(USE_XSDK_DEFAULTS OFF)
3-
set(DIM "${PELEC_DIM}" CACHE STRING "Number of physical dimensions" FORCE)
3+
set(DIM "${ERF_DIM}" CACHE STRING "Number of physical dimensions" FORCE)
44
set(ENABLE_PIC OFF)
5-
set(ENABLE_MPI ${PELEC_ENABLE_MPI})
6-
set(ENABLE_OMP ${PELEC_ENABLE_OPENMP})
5+
set(ENABLE_MPI ${ERF_ENABLE_MPI})
6+
set(ENABLE_OMP ${ERF_ENABLE_OPENMP})
77
set(ENABLE_DP ON)
8-
set(ENABLE_EB ${PELEC_ENABLE_AMREX_EB})
8+
set(ENABLE_EB ${ERF_ENABLE_AMREX_EB})
99
set(ENABLE_FORTRAN_INTERFACES OFF)
1010
set(ENABLE_LINEAR_SOLVERS OFF)
1111
set(ENABLE_AMRDATA OFF)
@@ -22,7 +22,7 @@ set(ENABLE_MEM_PROFILE OFF)
2222
set(ENABLE_COMM_PROFILE OFF)
2323
set(ENABLE_BACKTRACE OFF)
2424
set(ENABLE_PROFPARSER OFF)
25-
set(ENABLE_CUDA ${PELEC_ENABLE_CUDA})
25+
set(ENABLE_CUDA ${ERF_ENABLE_CUDA})
2626
set(ENABLE_ACC OFF)
27-
set(ENABLE_PLOTFILE_TOOLS ${PELEC_ENABLE_FCOMPARE})
27+
set(ENABLE_PLOTFILE_TOOLS ${ERF_ENABLE_FCOMPARE})
2828
#set(ENABLE_FORTRAN OFF)

CMake/SetERFCompileFlags.cmake

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Logic for handling warnings
2+
if(ERF_ENABLE_ALL_WARNINGS)
3+
# GCC, Clang, and Intel seem to accept these
4+
list(APPEND ERF_CXX_FLAGS "-Wall" "-Wextra" "-pedantic")
5+
if(NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
6+
# ifort doesn't like -Wall
7+
list(APPEND ERF_Fortran_FLAGS "-Wall")
8+
else()
9+
# Intel always reports some diagnostics we don't necessarily care about
10+
list(APPEND ERF_CXX_FLAGS "-diag-disable:11074,11076")
11+
endif()
12+
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 7.0)
13+
# Avoid notes about -faligned-new with GCC > 7
14+
list(APPEND ERF_CXX_FLAGS "-faligned-new")
15+
endif()
16+
endif()
17+
18+
# Add our extra flags according to language
19+
separate_arguments(ERF_CXX_FLAGS)
20+
target_compile_options(${erf_exe_name} PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${ERF_CXX_FLAGS}>)
21+
22+
if(ERF_ENABLE_CUDA)
23+
list(APPEND ERF_CUDA_FLAGS "--expt-relaxed-constexpr")
24+
list(APPEND ERF_CUDA_FLAGS "--expt-extended-lambda")
25+
list(APPEND ERF_CUDA_FLAGS "--Wno-deprecated-gpu-targets")
26+
list(APPEND ERF_CUDA_FLAGS "-m64")
27+
if(ENABLE_CUDA_FASTMATH)
28+
list(APPEND ERF_CUDA_FLAGS "--use_fast_math")
29+
endif()
30+
separate_arguments(ERF_CUDA_FLAGS)
31+
target_compile_options(${erf_exe_name} PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:${ERF_CUDA_FLAGS}>)
32+
# Add arch flags to both compile and linker to avoid warnings about missing arch
33+
set(CMAKE_CUDA_FLAGS ${NVCC_ARCH_FLAGS})
34+
set_target_properties(
35+
${erf_exe_name} PROPERTIES
36+
CUDA_SEPARABLE_COMPILATION ON
37+
CUDA_RESOLVE_DEVICE_SYMBOLS OFF)
38+
endif()

CMake/SetPeleCCompileFlags.cmake

-38
This file was deleted.

0 commit comments

Comments
 (0)