Re: [Yade-users] [Question #684008]: aabb walls don't move after apply a force

2019-09-18 Thread Jan Stránský
Question #684008 on Yade changed:
https://answers.launchpad.net/yade/+question/684008

Status: Open => Answered

Jan Stránský proposed the following answer:
Hello,

the same as in [1]:
"please provide a script which is ... minimal = if the problem is moving the 
wall, a script with one wall should be enough"

hint: print(upper_wall.state.blockedDOFs)

cheers
Jan

[1] https://answers.launchpad.net/yade/+question/682676

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #683388]: How to clump spheres and facet obtained from stl format

2019-09-18 Thread Launchpad Janitor
Question #683388 on Yade changed:
https://answers.launchpad.net/yade/+question/683388

Status: Open => Expired

Launchpad Janitor expired the question:
This question was expired because it remained in the 'Open' state
without activity for the last 15 days.

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #684008]: aabb walls don't move after apply a force

2019-09-18 Thread Anqi H
New question #684008 on Yade:
https://answers.launchpad.net/yade/+question/684008

Hi everyone,

I recently installed yade-2019-08-28.git-430b5a3 and found the script that 
worked with the old yade (apt install yade) is not working with the updated 
version. Specifically, a force is applied on an aabb wall, but the wall 
position does not change and the velocity shows to be zero. I have attached my 
script below, would anyone be able to help me have a look? Thank you.

# !/usr/bin/python
# -*- coding: utf-8 -*-

from yade import utils
from yade import pack
from yade import plot
from yade import qt
from yade import export

# input parameter
Young = 57e8 # 100Gpa
FrictAng = atan(0.5)
Density = 2650
Poisson = 0.28
Cohesion = 38e6 # pa
TensileStr = 38e6 # pa

#define rock and wall
rock = 
JCFpmMat(young=Young,frictionAngle=FrictAng,density=Density,poisson=Poisson,tensileStrength=TensileStr,cohesion=Cohesion)
wall = 
JCFpmMat(young=2.06e11,frictionAngle=radians(30),density=7800,poisson=0.3,tensileStrength=0,cohesion=0)

for Mat in (rock,wall):
 O.materials.append(Mat)

# regularOrth packing of the rock
rock_pred = pack.inAlignedBox((0,0,0),(.02,.03,.02))
assembly = pack.regularOrtho(rock_pred,radius=0.0002,gap=0,material=rock)
r_assembly=O.bodies.append(assembly)

# aabbWalls
wall = 
O.bodies.append(utils.aabbWalls(material=wall,thickness=0.000,color=(1,1,1)))


# set velocity for bottom/upper wall
bottom_wall = O.bodies[wall[2]]
#bottom_wall.state.blockedDOFs = 'zXY'
bottom_wall.state.mass = 1

upper_wall = O.bodies[wall[3]]
#upper_wall.state.blockedDOFs = 'zXY'
upper_wall.state.mass = 1

O.forces.setPermF(upper_wall.id, (0,-1,0)) 
O.forces.setPermF(bottom_wall.id, (0,1,0))


def addPlot():
 print (str(upper_wall.state.pos[1]))
 print ('wall velocity'+str(upper_wall.state.vel))
 O.forces.setPermF(upper_wall.id, (0,-1,0))

###
# ENGINES
###

O.engines=[
 ForceResetter(),
 # enlarge interaction radius between spheres 
 
InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=1.25,label='bo1s'),Bo1_Box_Aabb()]),
 InteractionLoop(
  
[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=1.25,label='ig2s'),Ig2_Box_Sphere_ScGeom()],
  [Ip2_JCFpmMat_JCFpmMat_JCFpmPhys(cohesiveTresholdIteration=1)],
  
[Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM(recordCracks=True,label='lawFunctor')]
 ),
 # VTKRecorder(fileName='post/uniCom-',recorders=['all'],iterPeriod=50),
 
GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=5,timestepSafetyCoefficient=0.8,defaultDt=PWaveTimeStep()),
 NewtonIntegrator(damping=0.3,gravity=(0,0,0)),
 #call addPlot() every 20 steps
 PyRunner(command='addPlot()', realPeriod=20)
]
O.trackEnergy=True
O.step()

bo1s.aabbEnlargeFactor=1
ig2s.interactionDetectionFactor=1

#set an optimal timestep
O.dt = utils.PWaveTimeStep()
O.usesTimeStepper = True


-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #682676]: Wall position doesn't change after applying force

2019-09-18 Thread Jan Stránský
Question #682676 on Yade changed:
https://answers.launchpad.net/yade/+question/682676

Jan Stránský posted a new comment:
Moved to https://answers.launchpad.net/yade/+question/684008

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #683934]: Bond broken and non movement of cohesive particles

2019-09-18 Thread Jan Stránský
Question #683934 on Yade changed:
https://answers.launchpad.net/yade/+question/683934

Jan Stránský posted a new comment:
Ok, maybe not 8+8, maybe 60+60..
A good approach could be to preserve the geometry and just use larger 
particles. Then even you can paste these a few lines of saved .txt files inside 
one question.
Thanks
Jan

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #683388]: How to clump spheres and facet obtained from stl format

2019-09-18 Thread Jan Stránský
Question #683388 on Yade changed:
https://answers.launchpad.net/yade/+question/683388

Jan Stránský posted a new comment:
What about the stl? is it closed and the problem comes from the format 
conversion?
If yes, there should be some solution.
If no, then the surface should be closed, but I don't know about very easy 
methods..
Also note the gts.Surface.cleanup method, which should merge close vertices 
(and possibly close the surface, but I did not test it).
cheers
Jan

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #684008]: aabb walls don't move after apply a force

2019-09-18 Thread Anqi H
Question #684008 on Yade changed:
https://answers.launchpad.net/yade/+question/684008

Status: Answered => Open

Anqi H is still having a problem:
Hi Jan,

Thank you for the catch. I've uncommented the code that defined
blockedDOFs, but now I've got very different error messages when I run
the simulations. It seems like it does not recognize a character in the
line 'upper_wall.state.blockedDOFs = 'zXY'', but this line of code
doesn't have any issues in the old yade install.

ValueError: cannot convert float NaN to integer
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1267, in 
__call__
self.handler((etype, evalue, etb))
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1256, in 
handler
ostream.write(self.text(etype, evalue, etb))
UnicodeEncodeError: 'latin-1' codec can't encode character '\u03bc' in position 
2659: ordinal not in range(256)

Original exception was:
Traceback (most recent call last):
  File 
"/usr/local/yadeFoam/install/lib/x86_64-linux-gnu/yade-2019-08-28.git-430b5a3/py/yade/qt/__init__.py",
 line 199, in refreshEvent
self.refreshValues()
  File 
"/usr/local/yadeFoam/install/lib/x86_64-linux-gnu/yade-2019-08-28.git-430b5a3/py/yade/qt/__init__.py",
 line 272, in refreshValues
s=int(t); ms=int(t*1000)%1000; us=int(t*100)%1000; 
ns=int(t*10)%1000

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #684018]: unbreakable clumps to breakable ones(glued spheres)

2019-09-18 Thread Ali Rafiee
New question #684018 on Yade:
https://answers.launchpad.net/yade/+question/684018

Hi everyone,
I'm trying to convert a compact clumps to a glued spheres; the spheres inside 
of each clump become cohesive meanwhile the spheres of two different clumps 
remain without cohesion, however they may be in contact after compaction phase.

I know this type of operation is possible in Yade, but I seek a method more 
practical in the way that after releasing spheres from a clump the spheres 
inside this clump become cohesive with a given cohesive material definition.


Thanks a lot


-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #684021]: CHOLMOD warning: matrix not positive definite

2019-09-18 Thread Chu
New question #684021 on Yade:
https://answers.launchpad.net/yade/+question/684021

Hi,
I'd like to use PeriodicFlowEngine,and I test it in below script.When the 
PeriodicFlowEngine is actived,I got the warning:

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

Is there any error in my script,or something wrong with Yade?
Thanks for your any suggestions.

##
from __future__ import print_function
from yade import pack,qt
O.periodic=True

O.cell.hSize=Matrix3(0.1, 0, 0,
0 ,0.1, 0,
0, 0, 0.1)

sp=pack.SpherePack()
radius=5e-3
num=sp.makeCloud(Vector3().Zero,O.cell.refSize,radius,.2,500,periodic=True) # 
min,max,radius,rRelFuzz,spheresInCell,periodic
O.bodies.append([sphere(s[0],s[1]) for s in sp])


O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb()],verletDist=.05*radius),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom()],
[Ip2_FrictMat_FrictMat_FrictPhys()],
[Law2_ScGeom_FrictPhys_CundallStrack()]
),

PeriTriaxController(dynCell=True,mass=0.2,maxUnbalanced=0.01,relStressTol=0.02,goal=(-1e4,-1e4,0),stressMask=3,globUpdate=5,maxStrainRate=(1.,1.,1.),doneHook='triaxDone()',label='triax'),
NewtonIntegrator(damping=.2),
PeriodicFlowEngine(dead=1,label='flow')
]
O.dt=PWaveTimeStep()
O.run();
qt.View()

phase=0

flow.meshUpdateInterval=200
flow.useSolver=3
flow.permeabilityFactor=1
flow.bndCondIsPressure=[1,1,0,0,0,0]
flow.bndCondValue=[0,1,0,0,0,0]

def triaxDone():
triax.dead=1
flow.dead=0
flow.updateTriangulation=True
O.pause()
##

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #684022]: What does dynCell = True mean in PeriTriaxController?

2019-09-18 Thread Rong Zhao
New question #684022 on Yade:
https://answers.launchpad.net/yade/+question/684022

Hi, everybody! 
I am confused about something with the tutorial of Periodic triaxial test. To 
be specific,  I  don't understand that What does dynCell = True mean in 
PeriTriaxController? And why maxStrainrate takes the value of  (10, 10, 10)?
Here is the part codes in the tutorial.

PeriTriaxController(label='triax',
# specify target values and whether they are strains or stresses
goal=(sigmaIso,sigmaIso,sigmaIso),stressMask=7,
# type of servo-control
dynCell=True,maxStrainRate=(10,10,10),
# wait until the unbalanced force goes below this value
maxUnbalanced=.1,relStressTol=1e-3,
# call this function when goal is reached and the packing is 
stable
doneHook='compactionFinished()'
),

Thanks


-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #684021]: CHOLMOD warning: matrix not positive definite

2019-09-18 Thread Chu
Question #684021 on Yade changed:
https://answers.launchpad.net/yade/+question/684021

Chu posted a new comment:
BTW, I use Yade version 2019-09-03.git-9f49d21f

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #683967]: GlobalStiffnessTimeStepper with Potential Blocks

2019-09-18 Thread Janek Kozicki
Question #683967 on Yade changed:
https://answers.launchpad.net/yade/+question/683967

Janek Kozicki posted a new comment:
Great solution, Bruno! :)

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #684030]: example of FEMxDEM simulation

2019-09-18 Thread Alireza Sadeghi
New question #684030 on Yade:
https://answers.launchpad.net/yade/+question/684030

Hello All,

Is it possible to share the python code of the example of [1]?
I am new in multi scale simulation and I want to have a complete example of it. 
In addition, I install both the YADE and Escript on my PC. I know how to work 
with both softwares. Am I have to install another software except YADE and 
Escript?
Thank you very much for your help in advance.

Best Regards

Alireza

[1] https://yade-dem.org/doc/FEMxDEM.html#example-tests

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #684027]: How to use MatchMaker for two Ip2

2019-09-18 Thread Leonard
New question #684027 on Yade:
https://answers.launchpad.net/yade/+question/684027

Hi,
I'd like to ask how to use MatchMaker for the case that there are two Ip2. 
For example, in a triaxial simulation, there are 3 kinds of bodies : wall, sand 
and cement. 
What I want to achieve for the simulation is that cement-cement and cement-sand 
contacts are CohFrictPhys (with cohesion) and wall-cement, wall-sand, sand-sand 
contacts are FrictPhys because I suppose adhesion only exists between 
cement-cement as well as cement-sand. And thanks for Jan's suggestion in [1], 
"using just CohFrictMat/CohFrictPhys and using MatchMaker for sand-sand 
contacts to behave like FrictPhys", I set the engines like below:
#
wall=O.materials.append(FrictMat(young=30e9,poisson=0.5,frictionAngle=0,density=0,label='wall'))
sand=O.materials.append(CohFrictMat(isCohesive=True,young=30e9,poisson=0.5,frictionAngle=radians(30),density=2600.0,normalCohesion=1e6,
 shearCohesion=1e6,label='sand'))
cement=O.materials.append(CohFrictMat(isCohesive=True,young=30e9,poisson=0.5,frictionAngle=radians(30),density=2600.0,normalCohesion=1e6,
 shearCohesion=1e6,label='cement'))
##
O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(

normalCohesion=MatchMaker(matches=((wall,wall,0),(wall,sand,0),(wall,cement,0),(sand,sand,0),(sand,cement,1e6),(cement,cement,1e6))),

shearCohesion=MatchMaker(matches=((wall,wall,0),(wall,sand,0),(wall,cement,0),(sand,sand,0),(sand,cement,1e6),(cement,cement,1e6))),
setCohesionNow=True),
 Ip2_FrictMat_FrictMat_FrictPhys()],

[Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),Law2_ScGeom_FrictPhys_CundallStrack()]
),
triax,
TriaxialStateRecorder(iterPeriod=100),
newton
]
My questions are:
1. Is there any conflict between MatchMaker and setCohesionNow=True?  
setCohesionNow is for assigning cohesion to all existing contacts in current 
time-step, I am afraid that MatchMaker makes  normalCohesion of sand-cement 
equals 1e6 in all steps.
2.Is there any unnecessary coding such as (wall,wall,0) or (wall,sand,0) that I 
need to remove?

Many thanks
Leonard
[1]https://answers.launchpad.net/yade/+question/683706

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #684030]: example of FEMxDEM simulation

2019-09-18 Thread whr
Question #684030 on Yade changed:
https://answers.launchpad.net/yade/+question/684030

Status: Open => Answered

whr proposed the following answer:
Hi Alireza,

The python codes are already included in the source code in
trunk/examples/FEMxDEM.

To couple them together, you need scripts in trunk/py/FEMxDEM. I suggest
you put the codes in the two folders together to run a test simulation
first.

Huanran

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp