ABLATE Source Documentation  0.12.34
ablate::finiteVolume::processes::NavierStokesTransport Class Reference
+ Inheritance diagram for ablate::finiteVolume::processes::NavierStokesTransport:

Classes

struct  AdvectionData
 
struct  DiffusionData
 

Public Member Functions

 NavierStokesTransport (const std::shared_ptr< parameters::Parameters > &parameters, std::shared_ptr< eos::EOS > eos, std::shared_ptr< fluxCalculator::FluxCalculator > fluxCalcIn={}, std::shared_ptr< eos::transport::TransportModel > transportModel={}, std::shared_ptr< ablate::finiteVolume::processes::PressureGradientScaling >={})
 
void Setup (ablate::finiteVolume::FiniteVolumeSolver &flow) override
 
- Public Member Functions inherited from ablate::finiteVolume::processes::Process
virtual void Initialize (ablate::finiteVolume::FiniteVolumeSolver &fv)
 

Static Public Member Functions

static PetscErrorCode UpdateAuxTemperatureField (PetscReal time, PetscInt dim, const PetscFVCellGeom *cellGeom, const PetscInt uOff[], const PetscScalar *conservedValues, const PetscInt aOff[], PetscScalar *auxField, void *ctx)
 
static PetscErrorCode UpdateAuxVelocityField (PetscReal time, PetscInt dim, const PetscFVCellGeom *cellGeom, const PetscInt uOff[], const PetscScalar *conservedValues, const PetscInt aOff[], PetscScalar *auxField, void *ctx)
 
static PetscErrorCode UpdateAuxPressureField (PetscReal time, PetscInt dim, const PetscFVCellGeom *cellGeom, const PetscInt uOff[], const PetscScalar *conservedValues, const PetscInt aOff[], PetscScalar *auxField, void *ctx)
 
static PetscErrorCode AdvectionFlux (PetscInt dim, const PetscFVFaceGeom *fg, const PetscInt uOff[], const PetscScalar fieldL[], const PetscScalar fieldR[], const PetscInt aOff[], const PetscScalar auxL[], const PetscScalar auxR[], PetscScalar *flux, void *ctx)
 
static PetscErrorCode DiffusionFlux (PetscInt dim, const PetscFVFaceGeom *fg, const PetscInt uOff[], const PetscInt uOff_x[], const PetscScalar field[], const PetscScalar grad[], const PetscInt aOff[], const PetscInt aOff_x[], const PetscScalar aux[], const PetscScalar gradAux[], PetscScalar flux[], void *ctx)
 
static PetscErrorCode CompressibleFlowComputeStressTensor (PetscInt dim, PetscReal mu, const PetscReal *gradVel, PetscReal *tau)
 

Constructor & Destructor Documentation

◆ NavierStokesTransport()

ablate::finiteVolume::processes::NavierStokesTransport::NavierStokesTransport ( const std::shared_ptr< parameters::Parameters > &  parameters,
std::shared_ptr< eos::EOS eos,
std::shared_ptr< fluxCalculator::FluxCalculator fluxCalcIn = {},
std::shared_ptr< eos::transport::TransportModel transportModel = {},
std::shared_ptr< ablate::finiteVolume::processes::PressureGradientScaling pgs = {} 
)

public constructor for euler advection

Member Function Documentation

◆ AdvectionFlux()

PetscErrorCode ablate::finiteVolume::processes::NavierStokesTransport::AdvectionFlux ( PetscInt  dim,
const PetscFVFaceGeom *  fg,
const PetscInt  uOff[],
const PetscScalar  fieldL[],
const PetscScalar  fieldR[],
const PetscInt  aOff[],
const PetscScalar  auxL[],
const PetscScalar  auxR[],
PetscScalar *  flux,
void *  ctx 
)
static

This Computes the Flow Euler flow for rho, rhoE, and rhoVel. u = {"euler"} or {"euler", "densityYi"} if species are tracked a = {} ctx = FlowData_CompressibleFlow

Returns

◆ CompressibleFlowComputeStressTensor()

PetscErrorCode ablate::finiteVolume::processes::NavierStokesTransport::CompressibleFlowComputeStressTensor ( PetscInt  dim,
PetscReal  mu,
const PetscReal *  gradVel,
PetscReal *  tau 
)
static

static support function to compute the stress tensor

Parameters
dim
mu
gradVelL
gradVelR
tau
Returns

◆ DiffusionFlux()

PetscErrorCode ablate::finiteVolume::processes::NavierStokesTransport::DiffusionFlux ( PetscInt  dim,
const PetscFVFaceGeom *  fg,
const PetscInt  uOff[],
const PetscInt  uOff_x[],
const PetscScalar  field[],
const PetscScalar  grad[],
const PetscInt  aOff[],
const PetscInt  aOff_x[],
const PetscScalar  aux[],
const PetscScalar  gradAux[],
PetscScalar  flux[],
void *  ctx 
)
static

This Computes the diffusion flux for euler rhoE, rhoVel u = {"euler", "densityYi"} a = {"temperature", "velocity"} ctx = FlowData_CompressibleFlow

Returns

◆ Setup()

void ablate::finiteVolume::processes::NavierStokesTransport::Setup ( ablate::finiteVolume::FiniteVolumeSolver flow)
overridevirtual

public function to link this process with the flow

Parameters
flow

Implements ablate::finiteVolume::processes::Process.

◆ UpdateAuxPressureField()

PetscErrorCode ablate::finiteVolume::processes::NavierStokesTransport::UpdateAuxPressureField ( PetscReal  time,
PetscInt  dim,
const PetscFVCellGeom *  cellGeom,
const PetscInt  uOff[],
const PetscScalar *  conservedValues,
const PetscInt  aOff[],
PetscScalar *  auxField,
void *  ctx 
)
static

Function to compute the velocity. This function assumes that the input values will be {"euler", "densityYi }

◆ UpdateAuxTemperatureField()

PetscErrorCode ablate::finiteVolume::processes::NavierStokesTransport::UpdateAuxTemperatureField ( PetscReal  time,
PetscInt  dim,
const PetscFVCellGeom *  cellGeom,
const PetscInt  uOff[],
const PetscScalar *  conservedValues,
const PetscInt  aOff[],
PetscScalar *  auxField,
void *  ctx 
)
static

Function to compute the temperature field. This function assumes that the input values will be {"euler", "densityYi"}

◆ UpdateAuxVelocityField()

PetscErrorCode ablate::finiteVolume::processes::NavierStokesTransport::UpdateAuxVelocityField ( PetscReal  time,
PetscInt  dim,
const PetscFVCellGeom *  cellGeom,
const PetscInt  uOff[],
const PetscScalar *  conservedValues,
const PetscInt  aOff[],
PetscScalar *  auxField,
void *  ctx 
)
static

Function to compute the velocity. This function assumes that the input values will be {"euler"}


The documentation for this class was generated from the following files: