yadedocumentation - overview --nice=nice increase nice level (i.e. decrease priority) by given...

Download YadeDocumentation - Overview --nice=NICE Increase nice level (i.e. decrease priority) by given number.-x

Post on 15-Apr-2020

0 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Yade Documentation

    Václav Šmilauer, Emanuele Catalano, Bruno Chareyre, Sergei Dorofeenko, Jérôme Duriez, Nolan Dyck, Jan Eliáš, Burak Er,

    Alexander Eulitz, Anton Gladky, Ning Guo, Christian Jakob, François Kneib, Janek Kozicki, Donia Marzougui, Raphaël Maurin, Chiara

    Modenese, Luc Scholtès, Luc Sibille, Jan Stránský, Thomas Sweijen, Klaus Thoeni, Chao Yuan

    2nd Edition, after Release 2020-04-13.git-188f2ab, April 16, 2020

  • Authors • Václav Šmilauer Freelance consultant (http://woodem.eu)

    • Emanuele Catalano Grenoble INP, UJF, CNRS, lab. 3SR

    • Bruno Chareyre Grenoble INP, UJF, CNRS, lab. 3SR

    • Sergei Dorofeenko IPCP RAS, Chernogolovka

    • Jérôme Duriez Irstea, RECOVER

    • Nolan Dyck Univ. of Western Ontario

    • Jan Eliáš Brno University of Technology

    • Burak Er Bursa Technical University

    • Alexander Eulitz TU Berlin / Institute for Machine Tools and Factory Management

    • Anton Gladky TU Bergakademie Freiberg

    • Ning Guo Hong Kong Univ. of Science and Tech.

    • Christian Jakob TU Bergakademie Freiberg

    • François Kneib Grenoble INP, UJF, CNRS, lab. 3SR / Irstea Grenoble

    • Janek Kozicki Gdansk University of Technology

    • Donia Marzougui Grenoble INP, UJF, CNRS, lab. 3SR

    • Raphaël Maurin Irstea Grenoble

    • Chiara Modenese University of Oxford

    • Luc Scholtès Grenoble INP, UJF, CNRS, lab. 3SR

    • Luc Sibille University of Nantes, lab. GeM

    • Jan Stránský CVUT Prague

    • Thomas Sweijen Utrecht University

    • Klaus Thoeni The University of Newcastle (Australia)

    • Chao Yuan Grenoble INP, UJF, CNRS, lab. 3SR

    Citing this document In order to let users cite Yade consistently in publications, we provide a list of bibliographic references for the different parts of the documentation. We therefore kindly ask users to cite Yade as accurately as possible in their papers, as explained at http://yade-dem/doc/citing.html.

    i

  • ii

  • Contents

    1 Guided tour 1 1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.1.1 Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.2 Architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    1.2 Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.2.2 Hands-on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.2.3 Data mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 1.2.4 Setting up a simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.2.5 Advanced & more . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 1.2.6 Examples with tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 1.2.7 More examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    2 Yade for users 49 2.1 DEM formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    2.1.1 Collision detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.1.2 Creating interaction between particles . . . . . . . . . . . . . . . . . . . . . . . . 53 2.1.3 Kinematic variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 2.1.4 Contact model (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 2.1.5 Motion integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 2.1.6 Periodic boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.1.7 Computational aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

    2.2 User’s manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 2.2.1 Scene construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 2.2.2 Controlling simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 2.2.3 Postprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 2.2.4 Python specialties and tricks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 2.2.5 Extending Yade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 2.2.6 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

    2.3 Yade wrapper class reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 2.3.1 Bodies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 2.3.2 Interactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 2.3.3 Global engines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 2.3.4 Partial engines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 2.3.5 Dispatchers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 2.3.6 Functors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 2.3.7 Bounding volume creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 2.3.8 Interaction Geometry creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 2.3.9 Interaction Physics creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 2.3.10 Constitutive laws . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 2.3.11 Internal forces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 2.3.12 Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486 2.3.13 Preprocessors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487 2.3.14 Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495 2.3.15 Simulation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 2.3.16 Other classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521

    iii

  • 2.4 Yade modules reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531 2.4.1 yade.bodiesHandling module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531 2.4.2 yade.export module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 2.4.3 yade.geom module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 2.4.4 yade.gridpfacet module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540 2.4.5 yade.libVersions module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 2.4.6 yade.linterpolation module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 2.4.7 yade.log module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 2.4.8 yade.math module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549 2.4.9 yade.minieigenHP module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 2.4.10 yade.pack module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 2.4.11 yade.plot module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591 2.4.12 yade.polyhedra_utils module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594 2.4.13 yade.post2d module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596 2.4.14 yade.qt module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599 2.4.15 yade.timing module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601 2.4.16 yade.utils module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 2.4.17 yade.ymport module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617

    2.5 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621 2.5.1 Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621 2.5.2 Source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622 2.5.3 Speed-up compilation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628 2.5.4 Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628 2.5.5 GPU Acceleration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 2.5.6 Special builds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 2.5.7 Yubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629

    2.6 Acknowledging Yade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 2.6.1 Citing the Yade Project as a whole (the lazy citation method) . . . . . . . . . . . 630 2.6.2 Citing chapters of Yade Documentation . . . . . . . . . . . . . . . . . . . . . . . 630

    3 Yade for programmers 631 3.1 Programmer’s manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631

    3.1.1 Build system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631 3.1.2 Development tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 3.1.3 Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633 3.1.4 Regression tests .

Recommended

View more >