← Back to team overview

yade-users team mailing list archive

[Question #708063]: pfacet engines

 

New question #708063 on Yade:
https://answers.launchpad.net/yade/+question/708063

Hi, 

I am trying to simulate the triaxial test with a flexible membrane in a cylindrical shape.

Background information:
Spherical particle.
Top and bottom plates use facets.
Lateral membrane use pfacet.

################################################
Right now, I am confused about the engines.
The following is an example of the engines.
#################################################
 ###################################################################
###################################################################
O.engines=[
	ForceResetter(),
	InsertionSortCollider([
		####### for sphere and facet wall
		Bo1_Sphere_Aabb(), Bo1_Facet_Aabb(),
		#### for pfacet membrane and gridconnection 
		Bo1_PFacet_Aabb(), Bo1_GridConnection_Aabb()]),
	InteractionLoop(
		[
		## for sphere contact with sphere and facet wall
		Ig2_Sphere_Sphere_ScGeom6D(),
		Ig2_Facet_Sphere_ScGeom(),
		## for contacts between: sphere/pfacet, node/node, connection/connection, pfacet/pfacet and so on.	
		Ig2_GridNode_GridNode_GridNodeGeom6D(),
		Ig2_GridConnection_GridConnection_GridCoGridCoGeom(),
		Ig2_Sphere_PFacet_ScGridCoGeom(),
		Ig2_Facet_Sphere_ScGeom6D(),
		Ig2_Sphere_GridConnection_ScGridCoGeom(),
		Ig2_PFacet_PFacet_ScGeom(),
		Ig2_GridConnection_PFacet_ScGeom(),
		],
		[
		Ip2_FrictMat_FrictMat_FrictPhys(),
		Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(label="cohesiveIp")
		],
		[
		Law2_ScGeom_FrictPhys_CundallStrack(),
		Law2_ScGeom6D_CohFrictPhys_CohesionMoment(useIncrementalForm=True,always_use_moment_law=False,label='cohesiveLaw'),
		Law2_GridCoGridCoGeom_FrictPhys_CundallStrack(),
		Law2_ScGridCoGeom_FrictPhys_CundallStrack(),
		],label="iloop"),
	GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=25,timestepSafetyCoefficient=0.8),
	NewtonIntegrator(gravity=(0,0,0),damping=0.1,label='newton')]
###########################################################
O.engines[2].lawDispatcher.functors[1].always_use_moment_law=False
O.engines[2].physDispatcher.functors[1].setCohesionOnNewContacts=False
#######################################################################
#######################################################################


Questions:

1:  Ig2_Facet_Sphere_ScGeom() and Ig2_Facet_Sphere_ScGeom6D().

Do I need to include both of them? 
one is for sphere-facet, another one is for sphere-facet (facet from pfacet, correct me if I am wrong).
because as mentioned in [1], this is for the virtual sphere, so I need to add Ig2_Facet_Sphere_ScGeom() for the sphere which contacts the top and bottom facets.



2: For the sphere and PFacet contact, Do I need to add all the 7 Ig2 functors?
########################################################
		Ig2_GridNode_GridNode_GridNodeGeom6D(),
		Ig2_GridConnection_GridConnection_GridCoGridCoGeom(),
		Ig2_Sphere_PFacet_ScGridCoGeom(),
		Ig2_Facet_Sphere_ScGeom6D(),
		Ig2_Sphere_GridConnection_ScGridCoGeom(),
		Ig2_PFacet_PFacet_ScGeom(),
		Ig2_GridConnection_PFacet_ScGeom(),
#######################################################
Because from [2] (the author also simulates the triaxial test with pfacet), the code does not include the following Ig2 factors.
		Ig2_Sphere_GridConnection_ScGridCoGeom(),
		Ig2_PFacet_PFacet_ScGeom(),
		Ig2_GridConnection_PFacet_ScGeom(),
#######################################################


3: what is the difference between Ig2_Facet_Sphere_ScGeom6D() and Ig2_Sphere_PFacet_ScGridCoGeom()?
Because the pfacet-sphere contact also uses the virtual sphere to detect the contact with real spheres.

thank you!

references:
[1]https://yade-dev.gitlab.io/trunk/yade.wrapper.html#yade.wrapper.Ig2_Facet_Sphere_ScGeom6D
[2]https://www.proquest.com/openview/057ef8332b9c247ae1b67a35db05587e/1?pq-origsite=gscholar&cbl=18750&diss=y


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