ソルバーリスト

2016年12月10日

はじめに

ソルバーリストの表示について。

使用バージョン

OpenFOAM 4.x (blueCFD)

ソルバーリスト

OpenFOAM にどういう標準ソルバーがあるのか知りたい場合がある。ユーザーガイド にリストはあるが、コマンドラインで作業中に、コマンドライン上で知りたい。ソルバーの情報は各ソースコードのコメントの Description に書いてあるので、それを表示できればよい。以下のようなスクリプトでリストが得られる (抜けや余分なものがあるかも)。

show_solvers

#!/bin/sh
COUNT=0
cd $FOAM_SOLVERS
for SOLVER_PATH in `find | sort -f | grep "\.C$" | xargs -I {} dirname {} | grep "Foam$" | sed -e "s%^./%%"`  ; do
    echo $SOLVER_PATH
    echo
    cat $SOLVER_PATH/`basename $SOLVER_PATH`.C | awk '
        /\\\*/ {exit}
        a == 1 {print}
        /Description/ {a = 1} 
    '
    COUNT=`expr $COUNT + 1`
done
echo Total $COUNT

実行結果

basic/laplacianFoam

    Solves a simple Laplace equation, e.g. for thermal diffusion in a solid.

basic/potentialFoam

    Potential flow solver which solves for the velocity potential, to
    calculate the flux-field, from which the velocity field is obtained by
    reconstructing the flux.

    This application is particularly useful to generate starting fields for
    Navier-Stokes codes.

basic/scalarTransportFoam

    Solves the steady or transient transport equation for a passive scalar.

combustion/chemFoam

    Solver for chemistry problems, designed for use on single cell cases to
    provide comparison against other chemistry solvers, that uses a single cell
    mesh, and fields created from the initial conditions.

combustion/coldEngineFoam

    Solver for cold-flow in internal combustion engines.

combustion/engineFoam

    Solver for internal combustion engines.

    Combusting RANS code using the b-Xi two-equation model.
    Xi may be obtained by either the solution of the Xi transport
    equation or from an algebraic exression.  Both approaches are
    based on Gulder's flame speed correlation which has been shown
    to be appropriate by comparison with the results from the
    spectral model.

    Strain effects are encorporated directly into the Xi equation
    but not in the algebraic approximation.  Further work need to be
    done on this issue, particularly regarding the enhanced removal rate
    caused by flame compression.  Analysis using results of the spectral
    model will be required.

    For cases involving very lean Propane flames or other flames which are
    very strain-sensitive, a transport equation for the laminar flame
    speed is present.  This equation is derived using heuristic arguments
    involving the strain time scale and the strain-rate at extinction.
    the transport velocity is the same as that for the Xi equation.

combustion/fireFoam

    Transient solver for fires and turbulent diffusion flames with reacting
    particle clouds, surface film and pyrolysis modelling.

combustion/PDRFoam

    Solver for compressible premixed/partially-premixed combustion with
    turbulence modelling.

    Combusting RANS code using the b-Xi two-equation model.
    Xi may be obtained by either the solution of the Xi transport
    equation or from an algebraic exression.  Both approaches are
    based on Gulder's flame speed correlation which has been shown
    to be appropriate by comparison with the results from the
    spectral model.

    Strain effects are incorporated directly into the Xi equation
    but not in the algebraic approximation.  Further work need to be
    done on this issue, particularly regarding the enhanced removal rate
    caused by flame compression.  Analysis using results of the spectral
    model will be required.

    For cases involving very lean Propane flames or other flames which are
    very strain-sensitive, a transport equation for the laminar flame
    speed is present.  This equation is derived using heuristic arguments
    involving the strain time scale and the strain-rate at extinction.
    the transport velocity is the same as that for the Xi equation.

    For large flames e.g. explosions additional modelling for the flame
    wrinkling due to surface instabilities may be applied.

    PDR (porosity/distributed resistance) modelling is included to handle
    regions containing blockages which cannot be resolved by the mesh.

    The fields used by this solver are:

    betav:  Volume porosity
    Lobs:   Average diameter of obstacle in cell (m)
    Aw:     Obstacle surface area per unit volume (1/m)
    CR:     Drag tensor (1/m)
    CT:     Turbulence generation parameter (1/m)
    Nv:     Number of obstacles in cell per unit volume (m^-2)
    nsv:    Tensor whose diagonal indicates the number to substract from
            Nv to get the number of obstacles crossing the flow in each
            direction.

combustion/PDRFoam

    Solver for compressible premixed/partially-premixed combustion with
    turbulence modelling.

    Combusting RANS code using the b-Xi two-equation model.
    Xi may be obtained by either the solution of the Xi transport
    equation or from an algebraic exression.  Both approaches are
    based on Gulder's flame speed correlation which has been shown
    to be appropriate by comparison with the results from the
    spectral model.

    Strain effects are incorporated directly into the Xi equation
    but not in the algebraic approximation.  Further work need to be
    done on this issue, particularly regarding the enhanced removal rate
    caused by flame compression.  Analysis using results of the spectral
    model will be required.

    For cases involving very lean Propane flames or other flames which are
    very strain-sensitive, a transport equation for the laminar flame
    speed is present.  This equation is derived using heuristic arguments
    involving the strain time scale and the strain-rate at extinction.
    the transport velocity is the same as that for the Xi equation.

    For large flames e.g. explosions additional modelling for the flame
    wrinkling due to surface instabilities may be applied.

    PDR (porosity/distributed resistance) modelling is included to handle
    regions containing blockages which cannot be resolved by the mesh.

    The fields used by this solver are:

    betav:  Volume porosity
    Lobs:   Average diameter of obstacle in cell (m)
    Aw:     Obstacle surface area per unit volume (1/m)
    CR:     Drag tensor (1/m)
    CT:     Turbulence generation parameter (1/m)
    Nv:     Number of obstacles in cell per unit volume (m^-2)
    nsv:    Tensor whose diagonal indicates the number to substract from
            Nv to get the number of obstacles crossing the flow in each
            direction.

combustion/reactingFoam

    Solver for combustion with chemical reactions.

combustion/reactingFoam/rhoReactingBuoyantFoam

    Solver for combustion with chemical reactions using a density based
    thermodynamics package with enhanced buoyancy treatment.

combustion/reactingFoam/rhoReactingFoam

    Solver for combustion with chemical reactions using density based
    thermodynamics package.

combustion/XiFoam

    Solver for compressible premixed/partially-premixed combustion with
    turbulence modelling.

    Combusting RANS code using the b-Xi two-equation model.
    Xi may be obtained by either the solution of the Xi transport
    equation or from an algebraic exression.  Both approaches are
    based on Gulder's flame speed correlation which has been shown
    to be appropriate by comparison with the results from the
    spectral model.

    Strain effects are encorporated directly into the Xi equation
    but not in the algebraic approximation.  Further work need to be
    done on this issue, particularly regarding the enhanced removal rate
    caused by flame compression.  Analysis using results of the spectral
    model will be required.

    For cases involving very lean Propane flames or other flames which are
    very strain-sensitive, a transport equation for the laminar flame
    speed is present.  This equation is derived using heuristic arguments
    involving the strain time scale and the strain-rate at extinction.
    the transport velocity is the same as that for the Xi equation.

compressible/rhoCentralFoam/rhoCentralDyMFoam

    Density-based compressible flow solver based on central-upwind schemes of
    Kurganov and Tadmor with support for mesh-motion and topology changes.

compressible/rhoCentralFoam

    Density-based compressible flow solver based on central-upwind schemes of
    Kurganov and Tadmor.

compressible/rhoPimpleFoam/rhoPimpleDyMFoam

    Transient solver for turbulent flow of compressible fluids for HVAC and
    similar applications, with optional mesh motion and mesh topology changes.

    Uses the flexible PIMPLE (PISO-SIMPLE) solution for time-resolved and
    pseudo-transient simulations.

compressible/rhoPimpleFoam

    Transient solver for turbulent flow of compressible fluids for HVAC and
    similar applications.

    Uses the flexible PIMPLE (PISO-SIMPLE) solution for time-resolved and
    pseudo-transient simulations.

compressible/rhoSimpleFoam/rhoPorousSimpleFoam

    Steady-state solver for turbulent flow of compressible fluids, with
    implicit or explicit porosity treatment and optional sources.

compressible/rhoSimpleFoam

    Steady-state solver for turbulent flow of compressible fluids.

compressible/sonicFoam/sonicDyMFoam

    Transient solver for trans-sonic/supersonic, turbulent flow of a
    compressible gas, with optional mesh motion and mesh topology changes.

compressible/sonicFoam

    Transient solver for trans-sonic/supersonic, turbulent flow of a
    compressible gas.

compressible/sonicFoam/sonicLiquidFoam

    Transient solver for trans-sonic/supersonic, laminar flow of a
    compressible liquid.

discreteMethods/dsmc/dsmcFoam

    Direct simulation Monte Carlo (DSMC) solver for, transient, multi-species
    flows.

discreteMethods/molecularDynamics/mdEquilibrationFoam

    Solver to equilibrate and/or precondition molecular dynamics systems.

discreteMethods/molecularDynamics/mdFoam

    Molecular dynamics solver for fluid dynamics.

DNS/dnsFoam

    Direct numerical simulation solver for boxes of isotropic turbulence.

electromagnetics/electrostaticFoam

    Solver for electrostatics.

electromagnetics/magneticFoam

    Solver for the magnetic field generated by permanent magnets.

    A Poisson's equation for the magnetic scalar potential psi is solved
    from which the magnetic field intensity H and magnetic flux density B
    are obtained.  The paramagnetic particle force field (H dot grad(H))
    is optionally available.

electromagnetics/mhdFoam

    Solver for magnetohydrodynamics (MHD): incompressible, laminar flow of a
    conducting fluid under the influence of a magnetic field.

    An applied magnetic field H acts as a driving force,
    at present boundary conditions cannot be set via the
    electric field E or current density J. The fluid viscosity nu,
    conductivity sigma and permeability mu are read in as uniform
    constants.

    A fictitous magnetic flux pressure pH is introduced in order to
    compensate for discretisation errors and create a magnetic face flux
    field which is divergence free as required by Maxwell's equations.

    However, in this formulation discretisation error prevents the normal
    stresses in UB from cancelling with those from BU, but it is unknown
    whether this is a serious error.  A correction could be introduced
    whereby the normal stresses in the discretised BU term are replaced
    by those from the UB term, but this would violate the boundedness
    constraint presently observed in the present numerics which
    guarantees div(U) and div(H) are zero.

financial/financialFoam

    Solves the Black-Scholes equation to price commodities.

heatTransfer/buoyantBoussinesqPimpleFoam

    Transient solver for buoyant, turbulent flow of incompressible fluids.

    Uses the Boussinesq approximation:
    \f[
        rho_{k} = 1 - beta(T - T_{ref})
    \f]

    where:
        \f$ rho_{k} \f$ = the effective (driving) kinematic density
        beta = thermal expansion coefficient [1/K]
        T = temperature [K]
        \f$ T_{ref} \f$ = reference temperature [K]

    Valid when:
    \f[
        \frac{beta(T - T_{ref})}{rho_{ref}} << 1
    \f]

heatTransfer/buoyantBoussinesqSimpleFoam

    Steady-state solver for buoyant, turbulent flow of incompressible fluids.

    Uses the Boussinesq approximation:
    \f[
        rho_{k} = 1 - beta(T - T_{ref})
    \f]

    where:
        \f$ rho_{k} \f$ = the effective (driving) density
        beta = thermal expansion coefficient [1/K]
        T = temperature [K]
        \f$ T_{ref} \f$ = reference temperature [K]

    Valid when:
    \f[
        \frac{beta(T - T_{ref})}{rho_{ref}} << 1
    \f]

heatTransfer/buoyantPimpleFoam

    Transient solver for buoyant, turbulent flow of compressible fluids for
    ventilation and heat-transfer.

    Turbulence is modelled using a run-time selectable compressible RAS or
    LES model.

heatTransfer/buoyantSimpleFoam

    Steady-state solver for buoyant, turbulent flow of compressible fluids,
    including radiation, for ventilation and heat-transfer.

heatTransfer/chtMultiRegionFoam

    Transient solver for buoyant, turbulent fluid flow and solid heat
    conduction with conjugate heat transfer between solid and fluid regions.

    It handles secondary fluid or solid circuits which can be coupled
    thermally with the main fluid region. i.e radiators, etc.

heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam

    Steady-state solver for buoyant, turbulent fluid flow and solid heat
    conduction with conjugate heat transfer between solid and fluid regions.

heatTransfer/thermoFoam

    Solver for energy transport and thermodynamics on a frozen flow field.

incompressible/adjointShapeOptimizationFoam

    Steady-state solver for incompressible, turbulent flow of non-Newtonian
    fluids with optimisation of duct shape by applying "blockage" in regions
    causing pressure loss as estimated using an adjoint formulation.

    References:
    \verbatim
        "Implementation of a continuous adjoint for topology optimization of
         ducted flows"
        C. Othmer,
        E. de Villiers,
        H.G. Weller
        AIAA-2007-3947
        http://pdf.aiaa.org/preview/CDReadyMCFD07_1379/PV2007_3947.pdf
    \endverbatim

    Note that this solver optimises for total pressure loss whereas the
    above paper describes the method for optimising power-loss.

incompressible/boundaryFoam

    Steady-state solver for incompressible, 1D turbulent flow, typically to
    generate boundary layer conditions at an inlet, for use in a simulation.

    Boundary layer code to calculate the U, k and epsilon distributions.
    Used to create inlet boundary conditions for experimental comparisons
    for which U and k have not been measured.
    Turbulence model is runtime selectable.

incompressible/icoFoam

    Transient solver for incompressible, laminar flow of Newtonian fluids.

incompressible/nonNewtonianIcoFoam

    Transient solver for incompressible, laminar flow of non-Newtonian fluids.

incompressible/pimpleFoam/pimpleDyMFoam

    Transient solver for incompressible, turbulent flow of Newtonian fluids
    on a moving mesh.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

incompressible/pimpleFoam

    Large time-step transient solver for incompressible, turbulent flow, using
    the PIMPLE (merged PISO-SIMPLE) algorithm.

    Sub-models include:
    - turbulence modelling, i.e. laminar, RAS or LES
    - run-time selectable MRF and finite volume options, e.g. explicit porosity

incompressible/pimpleFoam/SRFPimpleFoam

    Large time-step transient solver for incompressible, turbulent flow in a
    single rotating frame.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

incompressible/pisoFoam

    Transient solver for incompressible, turbulent flow, using the PISO
    algorithm.

    Sub-models include:
    - turbulence modelling, i.e. laminar, RAS or LES
    - run-time selectable MRF and finite volume options, e.g. explicit porosity

incompressible/shallowWaterFoam

    Transient solver for inviscid shallow-water equations with rotation.

    If the geometry is 3D then it is assumed to be one layers of cells and the
    component of the velocity normal to gravity is removed.

incompressible/simpleFoam/porousSimpleFoam

    Steady-state solver for incompressible, turbulent flow with
    implicit or explicit porosity treatment and support for multiple reference
    frames (MRF).

incompressible/simpleFoam

    Steady-state solver for incompressible, turbulent flow, using the SIMPLE
    algorithm.

incompressible/simpleFoam/SRFSimpleFoam

    Steady-state solver for incompressible, turbulent flow of non-Newtonian
    fluids in a single rotating frame.

lagrangian/coalChemistryFoam

    Transient solver for compressible, turbulent flow, with coal and limestone
    particle clouds, an energy source, and combustion.

lagrangian/DPMFoam

    Transient solver for the coupled transport of a single kinematic particle
    cloud including the effect of the volume fraction of particles on the
    continuous phase.

lagrangian/DPMFoam/MPPICFoam

    Transient solver for the coupled transport of a single kinematic particle
    cloud including the effect of the volume fraction of particles on the
    continuous phase. Multi-Phase Particle In Cell (MPPIC) modeling is used to
    represent collisions without resolving particle-particle interactions.

lagrangian/icoUncoupledKinematicParcelFoam/icoUncoupledKinematicParcelDyMFoam

    Transient solver for the passive transport of a single kinematic
    particle cloud, with optional mesh motion and mesh topology changes.

    Uses a pre-calculated velocity field to evolve the cloud.

lagrangian/icoUncoupledKinematicParcelFoam

    Transient solver for the passive transport of a single kinematic
    particle cloud.

    Uses a pre-calculated velocity field to evolve the cloud.

lagrangian/reactingParcelFilmFoam

    Transient solver for compressible, turbulent flow with a reacting,
    multiphase particle cloud, and surface film modelling.

lagrangian/reactingParcelFoam

    Transient solver for compressible, turbulent flow with a reacting,
    multiphase particle cloud, and optional sources/constraints.

lagrangian/reactingParcelFoam/simpleReactingParcelFoam

    Steady state solver for compressible, turbulent flow with reacting,
    multiphase particle clouds and optional sources/constraints.

lagrangian/sprayFoam/sprayDyMFoam

    Transient solver for compressible, turbulent flow with a spray particle
    cloud, with optional mesh motion and mesh topology changes.

lagrangian/sprayFoam/sprayEngineFoam

    Transient solver for compressible, turbulent engine flow with a spray
    particle cloud.

lagrangian/sprayFoam

    Transient solver for compressible, turbulent flow with a spray particle
    cloud.

lagrangian/uncoupledKinematicParcelFoam

    Transient solver for the passive transport of a particle cloud.

    Uses a pre- calculated velocity field to evolve the cloud.

multiphase/cavitatingFoam/cavitatingDyMFoam

    Transient cavitation code based on the homogeneous equilibrium model
    from which the compressibility of the liquid/vapour "mixture" is obtained,
    with optional mesh motion and mesh topology changes.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/cavitatingFoam

    Transient cavitation code based on the homogeneous equilibrium model
    from which the compressibility of the liquid/vapour "mixture" is obtained.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/compressibleInterFoam/compressibleInterDyMFoam

    Solver for 2 compressible, non-isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach,
    with optional mesh motion and mesh topology changes including adaptive
    re-meshing.

    The momentum and other fluid properties are of the "mixture" and a single
    momentum equation is solved.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/compressibleInterFoam

    Solver for 2 compressible, non-isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach.

    The momentum and other fluid properties are of the "mixture" and a single
    momentum equation is solved.

    Turbulence modelling is generic, i.e.  laminar, RAS or LES may be selected.

multiphase/compressibleMultiphaseInterFoam

    Solver for n compressible, non-isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach.

    The momentum and other fluid properties are of the "mixture" and a single
    momentum equation is solved.

    Turbulence modelling is generic, i.e.  laminar, RAS or LES may be selected.

multiphase/driftFluxFoam

    Solver for 2 incompressible fluids using the mixture approach with the
    drift-flux approximation for relative motion of the phases.

    Used for simulating the settling of the dispersed phase and other similar
    separation problems.

multiphase/driftFluxFoam

    Solver for 2 incompressible fluids using the mixture approach with the
    drift-flux approximation for relative motion of the phases.

    Used for simulating the settling of the dispersed phase and other similar
    separation problems.

multiphase/interFoam/interDyMFoam

    Solver for 2 incompressible, isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach,
    with optional mesh motion and mesh topology changes including adaptive
    re-meshing.

multiphase/interFoam

    Solver for 2 incompressible, isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach.

    The momentum and other fluid properties are of the "mixture" and a single
    momentum equation is solved.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

    For a two-fluid approach see twoPhaseEulerFoam.

multiphase/interFoam/interMixingFoam

    Solver for 3 incompressible fluids, two of which are miscible,
    using a VOF method to capture the interface.

multiphase/interPhaseChangeFoam/interPhaseChangeDyMFoam

    Solver for 2 incompressible, isothermal immiscible fluids with phase-change
    (e.g. cavitation).  Uses a VOF (volume of fluid) phase-fraction based
    interface capturing approach, with optional mesh motion and mesh topology
    changes including adaptive re-meshing.

    The momentum and other fluid properties are of the "mixture" and a
    single momentum equation is solved.

    The set of phase-change models provided are designed to simulate cavitation
    but other mechanisms of phase-change are supported within this solver
    framework.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/interPhaseChangeFoam

    Solver for 2 incompressible, isothermal immiscible fluids with phase-change
    (e.g. cavitation).  Uses a VOF (volume of fluid) phase-fraction based
    interface capturing approach.

    The momentum and other fluid properties are of the "mixture" and a
    single momentum equation is solved.

    The set of phase-change models provided are designed to simulate cavitation
    but other mechanisms of phase-change are supported within this solver
    framework.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/multiphaseEulerFoam

    Solver for a system of many compressible fluid phases including
    heat-transfer.

multiphase/multiphaseInterFoam/multiphaseInterDyMFoam

    Solver for n incompressible fluids which captures the interfaces and
    includes surface-tension and contact-angle effects for each phase, with
    optional mesh motion and mesh topology changes.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/multiphaseInterFoam

    Solver for n incompressible fluids which captures the interfaces and
    includes surface-tension and contact-angle effects for each phase.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/potentialFreeSurfaceFoam/potentialFreeSurfaceDyMFoam

    Incompressible Navier-Stokes solver with inclusion of a wave height field
    to enable single-phase free-surface approximations, with optional mesh
    motion and mesh topology changes.

    Wave height field, zeta, used by pressure boundary conditions.

    Optional mesh motion and mesh topology changes including adaptive
    re-meshing.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/potentialFreeSurfaceFoam

    Incompressible Navier-Stokes solver with inclusion of a wave height field
    to enable single-phase free-surface approximations

    Wave height field, zeta, used by pressure boundary conditions

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/reactingEulerFoam/reactingMultiphaseEulerFoam

    Solver for a system of any number of compressible fluid phases with a
    common pressure, but otherwise separate properties. The type of phase model
    is run time selectable and can optionally represent multiple species and
    in-phase reactions. The phase system is also run time selectable and can
    optionally represent different types of momentun, heat and mass transfer.

multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam

    Solver for a system of 2 compressible fluid phases with a common pressure,
    but otherwise separate properties. The type of phase model is run time
    selectable and can optionally represent multiple species and in-phase
    reactions. The phase system is also run time selectable and can optionally
    represent different types of momentun, heat and mass transfer.

multiphase/twoLiquidMixingFoam

    Solver for mixing 2 incompressible fluids.

    Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

multiphase/twoPhaseEulerFoam

    Solver for a system of 2 compressible fluid phases with one phase
    dispersed, e.g. gas bubbles in a liquid including heat-transfer.

stressAnalysis/solidDisplacementFoam

    Transient segregated finite-volume solver of linear-elastic,
    small-strain deformation of a solid body, with optional thermal
    diffusion and thermal stresses.

    Simple linear elasticity structural analysis code.
    Solves for the displacement vector field D, also generating the
    stress tensor field sigma.

stressAnalysis/solidEquilibriumDisplacementFoam

    Steady-state segregated finite-volume solver of linear-elastic,
    small-strain deformation of a solid body, with optional thermal
    diffusion and thermal stresses.

    Simple linear elasticity structural analysis code.
    Solves for the displacement vector field D, also generating the
    stress tensor field sigma.

Total 84