← Back to team overview

yade-dev team mailing list archive

[Bug 1652529] Re: segmentation fault (core dumped)

 

It turns out yadedaily is older than I thought.. I still confirm this is
just yade-version related, the "Welcome to Yade 2016.06a-24" suggesting
that this yadedaily is the same as 2016.06a you initially considered..

I do not have a clear understanding of the update frequence of yadedaily
(and wonder if it is actually updated these days), but there is a simple
test for you to check if your yade version is compatible with the most
recent capillary files.

Just type in YADE terminal "CapillaryPhys().dict()" and check whether "nn11" and "nn33" are listed among the attributes of this class:
- Yes => your yade version is younger than last September, you're good to go with the recent capillary files
- No => your yade version is too old, you have to update (directly from github, I'd now recommend). 
Or go back to previous capillary files version: they are still on https://www.yade-dem.org/wiki/Special:ListFiles as CapillaryJune2012.tar.gz (I do not recommend it though)

-- 
You received this bug notification because you are a member of Yade
developers, which is subscribed to Yade.
https://bugs.launchpad.net/bugs/1652529

Title:
  segmentation fault (core dumped)

Status in Yade:
  Invalid

Bug description:
  Hi I am trying to run this code, which is an example given in the
  package. But every time i try to execute this file, i get segmentation
  fault error. I am using Ubuntu 16.04 LTS and Yade 2016.06a

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

  """
  To run this script you need to have all 10 text files from https://yade-dem.org/wiki/CapillaryTriaxialTest
  in the same folder as you run this script in console!

  This script shows how to use Law2_ScGeom_CapillaryPhys_Capillarity. The user can switch between hertz and 
  linear model by setting "model_type"
  """

  model_type              = 1     #1=Hertz model with capillary forces,
  else linear model with capillary model

  #some parameters:
  shear_modulus 	= 1e5
  poisson_ratio 	= 0.3
  young_modulus	= 2*shear_modulus*(1+poisson_ratio)
  friction		= 0.5
  angle			= atan(friction)
  local_damping 	= 0.01
  viscous_normal	= 0.021
  viscous_shear	= 0.8*viscous_normal
  lowercorner		= Vector3(0,0,0)
  uppercorner		= Vector3(0.002,0.002,0.004)

  #creating a material (FrictMat):
  id_SphereMat=O.materials.append(FrictMat(young=young_modulus,poisson=poisson_ratio,density=2500,frictionAngle=angle))
  SphereMat=O.materials[id_SphereMat]

  #generate particles:
  sp=pack.SpherePack()
  sp.makeCloud(lowercorner,uppercorner,.0002,rRelFuzz=.3)
  O.bodies.append([sphere(c,r,material=SphereMat) for c,r in sp])

  #generate boundary:
  O.bodies.append(geom.facetBox(uppercorner/2,uppercorner/2,wire=True,fixed=True,material=SphereMat))

  #define engines:
  if model_type == 1:#hertz model with capillary forces
  	O.engines=[
  		ForceResetter(),
  		InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]),
  		InteractionLoop(
  			[Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],
  			[Ip2_FrictMat_FrictMat_MindlinCapillaryPhys(label='ContactModel')],#for hertz model only
  			[Law2_ScGeom_MindlinPhys_Mindlin()]#for hertz model only
  		),
  		Law2_ScGeom_CapillaryPhys_Capillarity(capillaryPressure=10000),#for hertz model only
  		NewtonIntegrator(damping=local_damping,gravity=(0,0,-9.81)),
  	]
  	ContactModel.betan=viscous_normal
  	ContactModel.betas=viscous_shear
  	ContactModel.useDamping=True
  else:
  	O.engines=[
  		ForceResetter(),
  		InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Facet_Aabb()]),
  		InteractionLoop(
  			[Ig2_Sphere_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],
  			[Ip2_FrictMat_FrictMat_CapillaryPhys()],	#for linear model only
  			[Law2_ScGeom_FrictPhys_CundallStrack()],	#for linear model only
  		),
  		Law2_ScGeom_CapillaryPhys_Capillarity(capillaryPressure=10000),#for linear model only
  		NewtonIntegrator(damping=local_damping,gravity=(0,0,-9.81)),
  	]

  #set time step and run simulation:
  O.dt=0.5*PWaveTimeStep()

  from yade import qt
  qt.View()
  print('Press PLAY button')
  #O.run(10000,True)

  
  looking forward to hear soon..!!

  Cheers
  Amiya

To manage notifications about this bug go to:
https://bugs.launchpad.net/yade/+bug/1652529/+subscriptions


References