15 template <
typename memoryType>
30 template <
typename memoryType>
36 int numUV = (nx-1)*ny + nx*(ny-1),
51 E.resize(2*totalPoints, numUV, 24*totalPoints);
60 template <
typename memoryType>
68 real dt = db[
"simulation"][
"dt"].get<
real>();
76 for(
int l=0; l<numBodies; l++)
97 template <
typename memoryType>
__global__ void updateQT(int *QTRows, int *QTCols, real *QTVals, int QTSize, int *tags, real *coeffs)
Update the divergence operator at forcing nodes.
void initialiseBodies()
Stores the parameters of the simulation and initializes the location and motion of each immersed bodi...
virtual void updateSolverState()
Updates the location of the bodies and re-generates appropriate matrices.
double real
Is a float or a double depending on the machine precision.
virtual void writeCommon()
Writes flow variables and position of body points into files.
real forceX
force acting on each body in the x-direction
real forceY
force acting on each body in the y-direction
virtual void writeData()
Calculates and writes forces acting on each immersed body at current time.
void initialiseCommon()
Initializes parameters common to all Navier-Stokes solvers.
std::map< std::string, componentParameter > parameterDB
Map from a string to a componentParameter.
TairaColoniusSolver(parameterDB *pDB=NULL, domain *dInfo=NULL)
Constructor. Copies the database and information about the computational grid.
Stores information about the computational grid.
void initialiseArrays(int numQ, int numLambda)
Initializes all arrays required to solve the Navier-Stokes equations.
virtual void initialise()
Initializes the solvers.
Declaration of the class TairaColoniusSolver.
Solves the Navier-Stokes equations using the Immersed boundary method from Taira and Colonius (2007)...
void updateBodies()
Updates location and motion of each immersed body at current time.
void assembleMatrices()
Assembles matrices of the intermediate flux solver and the Poisson solver.
Generic Navier-Stokes solver in the presence of immersed boundaries.
Solves the Navier-Stokes equations in a rectangular domain.
Implementation of the methods of the class TairaColoniusSolver to calculate forces acting on each imm...