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

Public Member Functions

 SurfaceForce (PetscReal sigma)
 
 ~SurfaceForce () override
 
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 ComputeSource (const FiniteVolumeSolver &solver, DM dm, PetscReal time, Vec locX, Vec locFVec, void *ctx)
 

Public Attributes

std::vector< VertexStencil > vertexStencils
 

Constructor & Destructor Documentation

◆ ~SurfaceForce()

ablate::finiteVolume::processes::SurfaceForce::~SurfaceForce ( )
override

public function to link this process with the flow a

Parameters
flow

Member Function Documentation

◆ ComputeSource()

PetscErrorCode ablate::finiteVolume::processes::SurfaceForce::ComputeSource ( const FiniteVolumeSolver solver,
DM  dm,
PetscReal  time,
Vec  locX,
Vec  locFVec,
void *  ctx 
)
static

static function private function to compute surface force and add source to eulerset

Parameters
solver
dm
time
locX
fVec
ctx
Returns

Now use the stored vertex information to calculate curvature at each cell center march over the stored vortices to read the alpha values of connected cells calculate the normal at each vertex using alpha values of it's cells march over cells in the domain extract connected vortices to each cell using "closure" and read the saved normals of vortices calculate the normal at the cell center calculate the gradient of magnitude of vertex normals and divergent of normals at the cell center use the computed values to calculate the curvature at the center

◆ Setup()

void ablate::finiteVolume::processes::SurfaceForce::Setup ( ablate::finiteVolume::FiniteVolumeSolver fv)
overridevirtual

Setup up all functions not dependent upon the mesh

Parameters
fv

Make stencils for connected cells of each vertex and store them extract the vortices and get their coordinates march over each vertex and store the vertex point extract the cells in the domain then identify the connected cells to the vertex using "PETSc-Closure" and store extract the connected cells info and store calculate the weights for gradient by summing the distances of connected cells to the vertex and store push back for this vertex

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


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