CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

OODLES MOVING MESH

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   October 8, 2007, 22:41
Default Dear Forum, I created a new
  #1
Member
 
Alessandro Spadoni
Join Date: Mar 2009
Location: Atlanta, GA
Posts: 65
Rep Power: 8
gtg627e is on a distinguished road
Dear Forum,

I created a new solver which includes oodles (incompressible LES solver) and moving mesh capabilities. I am currently running some simulations to valid oodlesDyMFoam, and everything seems to behave properly. I am going to check that no mass is produced at the boundaries, that the new solver is free-stream capturing, etc.

I was wondering if anybody could tell me if the following calls are acceptable:

Application
oodlesDyMFoam

Description
Incompressible LES solver with moving-mesh capabilities (dynamic mesh).

\*---------------------------------------------------------------------------*/

#include "fvCFD.H"
#include "dynamicFvMesh.H"
#include "incompressible/singlePhaseTransportModel/singlePhaseTransportModel.H"
#include "incompressible/transportModel/transportModel.H"
#include "incompressible/LESmodel/LESmodel.H"
#include "IFstream.H"
#include "OFstream.H"
#include "Random.H"

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

int main(int argc, char *argv[])
{

# include "setRootCase.H"
# include "createTime.H"
//# include "createMeshNoClear.H"
# include "createDynamicFvMesh.H"
# include "createFields.H"
# include "createAverages.H"
# include "initContinuityErrs.H"


// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

Info<< "\nStarting time loop\n" << endl;

for (runTime++; !runTime.end(); runTime++)
{
Info<< "Time = " << runTime.timeName() << nl << endl;

# include "readPISOControls.H"
# include "CourantNo.H"

//------------ MOVING-MESH COMMANDS ---------------------//

// Make the fluxes absolute
fvc::makeAbsolute(phi, U);

//# include "setDeltaT.H"

// runTime++;

// Info<< "Time = " << runTime.timeName() << nl << endl;

bool meshChanged = mesh.update();

if (mesh.moving() || meshChanged)
{
# include "correctPhi.H"
}

// Make the fluxes relative to the mesh motion
fvc::makeRelative(phi, U);

//-----------------------------------------------------//


sgsModel->correct();

fvVectorMatrix UEqn
(
fvm::ddt(U)
+ fvm::div(phi, U)
+ sgsModel->divB(U)
);

if (momentumPredictor)
{
solve(UEqn == -fvc::grad(p));
}


// --- PISO loop

for (int corr=0; corr<nCorr; corr++)
{
volScalarField rUA = 1.0/UEqn.A();

U = rUA*UEqn.H();
phi = (fvc::interpolate(U) & mesh.Sf())
+ fvc::ddtPhiCorr(rUA, U, phi);

adjustPhi(phi, U, p);

for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
{
fvScalarMatrix pEqn
(
fvm::laplacian(rUA, p) == fvc::div(phi)
);

pEqn.setReference(pRefCell, pRefValue);

if (corr == nCorr-1 && nonOrth == nNonOrthCorr)
{
pEqn.solve(mesh.solver(p.name() + "Final"));
}
else
{
pEqn.solve(mesh.solver(p.name()));
}

if (nonOrth == nNonOrthCorr)
{
phi -= pEqn.flux();
}
}

# include "continuityErrs.H"

U -= rUA*fvc::grad(p);
U.correctBoundaryConditions();
}


# include "calculateAverages.H"

runTime.write();

# include "writeNaveragingSteps.H"

Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
<< nl << endl;
}

Info<< "End\n" << endl;

return(0);
}


// ************************************************** *********************** //

I copied the calls to the mesh solver dynamicFvMesh (finite volume solver), and I would like to make sure that they are called correctly in the above solver.

Thank you in advance,

Alessandro Spadoni
gtg627e is offline   Reply With Quote

Old   October 9, 2007, 05:01
Default Hi, Alessandro! I'd like to
  #2
Member
 
Paul Mauk
Join Date: Mar 2009
Posts: 39
Rep Power: 8
plmauk is on a distinguished road
Hi, Alessandro!

I'd like to test your new solver too.
For the case, I have to solve, it seem to be
right solver.
plmauk is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Coefficienct in the oodles loneboard OpenFOAM Running, Solving & CFD 4 March 12, 2009 22:18
Moving Reference frame - UDF - Moving mesh modisa FLUENT 0 April 18, 2008 13:31
Oodles and more r2d2 OpenFOAM Running, Solving & CFD 10 September 23, 2007 01:54
Parallel oodles sriharsha OpenFOAM Running, Solving & CFD 8 January 3, 2007 12:29
Parallel oodles sriharsha OpenFOAM Running, Solving & CFD 0 December 27, 2006 18:25


All times are GMT -4. The time now is 01:10.