HyPar
1.0
Finite-Difference Hyperbolic-Parabolic PDE Solver on Cartesian Grids
|
Compute the interpolated value of a provided variable on immersed body surface. More...
#include <stdio.h>
#include <stdlib.h>
#include <arrayfunctions.h>
#include <immersedboundaries.h>
#include <mpivars.h>
#include <hypar.h>
Go to the source code of this file.
Functions | |
int | IBComputeFacetVar (void *s, void *m, const double *const var, int nvars, double **const face_var) |
Compute the interpolated value of a provided variable on immersed body surface.
Definition in file IBComputeFacetVar.c.
int IBComputeFacetVar | ( | void * | s, |
void * | m, | ||
const double *const | var, | ||
int | nvars, | ||
double **const | face_var | ||
) |
Calculate the interpolated value of a provided variables on the immersed body surface: for each "local facet", i.e., facets (of the immersed body surface) that lie within the local computational domain of this MPI rank, compute the interpolated value.
The variable should be a grid variable with size/layout the same as the solution variable (HyPar::u) with the appropriate number of ghost points.
If the incoming variable has multiple components, this function will calculate interpolated value of each component.
The grad var array should be NULL at input; at output, it will point to an array of size (ImmersedBoundary::nfacets_local X nvars) that contains the interpolated value at each local facet. If there are no local facets, it will remain NULL.
The interpolation is bi/tri-linear (second-order).
s | Solver object of type HyPar |
m | MPI object of type MPIVariables |
var | Variable to compute the interpolated value of |
nvars | Number of components in var |
face_var | Array to store the interpolated value; must be NULL at input |
Definition at line 33 of file IBComputeFacetVar.c.