proteus.mprans.MCorr module

class proteus.mprans.MCorr.Coefficients(applyCorrection=True, epsFactHeaviside=0.0, epsFactDirac=1.0, epsFactDiffusion=2.0, LSModel_index=3, V_model=2, me_model=5, VOFModel_index=4, checkMass=True, sd=True, nd=None, applyCorrectionToDOF=True, useMetrics=0.0, useConstantH=False)[source]

Bases: proteus.TransportCoefficients.TC_base

initializeMesh(mesh)[source]
attachModels(modelList)[source]
initializeElementQuadrature(t, cq)[source]
initializeElementBoundaryQuadrature(t, cebq, cebq_global)[source]
initializeGlobalExteriorElementBoundaryQuadrature(t, cebqe)[source]
preStep(t, firstStep=False)[source]
postStep(t, firstStep=False)[source]
evaluate(t, c)[source]
levelSetConservationCoefficientsEvaluate()[source]

evaluate the coefficients of the volume conservation correction for level set methods

levelSetConservationCoefficientsEvaluate_sd()[source]

evaluate the coefficients of the volume conservation correction for level set methods

class proteus.mprans.MCorr.LevelModel(uDict, phiDict, testSpaceDict, matType, dofBoundaryConditionsDict, dofBoundaryConditionsSetterDict, coefficients, elementQuadrature, elementBoundaryQuadrature, fluxBoundaryConditionsDict=None, advectiveFluxBoundaryConditionsSetterDict=None, diffusiveFluxBoundaryConditionsSetterDictDict=None, stressTraceBoundaryConditionsSetterDict=None, stabilization=None, shockCapturing=None, conservativeFluxDict=None, numericalFluxType=None, TimeIntegrationClass=None, massLumping=False, reactionLumping=False, options=None, name='defaultName', reuse_trial_and_test_quadrature=True, sd=True, movingDomain=False, bdyNullSpace=False)[source]

Bases: proteus.Transport.OneLevelTransport

nCalls = 0[source]
calculateCoefficients()[source]
calculateElementResidual()[source]
getResidual(u, r)[source]
getJacobian(jacobian)[source]
elementSolve(u, r)[source]
elementConstantSolve(u, r)[source]
globalConstantRJ(u, r, U)[source]
globalConstantSolve(u, r)[source]
calculateElementQuadrature()[source]

Calculate the physical location and weights of the quadrature rules and the shape information at the quadrature points.

This function should be called only when the mesh changes.

calculateElementBoundaryQuadrature()[source]
calculateExteriorElementBoundaryQuadrature()[source]
estimate_mt()[source]
calculateAuxiliaryQuantitiesAfterStep()[source]
calculateMass(q_phi)[source]
setMassQuadrature()[source]
calculateSolutionAtQuadrature()[source]
updateAfterMeshMotion()[source]
class proteus.mprans.MCorr.DummyNewton(linearSolver, F, J=None, du=None, par_du=None, rtol_r=0.0001, atol_r=1e-16, rtol_du=0.0001, atol_du=1e-16, maxIts=100, norm=<function l2Norm>, convergenceTest='r', computeRates=True, printInfo=True, fullNewton=True, directSolver=False, EWtol=True, maxLSits=100)[source]

Bases: proteus.NonlinearSolvers.NonlinearSolver

info()[source]
solve(u, r=None, b=None, par_u=None, par_r=None)[source]
class proteus.mprans.MCorr.ElementNewton(linearSolver, F, J=None, du=None, par_du=None, rtol_r=0.0001, atol_r=1e-16, rtol_du=0.0001, atol_du=1e-16, maxIts=100, norm=<function l2Norm>, convergenceTest='r', computeRates=True, printInfo=True, fullNewton=True, directSolver=False, EWtol=True, maxLSits=100)[source]

Bases: proteus.NonlinearSolvers.NonlinearSolver

info()[source]
solve(u, r=None, b=None, par_u=None, par_r=None)[source]
class proteus.mprans.MCorr.ElementConstantNewton(linearSolver, F, J=None, du=None, par_du=None, rtol_r=0.0001, atol_r=1e-16, rtol_du=0.0001, atol_du=1e-16, maxIts=100, norm=<function l2Norm>, convergenceTest='r', computeRates=True, printInfo=True, fullNewton=True, directSolver=False, EWtol=True, maxLSits=100)[source]

Bases: proteus.NonlinearSolvers.NonlinearSolver

info()[source]
solve(u, r=None, b=None, par_u=None, par_r=None)[source]
class proteus.mprans.MCorr.GlobalConstantNewton(linearSolver, F, J=None, du=None, par_du=None, rtol_r=0.0001, atol_r=1e-16, rtol_du=0.0001, atol_du=1e-16, maxIts=100, norm=<function l2Norm>, convergenceTest='r', computeRates=True, printInfo=True, fullNewton=True, directSolver=False, EWtol=True, maxLSits=100)[source]

Bases: proteus.NonlinearSolvers.NonlinearSolver

info()[source]
solve(u, r=None, b=None, par_u=None, par_r=None)[source]
proteus.mprans.MCorr.conservationNorm(x)[source]
class proteus.mprans.MCorr.Newton_controller(model, nOptions)[source]

Bases: proteus.StepControl.Newton_controller

initializeTimeHistory()[source]