Generating sample

Asked by Gayanindika

I generated a sample using

O.bodies.append([
    utils.sphere(center,radius),utils.sphere(center,radius),..........
   ])

I need to subject this sample to triaxial shear. But i have a problem about creating the walls (box).

How can I generate the boundary walls to apply the isotropic compression and strain while shear?

If I am to create a facet, at what point I should give the command? (before or after spheres).

If this is not the appropriate command, what is the best command? ( pls give a detailed command. In my sample the initial positions are known. not random)

Thank you.

Question information

Language:
English Edit question
Status:
Answered
For:
Yade Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Luc Scholtès (luc) said :
#1

Hi Gayanindika,

To create the walls around your packing, see the utils function aabbWalls(). Then to apply a triaxial compression, see the engine TriaxialCompressionEngine(). You should have something ressembling those lines in your script to perform what you want:

# defines your assembly
O.bodies.append(utils.sphere(*),...)

# creates and identifies the walls for the triaxial engine
walls=O.bodies.append(utils.aabbWalls(*))

# defines the triaxial engine (important here to accurately identify the walls)
TriaxialCompressionEngine(
 wall_bottom_id=walls[2],
 wall_top_id=walls[3],
 wall_left_id=walls[0],
 wall_right_id=walls[1],
 wall_back_id=walls[4],
 wall_front_id=walls[5],
        ...
)

BTW, there was a triaxial test script in the examples directory... I am not sure anymore since I don't work with the latest version, but maybe you should have a look and ask if needed...

Cheers

  Luc

Can you help with this problem?

Provide an answer of your own, or ask Gayanindika for more information if necessary.

To post a message you must log in.