Beyond Basic: Advanced simulations in EDEM using the Application Programming and Coupling Interfaces
May 4th, 2016
EDEM Academic Advanced Workshop
J.P. Morrissey
Institute for Infrastructure & Environment, School of Engineering
Presentation Overview
- Application Programming & Coupling Interfaces Introduction
- API Examples
- Edinburgh Cohesion Model
- Edinburgh Bonded Model
- Other applications
- Multi-Body Dynamics Coupling Examples
- Jenike Shear Test
- High Speed Rail
- Caking & Time Consolidation
- Triaxial testing
Section 1
EDEM: Application Programming and Coupling Interfaces
EDEM Application Programming Interface
EDEM simulations can be customized and extended using the EDEM Application Programming Interface (API).
With the EDEM API users can write:
- Custom contact models to model new particle–particle and particle–geometry interactions
- Custom particle body force models to apply new forces and effects to the particles in the simulation
- Custom particle factory models to create new methods of particle generation – to define non-standard positions, distributions or flow-rates
- Define and work with EDEM Custom Properties, creating custom particle and geometry properties, increasing the scope of user’s custom models
- Import 3rd party vector or scalar field data which can be referenced by custom physics models
Controls
- Next:
Right Arrow
or Space
- Previous:
Left Arrow
- Start:
Home
- Finish:
End
- Overview:
Esc
- Speaker notes:
S
- Fullscreen:
F
- Zoom:
Alt + Click
- PDF Export:
E
Code Highlighting
Inline code: variable
Code block:
porridge = "blueberry"
if porridge == "blueberry":
print("Eating...")
Math
In-line math: $x + y = z$
Block math:
$$
f\left( x \right) = ;\frac{{2\left( {x + 4} \right)\left( {x - 4} \right)}}{{\left( {x + 4} \right)\left( {x + 1} \right)}}
$$
Fragments
Make content appear incrementally
{{% fragment %}} One {{% /fragment %}}
{{% fragment %}} **Two** {{% /fragment %}}
{{% fragment %}} Three {{% /fragment %}}
Press Space
to play!
One
**Two**
Three
A fragment can accept two optional parameters:
class
: use a custom style (requires definition in custom CSS)
weight
: sets the order in which a fragment appears
Speaker Notes
Add speaker notes to your presentation
{{% speaker_note %}}
- Only the speaker can read these notes
- Press `S` key to view
{{% /speaker_note %}}
Press the S
key to view the speaker notes!
Themes
- black: Black background, white text, blue links (default)
- white: White background, black text, blue links
- league: Gray background, white text, blue links
- beige: Beige background, dark text, brown links
- sky: Blue background, thin dark text, blue links
- night: Black background, thick white text, orange links
- serif: Cappuccino background, gray text, brown links
- simple: White background, black text, blue links
- solarized: Cream-colored background, dark green text, blue links
Custom Slide
Customize the slide style and background
{{< slide background-image="/media/boards.jpg" >}}
{{< slide background-color="#0000FF" >}}
{{< slide class="my-style" >}}
Custom CSS Example
Let’s make headers navy colored.
Create assets/css/reveal_custom.css
with:
.reveal section h1,
.reveal section h2,
.reveal section h3 {
color: navy;
}