### Example: Using Unit Conversions with Equation of State Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Utility.md Demonstrates how to use the MKS to CGS and CGS to MKS unit conversion aliases when calling an equation of state function. This example calculates density using mixed units. ```rst auto eos = pele::physics::PhysicsType::eos(); amrex::Real P_mean = 101325.0_rt; // Pressure in Pa (MKS) amrex::Real massfrac[NUM_SPECIES]; // Mass fractions tracked by PeleLM(eX) amrex::Real Temp = 300.0_rt; // Temp in K amrex::Real rho_cgs = 0.0_rt; // Density in g/cm^3 (CGS) // Calculate density in CGS units, then convert to MKS eos.PYT2R(m2c::P(P_mean), massfrac, Temp, rho_cgs); amrex::Real rho = c2m::Rho(rho_cgs); // Convert eos density to MKS ``` -------------------------------- ### CMake Project Setup Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/CMakeLists.txt Sets the minimum required CMake version and initializes the project. It also appends a custom module path for CMake modules. ```cmake cmake_minimum_required (VERSION 3.10) project(PelePhysics-Docs NONE) list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") ``` -------------------------------- ### Example: Direct CEPTR Usage for Homogeneous Mechanisms Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md An example of directly using CEPTR for homogeneous mechanisms, executed from the CEPTR directory. ```bash cd ${PELE_PHYSICS_HOME}/Support/ceptr poetry run convert -f ${PELE_PHYSICS_HOME}/Mechanisms/LiDryer/mechanism.yaml ``` -------------------------------- ### Generate HIT IC Example Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md Example command to generate an initial condition file for isotropic turbulence using the gen_hit_ic.py script with a specified resolution. ```rst ./gen_hit_ic.py -N 16 ``` -------------------------------- ### Spray Injection Initialization Example Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Spray.md Illustrates how to modify the InitSprayParticles() function in SprayParticleInitInsert.cpp to create a jet in the domain for spray injection. ```cpp // Example of how to initialize spray particles // This is a placeholder and needs to be implemented based on specific needs. void InitSprayParticles() { // Logic to initialize spray particles goes here. // This might involve setting initial positions, velocities, temperatures, etc. // For example: // spray.SetNumParticles(1000); // spray.SetParticleProperties(0, {x, y, z}, {vx, vy, vz}, temp, mass); } ``` -------------------------------- ### Display Regression Test Help Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Regression/README.md Display verbose usage and setup information for the regtest.py script, including available options. ```bash ./regtest.py -h ``` -------------------------------- ### Input File Parameters for CVODE Reactor Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md Configure ODE solver settings, including time step, reactor type, and tolerances. Specify CVODE solver type and Jacobian evaluation method. This example uses a dense direct solver without an analytical Jacobian. ```rst #ODE solver options # REACTOR mode ode.dt = 1.e-05 ode.ndt = 10 # Reactor formalism: 1=full e, 2=full h ode.reactor_type = 1 # Tolerances for ODE solve ode.rtol = 1e-9 ode.atol = 1e-9 # Select ARK/CV-ODE Jacobian eval: 0=FD 1=AJ ode.analytical_jacobian = 0 #CVODE SPECIFICS # Choose between sparse (5) dense (1/101) iterative (99) solver cvode.solve_type = 1 #OTHER # Max size of problem max_grid_size = 2 # Choose name of output pltfile amr.plot_file = plt # Fuel species fuel_name = CH4 ``` -------------------------------- ### Getting Help for PMF Generator Script Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Utility.md Display all available command-line options for the Cantera PMF generator script to customize flame simulation parameters. ```bash poetry -C ../../../Support/ceptr/ run python cantera_pmf_generator.py --help ``` -------------------------------- ### Generating a PMF File with Cantera Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Utility.md Use the provided Python script to solve a 1D unstrained premixed flame using Cantera and save it in the format required by Pele codes. This example computes a dodecane/air flame. ```bash poetry -C ../../../Support/ceptr/ run python cantera_pmf_generator.py -m dodecane_lu -f NC12H26 -d 0.01 -o ./ ``` -------------------------------- ### Compile PeleTurb3d Executable Source: https://github.com/amrex-combustion/pelephysics/blob/development/Support/TurbInflowGenerator/README.md Compile the C++ executable for generating the turbfile. Ensure AMReX is installed and accessible. ```bash make ``` -------------------------------- ### Specify SuiteSparse Directory Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md If SuiteSparse is not found in the default path, provide its installation directory using this flag. ```makefile SUITESPARSE_DIR=PathToSuiteSparse/ ``` -------------------------------- ### Clone PelePhysics Repository Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/GettingStarted.md Use this command to clone the PelePhysics repository and its submodules. Ensure Git version 1.7.x or higher is installed. The --recursive option downloads necessary dependencies. ```bash git clone --recursive https://github.com/AMReX-Combustion/PelePhysics.git ``` -------------------------------- ### Generate Mechanisms using a Local Helper Script Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md Execute a local helper script ('convert.sh') from the directory containing the mechanism.yaml file. This may require a valid Cantera installation. ```bash ./convert.sh ``` -------------------------------- ### Build and Run PelePhysics Documentation Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/index.md Build the HTML documentation locally using Sphinx. Ensure the PELE_PHYSICS_DIR environment variable is set to your repository's location. ```default cd ${PELE_PHYSICS_DIR}/build sphinx-build -M html ../Docs/sphinx . ``` -------------------------------- ### Create New Feature Branch Source: https://github.com/amrex-combustion/pelephysics/blob/development/CONTRIBUTING.md Create a new branch for your feature, starting from the 'development' branch. ```bash git checkout development git checkout -b AmazingNewFeature ``` -------------------------------- ### Initialize and Apply Filter Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Utility.md Demonstrates the initialization of a Filter object with specified type and grid ratio, followed by applying the filter to MultiFab data. Ensure sufficient ghost cells are present. ```rst les_filter = Filter(les_filter_type, les_filter_fgr); ... les_filter.apply_filter(bxtmp, flux[i], filtered_flux[i], Density, NUM_STATE); ``` -------------------------------- ### Display Help for propcoeff.py Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md This command displays the help message for the 'propcoeff.py' script, outlining its usage and available options for calculating property coefficients. ```bash $ python propcoeff.py -h ``` -------------------------------- ### QSSA Help Command Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md Displays the usage and available options for the qssa command, including arguments for mechanism file, non-QSSA species list, QSSA method, and visualization. ```bash poetry run qssa -h ``` -------------------------------- ### Navigate to Test Case Directory Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/GettingStarted.md Change the current directory to the specific test case you want to work with. Ensure the PELE_PHYSICS_HOME environment variable is set correctly. ```bash cd ${PELE_PHYSICS_HOME}/Testing/Exec/ReactEval ``` -------------------------------- ### Enable KLU Sparse Solver Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md Set this flag to TRUE in the GNUmakefile to enable the use of the KLU sparse direct linear solver, which requires the SuiteSparse package. ```makefile PELE_USE_KLU = TRUE ``` -------------------------------- ### Enable CVode and KLU in GNUmakefile Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md Set USE_SUNDIALS_PP to TRUE and PELE_USE_KLU to TRUE in the GNUmakefile to activate the CVode solver and its sparse KLU features. ```makefile ####################### # ODE solver OPTIONS: DVODE (default) / SUNDIALS / RK explicit ####################### # Activates use of SUNDIALS: CVODE (default) / ARKODE USE_SUNDIALS_PP = TRUE ifeq ($(USE_SUNDIALS_PP), TRUE) ... # use KLU sparse features -- only useful if CVODE is used PELE_USE_KLU = TRUE ... else ... endif ####################### ... ``` -------------------------------- ### Format All Source Files Source: https://github.com/amrex-combustion/pelephysics/blob/development/CONTRIBUTING.md Use clang-format to automatically format all C++ and header files in the Source and Testing directories. ```bash find Source Testing \( -name "*.cpp" -o -name "*.H" \) -exec clang-format -i {} + ``` -------------------------------- ### Configure CVode Solver in Input File Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md Set ode.analytical_jacobian to 1 and cvode.solve_type to 99 in the input file to use a preconditioned iterative Krylov solver with sparse Jacobian evaluation for CVode. ```input ####################### #ODE solver options ... # Select ARK/CV-ODE Jacobian eval: 0=FD 1=AJ ode.analytical_jacobian = 1 #CVODE SPECIFICS # Choose between sparse (5) dense (1/101) iterative (99) solver cvode.solve_type = 99 ... #OTHER ... ``` -------------------------------- ### Create Symbolic Links for Testing Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Regression/README.md Create symbolic links to the regression testing script and the PelePhysics test configuration file within the current directory. Assumes regression_testing and PelePhysics are cloned into REGTEST_SCRATCH. ```bash ln -s ${REGTEST_SCRATCH}/regression_testing/regtest.py . ln -s ${REGTEST_SCRATCH}/PelePhysics/Testing/Regression/PelePhysics-tests.ini . ``` -------------------------------- ### Configure PelePhysics to Use SUNDIALS (CVODE) Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md Modify the GNUmakefile to set USE_SUNDIALS_PP to TRUE to activate the SUNDIALS library, which provides CVODE. ```makefile USE_SUNDIALS_PP = FALSE ... ####################### # ODE solver OPTIONS: DVODE (default) / SUNDIALS / RK explicit ####################### # Activates use of SUNDIALS: CVODE (default) / ARKODE USE_SUNDIALS_PP = TRUE ... ####################### ... ``` -------------------------------- ### GNUmakefile Configuration for PelePhysics with CUDA Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md This GNUmakefile configures PelePhysics for GPU acceleration using CUDA and enables the CVODE ODE solver with SUNDIALS. It specifies models for equation of state, chemistry, and transport. ```makefile PRECISION = DOUBLE PROFILE = FALSE DEBUG = FALSE DIM = 3 COMP = gcc FCOMP = gfortran USE_MPI = FALSE USE_OMP = FALSE FUEGO_GAS = TRUE USE_CUDA = TRUE TINY_PROFILE = TRUE # define the location of the PELE_PHYSICS top directory PELE_PHYSICS_HOME := ../../.. ####################### # this flag activates the subcycling mode in the D/Cvode routines DEFINES += -DMOD_REACTOR ####################### # ODE solver OPTIONS on GPU: SUNDIALS ####################### # Activates use of SUNDIALS: CVODE (default) USE_SUNDIALS_PP = TRUE ############################################## ifeq ($(FUEGO_GAS), TRUE) Eos_Model = Fuego Chemistry_Model = drm19 Reactions_dir = Fuego Transport_Model = Simple else Eos_Model = GammaLaw Reactions_dir = Null Transport_Model = Constant endif Bpack := ./Make.package Blocs := . include $(PELE_PHYSICS_HOME)/Testing/Exec/Make.PelePhysics ``` -------------------------------- ### Setting PMF Runtime Parameters Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Utility.md Configure Premixed Flame (PMF) initialization by specifying the data file and whether to perform cell averaging. These parameters are set in the input file. ```rst pmf.datafile = pmf.dat pmf.do_cellAverage = 1 ``` -------------------------------- ### QSS Input Configuration for Analytical Jacobian Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Tutorials.md Recommended TOML configuration for generating QSS mechanisms with analytical Jacobians, specifying readability, arithmetic, replacement, recycle, and character settings. ```toml [Readability] hformat = "gpu" [Arithmetic] remove_1 = true remove_pow = true remove_pow10 = true [Replacement] min_op_count = 0 min_op_count_all = 10 gradual_op_count = true remove_single_symbols_cse = true [Recycle] store_in_jacobian = true recycle_cse = true [Characters] round_decimals = true ``` -------------------------------- ### Run TurbInflow Utility Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md Execute the built TurbInflow utility. Running without arguments displays available options. ```bash ./PeleTurb3d.gnu.ex ``` -------------------------------- ### Run HIT IC Generation with Poetry Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md Demonstrates how to run the gen_hit_ic.py script using poetry to manage dependencies, ensuring correct versions of SciPy and Matplotlib are used. ```rst poetry run -C ../ceptr/ python gen_hit_ic.py -N 16 ``` -------------------------------- ### Run PelePhysics Test Case Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/GettingStarted.md Execute the compiled PelePhysics program with the specified input file. This command runs the ReactEval executable using the 'inputs.3d-regt_GPU' configuration. ```bash ./Pele3d.gnu.ex inputs.3d-regt_GPU ``` -------------------------------- ### Create Test Directory Structure Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Regression/README.md Navigate to the regression test run directory and create the expected directory structure for PelePhysics test data. Ensure REGTEST_RUNDIR environment variable is set. ```bash cd ${REGTEST_RUNDIR}; mkdir -p TestData/PelePhysics ``` -------------------------------- ### Generate Benchmark Solutions Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Regression/README.md Generate the initial benchmark solutions for all tests defined in the PelePhysics-tests.ini configuration file. This command overwrites existing benchmarks. ```bash ./regtest.py --make_benchmarks "" PelePhysics-tests.ini ``` -------------------------------- ### Generate HIT IC Help Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md Displays help information for the gen_hit_ic.py script, outlining available options for generating isotropic turbulence velocity fields. ```rst ./gen_hit_ic.py --help usage: gen_hit_ic.py [-h] [-k0 K0] [-N N] [-Nk NK] [-s SEED] [-p] Generate the velocity fluctuations for the HIT IC options: -h, --help show this help message and exit -k0 K0 Wave number containing highest energy -N N Resolution -Nk NK Resolution in wavenumber space for intermediate step -s SEED, --seed SEED Random number generator seed -p, --plot Save a plot of the x-velocity ``` -------------------------------- ### Build PelePhysics Executable Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/GettingStarted.md Compile the main executable for the test case. The `-j 4` option allows for parallel compilation using 4 processors to speed up the build process. ```bash make -j 4 ``` -------------------------------- ### Run TurbInflow with Input File Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md Execute the TurbInflow utility with a specified input file. Adjust 'hit_file' and 'input_ncell' as needed. ```bash ./PeleTurb3d.gnu.ex input ``` -------------------------------- ### Generate All Mechanisms Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md Executes commands to generate both non-reduced and reduced chemistry mechanisms in batch. This includes converting mechanism lists and generating QSS YAML files. ```bash poetry run convert -l ${PELE_PHYSICS_HOME}/Mechanisms/list_mech poetry run qssa -lq ${PELE_PHYSICS_HOME}/Mechanisms/list_qss_mech poetry run convert -lq ${PELE_PHYSICS_HOME}/Mechanisms/list_qss_mech ``` -------------------------------- ### GNUmakefile Configuration for CVODE Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md Set USE_SUNDIALS_PP to TRUE to enable CVODE integration. Ensure FUEGO_GAS is TRUE and the chemistry model is set appropriately. This configuration is for direct C++ calls to CVODE. ```makefile PRECISION = DOUBLE PROFILE = FALSE DEBUG = FALSE DIM = 3 COMP = gcc FCOMP = gfortran USE_MPI = TRUE USE_OMP = FALSE FUEGO_GAS = TRUE TINY_PROFILE = TRUE # define the location of the PELE_PHYSICS top directory PELE_PHYSICS_HOME := ../../../.. ####################### DEFINES += -DMOD_REACTOR ####################### # ODE solver OPTIONS: DVODE (default) / SUNDIALS / RK explicit ####################### # Activates use of SUNDIALS: CVODE (default) / ARKODE USE_SUNDIALS_PP = TRUE ifeq ($(USE_SUNDIALS_PP), TRUE) # provide location of sundials lib if needed SUNDIALS_LIB_DIR=$(PELE_PHYSICS_HOME)/ThirdParty/sundials/instdir/lib/ # use KLU sparse features -- only useful if CVODE is used PELE_USE_KLU = FALSE ifeq ($(PELE_USE_KLU), TRUE) # provide location of KLU lib if needed SUITESPARSE_DIR=$(PELE_PHYSICS_HOME)/ThirdParty/SuiteSparse/ endif endif ####################### ifeq ($(FUEGO_GAS), TRUE) Eos_Model = Fuego Chemistry_Model = drm19 Reactions_dir = Fuego Transport_Model = Simple else Eos_Model = GammaLaw Reactions_dir = Null Transport_Model = Constant endif Bpack := ./Make.package Blocs := . include $(PELE_PHYSICS_HOME)/Testing/Exec/Make.PelePhysics ``` -------------------------------- ### Build and Run Single Drop Evaporation Tests Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Spray.md Use Validate.py to build new executables and run single droplet evaporation test cases with specified liquid properties and pressure saturation methods. ```bash python Validate.py -b -c WongLin ``` ```bash python Validate.py -b -c WongLin -l mp -p CC ``` ```bash python Validate.py -b -c RungeJP8 -m --cmlm_path ``` ```bash python Validate.py -b -c RungeJP8-H ``` -------------------------------- ### Convert Reduced Mechanisms in Batch Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md Converts a list of qssa.yaml and qssa_input.toml files for reduced chemistries in batch. This process also uses multiprocessing for parallel generation. ```bash cd ${PELE_PHYSICS_HOME}/Support/ceptr poetry run convert -lq ${PELE_PHYSICS_HOME}/Mechanisms/list_qss_mech ``` -------------------------------- ### Clone Required Repositories Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Regression/README.md Clone the amrex, regression_testing, and PelePhysics repositories into a designated scratch area. Ensure REGTEST_SCRATCH environment variable is set. ```bash git clone git@github.com:AMReX-Codes/amrex.git ${REGTEST_SCRATCH}/amrex git clone git@github.com:AMReX-Codes/regression_testing ${REGTEST_SCRATCH}/regression_testing git clone git@github.com:AMReX-Combustion/PelePhysics.git ${REGTEST_SCRATCH}/PelePhysics ``` -------------------------------- ### Build TurbInflow Utility Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Support.md Build the TurbInflow utility using make. Ensure AMReX is available or specify AMREX_HOME if not recursively cloned. ```bash make -j ``` -------------------------------- ### Build Dependencies for PelePhysics Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/GettingStarted.md Compile necessary third-party libraries (TPL) required by PelePhysics. This step is essential before building the main executable and may need to be repeated if compile-time options change. ```bash make TPL ``` -------------------------------- ### Generate QSS Mechanism with Analytical Jacobian Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Tutorials.md Generates a QSS mechanism with an analytical Jacobian using the qssa tool. Requires skeletal mechanism and non-QSS species list. ```bash cd ${PELE_PHYSICS_HOME}/Support/ceptr poetry run qssa -f ${PELE_PHYSICS_HOME}/Mechanisms/dodecane_lu_qss/skeletal.yaml -n ${PELE_PHYSICS_HOME}/Mechanisms/dodecane_lu_qss/non_qssa_list.yaml ``` ```bash cd ${PELE_PHYSICS_HOME}/Support/ceptr poetry run convert -f ${PELE_PHYSICS_HOME}/Mechanisms/dodecane_lu_qss/qssa.yaml --qss_format_input ${PELE_PHYSICS_HOME}/Mechanisms/dodecane_lu_qss/qssa_input.toml --qss_symbolic_jacobian ``` -------------------------------- ### Copy Radiation Data Files Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Exec/Radiation/CMakeLists.txt Copies necessary data files for radiation testing to the build directory. Ensure the 'kpDB' file exists in the source directory. ```cmake file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/kpDB" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/") ``` -------------------------------- ### Generate Turbfile Source: https://github.com/amrex-combustion/pelephysics/blob/development/Support/TurbInflowGenerator/README.md Execute the compiled program to generate the turbfile. Adapt the input file to your specific simulation needs, including the path to the generated HIT data and the input cell count. ```bash ./PeleTurb3d.gnu.ex input hit_file=hit_ic_4_128.dat input_ncell=128 ``` -------------------------------- ### Configure ANSYS Fluent DPM Spray Injection Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Spray.md Set up spray particle injection using data from ANSYS Fluent DPM solution files. Ensure the DPM file name and periodic behavior are correctly specified. ```input spray.jetnames=jet_dpm spray.jet_dpm.read_from_dpm_file=true spray.jet_dpm.dpm_filename= spray.jet_dpm.is_dpm_periodic=true spray.jet_dpm.initial_injection_dpm_time= spray.jet_dpm.initial_injection_flow_time= spray.jet_dpm.trans_matrix=<3x3 matrix> spray.jet_dpm.translation= ``` -------------------------------- ### Turbulent Inflow Input File Options Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Utility.md Configuration options for setting up turbulent inflow patches. These parameters control the source of turbulence data, its application on domain boundaries, and scaling factors. ```rst turbinflows=low high # Names of injections (can provide any number) turbinflow.low.turb_file = TurbFileHIT/TurbTEST # Path to directory created in previous step turbinflow.low.dir = 1 # Boundary normal direction (0,1, or 2) for patch turbinflow.low.side = "low" # Boundary side (low or high) for patch turbinflow.low.turb_scale_loc = 633.151 # Factor by which to scale the spatial coordinate between the data file and simulation turbinflow.low.turb_scale_vel = 1.0 # Factor by which to scale the velocity between the data file and simulation turbinflow.low.turb_center = 0.005 0.005 # Center point where turbulence patch will be applied turbinflow.low.turb_conv_vel = 5. # Velocity to move through the 3rd dimension to simulate time evolution turbinflow.low.turb_nplane = 32 # Number of planes to read and store at a time turbinflow.low.time_offset = 0.0 # Offset in time for reading through the 3rd dimension turbinflow.low.verbose = 0 # Verbosity level turbinflow.low.extrap_nonperiodic = 0 # Allow interpolation near edges of inflow patch where stencil may touch ghost cells turbinflow.low.tile_periodic = 0 # Cover the entire inflow face by periodically repeating/tiling the inflow patch turbinflow.low.interp_type = quadratic # Either quadratic (default) or linear (required if there are nonperiodic directions) turbinflow.low.time_periodic = 0 # Specify if the turbinflow data should be repeated in time, only valid for time varying turbinflow of type "istimeplanes" turbinflow.high.turb_file = TurbFileHIT/TurbTEST # All same as above, but for second injection patch turbinflow.high.dir = 1 turbinflow.high.side = "high" turbinflow.high.turb_scale_loc = 633.151 turbinflow.high.turb_scale_vel = 1.0 turbinflow.high.turb_center = 0.005 0.005 turbinflow.high.turb_conv_vel = 5. turbinflow.high.turb_nplane = 32 turbinflow.high.time_offset = 0.0006 turbinflow.high.verbose = 2 ``` -------------------------------- ### Citation for PeleMP and PeleRad Capabilities in PelePhysics Source: https://github.com/amrex-combustion/pelephysics/blob/development/README.md Use this BibTeX entry to cite the multi-physics capabilities (soot, spray, radiation) within PelePhysics, which were imported from PeleMP and PeleRad. This citation is for specific components and their associated publication. ```bibtex @article{owen2023pelemp, title={PeleMP: The Multiphysics Solver for the Combustion Pele Adaptive Mesh Refinement Code Suite}, author={Owen, Landon D and Ge, Wenjun and Rieth, Martin and Arienti, Marco and Esclapez, Lucas and S Soriano, Bruno and Mueller, Michael E and Day, Marc and Sankaran, Ramanan and Chen, Jacqueline H}, journal={Journal of Fluids Engineering}, pages={1--41}, year={2023} } ``` -------------------------------- ### Generate QSS Chemistry YAML Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md Generates a QSS chemistry YAML file from a skeletal YAML and a list of non-QSS species. Ensure you are in the correct directory and have the necessary input files. ```bash cd ${PELE_PHYSICS_HOME}/Support/ceptr poetry run qssa -f ${PATH_TO_YAML}/skeletal.yaml -n ${PATH_TO_YAML}/non_qssa_list.yaml ``` -------------------------------- ### Generate Mechanisms using a Mechanisms Directory Helper Script Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/Ceptr.md Use a bash script located in the Mechanisms directory to convert a specified YAML mechanism file. ```bash bash ${PELE_PHYSICS_HOME}/Mechanisms/converter.sh -f ./LiDryer/mechanism.yaml ``` -------------------------------- ### Run Regression Tests Source: https://github.com/amrex-combustion/pelephysics/blob/development/Testing/Regression/README.md Execute the regression tests defined in the PelePhysics-tests.ini configuration file. Results will be formatted in HTML and available at TestData/PelePhysics/web/index.html. ```bash ./regtest.py PelePhysics-tests.ini ``` -------------------------------- ### Specify CVODE Library Directory Source: https://github.com/amrex-combustion/pelephysics/blob/development/Docs/sphinx/CvodeInPP.md If Sundials is not found in the default path, provide the directory containing the Sundials libraries using this flag. ```makefile CVODE_LIB_DIR=PathToSundials/instdir/lib/ ``` -------------------------------- ### Generate Input File for PeleC using FuelLib Source: https://github.com/amrex-combustion/pelephysics/blob/development/Mechanisms/liquid_fuels_nonreacting/README.md Use this command to generate the required input file for PeleC when using the MP liquid property model. Ensure the FUELLIB_DIR environment variable is set. ```bash cd $FUELLIB_DIR/source python Export4Pele.py --fuel_name posf10264 --units cgs --export_mix True --liq_prop_model mp ```