New question #688885 on Yade:
https://answers.launchpad.net/yade/+question/688885
Hi,
In my model, I have 3D spheres aligned in the x-y plane (100 by 100). Each
sphere is bonded with its neighboring spheres. There is a precrack in the model
and I am applying a force field within the precrack. Once the model runs, the
crack opens up and starts to propagate. Within the simulation I want to do the
following:
If a new bond breaks:
El1 = #element#1;
El2 = #element#2;
O.forces.setPermF(El1,(0,0.01000*O.time,0))
O.forces.setPermF(El2,(0,-0.01000*O.time,0))
I hope you understand. Basically, once a bond breaks, I want to apply a force
on the 2 element that the bond broke between. I know that I have to write a
function script. If you can just tell me how to get the if condition activated
once a new bond breaks and how to get the element numbers, that would be off
great help.
Thanks!
# SIMULATION LOOP
O.engines=[
PyRunner(command='addPlotData1()',iterPeriod=1),
PyRunner(command='saveData1()',iterPeriod=1000),
PyRunner(command='saveData2()',iterPeriod=1000),
PyRunner(command='ForceBC1()',iterPeriod=1),
PyRunner(command='ForceBC2()',iterPeriod=1),
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb()]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=intR)],
[Ip2_JCFpmMat_JCFpmMat_JCFpmPhys(cohesiveTresholdIteration=1)],
[Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM()]
),
GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=10,timestepSafetyCoefficient=0.5,
defaultDt=utils.PWaveTimeStep()),
NewtonIntegrator(damping= 0.80),
]
--
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 : [email protected]
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp