yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #30042
[Question #708058]: Cubic fluid domain
New question #708058 on Yade:
https://answers.launchpad.net/yade/+question/708058
Dear Team,
I would like to immerse the spherical domain in a cubic fluid domain. Then I apply foice through big blue ball. Am I correct that except from big blue ball the hydrostatic (water density*g*distance between top wall and particle surface) water pressure also applying directly at the surface of the sphere? Regarding to big blue ball it created 1e251 pore pressure so I am concerned about it. Also I experienced some
CHOLMOD warning: matrix not positive definite. file: ../Supernodal/t_cholmod_super_numeric.c line: 911
something went wrong in Cholesky factorization, use LDLt as fallback this time1
Let me attach the script
Your help will be valued
from yade import utils
import time
import datetime
import os
from yade import pack, plot, export
import numpy as np
cell_a = Vector3(0, 0, 0)
cell_b = Vector3(10, 10, 10)
sphere_force = Vector3(0, 0, -10)
# create box
walls = aabbWalls((cell_a, cell_b+Vector3(0,0,10)))
O.bodies.append(walls)
# add spheres
sp = SpherePack()
sp.makeCloud(cell_a, cell_b, rMean=0.5)
cloud_ids = sp.toSimulation(color=(0,1,0))
sphere_id = O.bodies.append(sphere((5,5,18), 2, color=(0,0,1)))
# setup engines
O.engines = [
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(), Bo1_Box_Aabb()],
allowBiggerThanPeriod=True),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom(),
Ig2_Box_Sphere_ScGeom(),
Ig2_Facet_Sphere_ScGeom()
],
[Ip2_FrictMat_FrictMat_FrictPhys()],
[Law2_ScGeom_FrictPhys_CundallStrack()]
),
ForceEngine(
ids=[sphere_id],
force=sphere_force,
label='force_engine',
dead=False
),
NewtonIntegrator(damping=0.3, gravity=(0,0,-9.81), label='newton_engine'),
GlobalStiffnessTimeStepper(label='timestepper_engine'),
PyRunner(command='addPlotData()', iterPeriod=10, label='plotter', dead=False),
FlowEngine(dead=False, label='flow_engine'),
]
flow_engine.defTolerance=0.3
flow_engine.meshUpdateInterval=200
flow_engine.useSolver=3
flow_engine.permeabilityFactor=1
flow_engine.viscosity=0.00298
flow_engine.bndCondIsPressure=[0,0,0,0,0,0]
flow_engine.fluidBulkModulus=0.0001
flow_engine.bndCondValue=[0,0,0,0,0,0]
O.dt = 0.1e-5
flow_engine.boundaryUseMaxMin=[0,0,0,0,0,0]
flow_engine.updateTriangulation=True
def addPlotData():
plot.addData(
p=flow_engine.getPorePressure((0.35,0.35,0.035)),
t=O.time,
)
plot.plots = {
't': ('p')
}
plot.plot()
--
You received this question notification because your team yade-users is
an answer contact for Yade.