Loading [MathJax]/extensions/tex2jax.js
Apps
All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Modules Pages
footing.lua File Reference

Functions

function footing2D add_boundary_conditions (domainDisc, bStationary)
 
function footing2D add_elem_discs (domainDisc, bStationary)
 
function footing2D add_uzawa_discs (domainDisc)
 
function footing2D create_domain (numRefs, numPreRefs)
 
function footing2D error_estimator ()
 
function GenericAddStabilization (self, domainDisc)
 
function GenericFootingCharTime (self)
 
function GenericFootingInit (self)
 
function GenericParseCmdArgs (self)
 
function footing2D get_char_time ()
 
function footing2D init (kperm, nporo, nu, cmedium, cfluid, csolid, volumetricweight)
 
function footing2D interpolate_start_values (u, startTime)
 
function footing2D parse_cmd_args ()
 
function footing2D post_processing (u, step, time)
 

Function Documentation

◆ add_boundary_conditions()

function mandel3d add_boundary_conditions ( domainDisc  ,
bStationary   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :176-202

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :284-310

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / mandel.lua :426-442

function mandel3d:add_boundary_conditions(domainDisc, bStationary)
local neumann = NeumannBoundaryFE("ux")
neumann:add(Mandel3dPressure, "TOP", "INNER")
neumann:add(Mandel3dPressure, "BOT", "INNER")
domainDisc:add(neumann)
local dirichlet = DirichletBoundary()
dirichlet:add(Mandel3dHorizDisp, "ux", "TOP, BOT")
dirichlet:add(0.0, "uy", "TOP, BOT")
dirichlet:add(0.0, "uy", "FRONT, BACK")
dirichlet:add(Mandel3dVertDisp, "uz", "TOP, BOT")
dirichlet:add(0.0, "p", "RIGHT, LEFT")
domainDisc:add(dirichlet)
function *Umax *y end
Definition channel.lua:87
function footing2D add_boundary_conditions(domainDisc, bStationary)
function Mandel3dHorizDisp(x, y, z, t)
function Mandel3dPressure(x, y, z, t)
function Mandel3dVertDisp(x, y, z, t)

References if().

◆ add_elem_discs()

function mandel3d add_elem_discs ( domainDisc  ,
bStationary   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :161-168

function footing2D:add_elem_discs(domainDisc, bStationary)
CommonAddBiotElemDiscs(self, domainDisc, bStationary)
GenericAddStabilization(self, domainDisc)
function footing2D add_elem_discs(domainDisc, bStationary)
function GenericAddStabilization(self, domainDisc)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :272-276

function footing2D_tri:add_elem_discs(domainDisc, bStationary)
CommonAddBiotElemDiscs(self, domainDisc, bStationary)
GenericAddStabilization(self, domainDisc)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / mandel.lua :444-446

function mandel3d:add_elem_discs(domainDisc, bStationary)
MandelAddElemDiscs(self, domainDisc, bStationary)

◆ add_uzawa_discs()

function footing2D_tri add_uzawa_discs ( domainDisc  )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :171-173

function footing2D:add_uzawa_discs(domainDisc)
CommonAddMassMatrixDiscs(self, domainDisc)
function footing2D add_uzawa_discs(domainDisc)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :279-281

function footing2D_tri:add_uzawa_discs(domainDisc)
CommonAddMassMatrixDiscs(self, domainDisc)

◆ create_domain()

function mandel3d create_domain ( numRefs  ,
numPreRefs   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :155-158

function footing2D:create_domain(numRefs, numPreRefs)
local dom = util.CreateAndDistributeDomain(self.gridName, numRefs, numPreRefs, self.mandatorySubsets)
return dom
parameterNumber numPreRefs
number of refinements before parallel distribution
Definition cubeincube.lua:11
function footing2D create_domain(numRefs, numPreRefs)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :268-270

function footing2D_tri:create_domain(numRefs, numPreRefs)
return util.CreateAndDistributeDomain(self.gridName, numRefs, numPreRefs, self.mandatorySubsets)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / mandel.lua :382-385

function mandel3d:create_domain(numRefs, numPreRefs)
local dom = util.CreateAndDistributeDomain(self.gridName, numRefs, numPreRefs, self.mandatorySubsets)
return dom

References mu, and nu.

◆ error_estimator()

function footing2D_tri error_estimator ( )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :222-234

function footing2D:error_estimator()
local p = self.elemDiscParams[1]
local gamma2 = (p.LAMBDA+2*p.MU)*(p.LAMBDA+2*p.MU)
print("footing2D:error_estimator: gamma="..gamma2)
local biotErrorEst = CompositeGridFunctionEstimator()
biotErrorEst:add(H1SemiComponentSpace("ux", 4, gamma2, p.VOLUME))
biotErrorEst:add(H1SemiComponentSpace("uy", 4, gamma2, p.VOLUME))
biotErrorEst:add(L2ComponentSpace("p", 2))
return biotErrorEst
function footing2D error_estimator()

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :331-343

function footing2D_tri:error_estimator()
local p = self.elemDiscParams[1]
local gamma2 = (p.LAMBDA+2*p.MU)*(p.LAMBDA+2*p.MU)
print("footing2D:error_estimator: gamma="..gamma2)
local biotErrorEst = CompositeGridFunctionEstimator()
biotErrorEst:add(H1SemiComponentSpace("ux", 4, gamma2, p.VOLUME))
biotErrorEst:add(H1SemiComponentSpace("uy", 4, gamma2, p.VOLUME))
biotErrorEst:add(L2ComponentSpace("p", 2))
return biotErrorEst

References if().

◆ GenericAddStabilization()

function GenericAddStabilization ( self  ,
domainDisc   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :55-72

function GenericAddStabilization(self, domainDisc)
if (self.vStab and self.porder==self.uorder) then
local stab = self.vStab or 0.0
print ("stab="..stab)
self.stabDisc = {}
for i=1,#self.elemDiscParams do
local _parami = self.elemDiscParams[i]
local _gammai = (_parami.LAMBDA+2*_parami.MU)
print ("GenericAddStabilization: "..stab/_gammai.." on ".._parami["VOLUME"])
self.stabDisc[i] = ConvectionDiffusionStabFE("p", _parami["VOLUME"], stab/_gammai)
domainDisc:add(self.stabDisc[i])
end -- for
end --if
parameterString stab
Stabilization type.
Definition navier_stokes.lua:11

◆ GenericFootingCharTime()

function GenericFootingCharTime ( self  )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :123-132

function GenericFootingCharTime(self)
local tchar = 0.0
for i=1,#self.elemDiscParams do
local consolidation = self.elemDiscParams[i].KAPPA* (self.elemDiscParams[i].LAMBDA + 2*self.elemDiscParams[i].MU)
print ("Characteristic time: " .. (1.0*1.0)/consolidation)
tchar = math.max(tchar, (1.0*1.0)/consolidation)
end -- for
return tchar -- seconds
function GenericFootingCharTime(self)

◆ GenericFootingInit()

function GenericFootingInit ( self  )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :74-120

◆ GenericParseCmdArgs()

function GenericParseCmdArgs ( self  )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :36-53

function GenericParseCmdArgs(self)
self.bRAP = self.bRAP or util.HasParamOption("--use-rap", "Using Galerkin product")
self.porder = util.GetParamNumber("--orderP", 1, "Order for pressure")
self.uorder = util.GetParamNumber("--orderU", 2, "Order for displacement")
self.vStab = util.GetParamNumber("--stab", 0.0, "Stabilization")
if (self.bRAP) then
print ("bAdjustTransfers=false")
self.bAdjustTransfers = true
else
print ("bAdjustTransfers=true")
self.bAdjustTransfers = true
print ("pOrder="..self.porder)
print ("uOrder="..self.uorder)
print ("vStab0="..self.vStab)
parameterNumber porder
Definition adrivencavity.lua:5
function GenericParseCmdArgs(self)

◆ get_char_time()

function mandel3d get_char_time ( )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :209-211

function footing2D:get_char_time()
function footing2D get_char_time()

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :318-320

function footing2D_tri:get_char_time()

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / mandel.lua :398-400

function mandel3d:get_char_time()
return MandelGetCharTime_(self)

References numRefs.

◆ init()

function footing2D_tri init ( kperm  ,
nporo  ,
nu  ,
cmedium  ,
cfluid  ,
csolid  ,
volumetricweight   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :205-207

function footing2D:init(kperm, nporo, nu, cmedium, cfluid, csolid, volumetricweight)
function GenericFootingInit(self)
virtual void init()
parameterNumber nu
Definition tut13_adaptive_time_integration.lua:9

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :313-316

function footing2D_tri:init(kperm, nporo, nu, cmedium, cfluid, csolid, volumetricweight)
print ("WARNING: Ignoring all parameters")

◆ interpolate_start_values()

function mandel3d interpolate_start_values ( ,
startTime   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :214-218

function footing2D:interpolate_start_values(u, startTime)
Interpolate(0.1, u, "p", startTime)
Interpolate(0.0, u, "ux", startTime)
Interpolate(0.0, u, "uy", startTime)
function footing2D interpolate_start_values(u, startTime)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :323-327

function footing2D_tri:interpolate_start_values(u, startTime)
Interpolate(0.1, u, "p", startTime)
Interpolate(0.0, u, "ux", startTime)
Interpolate(0.0, u, "uy", startTime)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / mandel.lua :448-453

function mandel3d:interpolate_start_values(u, startTime)
Interpolate(0.5*(self.qForce/self.a), u, "p", startTime)
Interpolate(0.0, u, "ux", startTime)
Interpolate(0.0, u, "uy", startTime)
Interpolate(0.0, u, "uz", startTime)

◆ parse_cmd_args()

function footing2D_tri parse_cmd_args ( )

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :134-153

function footing2D:parse_cmd_args()
self.bRAP = self.bRAP or util.HasParamOption("--use-rap", "Using Galerkin product")
self.porder = util.GetParamNumber("--orderP", self.porder, "Order for pressure")
self.uorder = util.GetParamNumber("--orderU", self.uorder, "Order for displacement")
self.vStab = util.GetParamNumber("--stab", self.vStab, "Stabilization")
if (self.bRAP) then
print ("bAdjustTransfers=false")
self.bAdjustTransfers = true
else
print ("bAdjustTransfers=true")
self.bAdjustTransfers = true
print ("pOrder="..self.porder)
print ("uOrder="..self.uorder)
print ("vStab0="..self.vStab)
function footing2D parse_cmd_args()

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :264-266

function footing2D_tri:parse_cmd_args()

References mu, and nu.

◆ post_processing()

function mandel3d post_processing ( ,
step  ,
time   
)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :238-240

function footing2D:post_processing(u, step, time)
function footing2D post_processing(u, step, time)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / footing.lua :347-349

function footing2D_tri:post_processing(u, step, time)

location: /home/runner/work/docs/docs/ug4/apps/poroelasticity/scripts / mandel.lua :456-464

function mandel3d:post_processing(u, step, time)
local testResults = {}
for k=0,20 do
testResults[k] = self:compute_p(k/20, 0.0, time)
print ((self.a*k/20) .."\t"..testResults[k])
function mandel2d compute_p(xhat, yhat, t)

References dim, p, and porder.