yade-users team mailing list archive
Mailing list archive
[Question #679320]: squashing modelling
New question #679320 on Yade:
I would like to model the vertical squashing (compression) of a porous material filled with a fluid. The material is inserted in an initially cubic box with six impermeable faces. During the squashing the material is supposed to expand freely along the side faces of the box.
I want to measure the force felt by top plate (face).
For this model, I was inspired by the oedemeter.py code developed in yade (examples) which uses the TriaxialStressController.
1- My first question concerns the parametrization of the flow engine (* at the end of message):
I want to model as initial conditions 6 impermeable boundaries as:
but I have immediatly some error messages concerning all the bodies of the code:
"55 : Vh==NULL!! id=55 Point=-261779 255626 -257189 rad=0.0669795
227 : Vh==NULL!! id=227 Point=281321 290581 293209 rad=0.0610796
285 : Vh==NULL!! id=285 Point=302977 -297801 305075 rad=0.0590901
304 : Vh==NULL!! id=304 Point=-457272 -456443 291186 rad=0.0584384
354 : Vh==NULL!! id=354 Point=-295804 297047 300808 rad=0.0567233
496 : Vh==NULL!! id=496 Point=303403 284717 -313298 rad=0.0518524
520 : Vh==NULL!! id=520 Point=310560 -309795 -315643 rad=0.0510292
572 : Vh==NULL!! id=572 Point=-336225 -819563 -802613 rad=0.0492455
CHOLMOD warning: matrix not positive definite
something went wrong in Cholesky factorization, use LDLt as fallback this time
6 : Vh==NULL!! id=6 Point=-2.05296e+15 -1.03117e+16 6.74598e+16 rad=0.0686603
7 : Vh==NULL!! id=7 Point=-6.70813e+13 7.31321e+16 5.4678e+16 rad=0.068626
when I write instead:
I have no error message apparently but this is not what I want!
2- My second question concerns the control of the dynamics of the squashing I want and the motion
for the 6 plates: a motion driven by an applied strain rate (0.1) on vertical direction and free motion with no applied
pressure for the 4 side faces:
when I ask for printing the force and position of the top plate
plate = O.bodies[triax.wall_top_id]
Ftot0 = abs(O.forces.f(plate.id))
Ftot1 = abs(O.forces.f(plate.id))
Ftot2 = abs(O.forces.f(plate.id))
xtot = plate.state.pos
ytot = plate.state.pos
ztot = plate.state.pos"
I get a constant force Ftot1 an no motion at all of the upper plate (xtot, ytot, ztot)=Cst !!
I don't understand.
Thank you very much for your enlightments,
#B. Activate flow engine and set boundary conditions in order to get permeability
#D. now the compression test, impermeable at the top, impermeable at the bottom plate and on the sides
flow.updateTriangulation=True #force remeshing to reflect new BC immediately
You received this question notification because your team yade-users is
an answer contact for Yade.