← Back to team overview

yade-users team mailing list archive

Re: [Question #258445]: Problems in 3D simulation with PSC

 

Question #258445 on Yade changed:
https://answers.launchpad.net/yade/+question/258445

Fu zuoguang gave more information on the question:
Dear Prof. Chareyre and all users:

    As far as I concerned, there maybe something error in the
combination of PSD generation algorithm and cohesive contact Law.

    In order to check this problem, I added a group of 'if' sentences in
the whole codes above for the definition of  particle material and O.
engine, which are as follow:

##############################################################################
materials:

coFrictMat = 1

if coFrictMat == 1:
    print 'rolling is considered'
    particles_mat = O.materials.append(CohFrictMat( young = material_list_1[0],
                                                    poisson = material_list_1[1],
                                                    frictionAngle = material_list_1[2],
                                                    density  =material_list_1[3],
                                                    isCohesive = False,
                                                    momentRotationLaw = True,
                                                    alphaKr = material_list_1[4],
                                                    etaRoll = material_list_1[5]))
if coFrictMat == 0:
    print 'no rolling'
    particles_mat = O.materials.append(FrictMat( young = material_list_1[0],
                                                 poisson = material_list_1[1],
                                                 frictionAngle = material_list_1[2],
                                                 density  =material_list_1[3]))
############################################################################# 

contact law:

if coFrictMat == 1:
    O.engines=[
        ForceResetter(),
        InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb(),Bo1_Wall_Aabb()]),
        InteractionLoop(
            [Ig2_Sphere_Sphere_ScGeom6D(),Ig2_Box_Sphere_ScGeom()],
            [Ip2_FrictMat_FrictMat_FrictPhys(),Ip2_CohFrictMat_CohFrictMat_CohFrictPhys()],
            [Law2_ScGeom_FrictPhys_CundallStrack(),Law2_ScGeom6D_CohFrictPhys_CohesionMoment(
                useIncrementalForm=True, 
                always_use_moment_law=True,  
                label='cohesiveLaw')]
        ),
        GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8),
        consolidation,
        NewtonIntegrator(damping=.2),
    ]

if coFrictMat == 0:
    O.engines=[
	    ForceResetter(),
	    InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb()]),
	    InteractionLoop(
		    [Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom()],
		    [Ip2_FrictMat_FrictMat_FrictPhys()],
		    [Law2_ScGeom_FrictPhys_CundallStrack()]
	    ),
	    GlobalStiffnessTimeStepper(active=1,timeStepUpdateInterval=100,timestepSafetyCoefficient=0.8),
	    consolidation,
	    NewtonIntegrator(damping=.2)
    ]
###############################################################################

Then use the psd-1 data as generation. When ' coFrictMat == 0' , there
is nothing error but when ' coFrictMat == 1' , error warning may appear.
I am lost in it.

Seeking your help!

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.