EDEM API: Contact Model & Particle Body Force – Work Done in Geometries

RWood
RWood
Altair Employee
edited May 2023 in Altair Exchange

Overview

Note that this is an extension of the Residence Time in Geometries model, found here:

https://community.altair.com/community?id=kb_article_view&sysparm_article=KB0113658

Here you can find the source code of, and example deck for, a combined Contact Model and Particle Body Force model that calculates the work done on the particles for contacts within specific geometries. The work done on the particles inside the boundaries of one or more predefined geometries (which can either be a sphere, box or cylinder) is stored in two custom properties: Normal Work Done and Tangential Work Done. With this model, it is therefore possible to analyze the total work done within specific volumes of interest.

In WorkDoneInVolume.zip you will find :

Src.zip : The source code of the plugin.
Example.zip which contains :

  • An example deck
  • The compiled .dll (Windows), .so (Linux)  and .cl file (for GPU processing)
  • WorkDoneInVolumePrefs.txt : the preference file used for the example (which is the exact same format as the Residence Time in Geometries example)

This plugin is GPU compatible and uses the version 3.1 of the API and is supported on EDEM 2019.1 or newer.

Usage/Installation Instructions

.

Comments

  • satri
    satri Altair Community Member
    edited September 2023

    hey i see that there is a custom property called RESIDENCE_TIME_PROPERTY and it is defined in both files CResidenceTimeGeometry.cpp as well as CWorkDoneInVolume.cpp so does it mean that both are using the same value of residence time? 

    The reason i ask this is i am trying to create a custom particle property called contactDetect in contact API and later i want to use the same custom particle property contactDetect in body force API. please tell me what is the syntax to do that. 

    Do i just define it two times or is there any keyword to use? because i am confused about this. 

  • RWood
    RWood
    Altair Employee
    edited October 2023

    hey i see that there is a custom property called RESIDENCE_TIME_PROPERTY and it is defined in both files CResidenceTimeGeometry.cpp as well as CWorkDoneInVolume.cpp so does it mean that both are using the same value of residence time? 

    The reason i ask this is i am trying to create a custom particle property called contactDetect in contact API and later i want to use the same custom particle property contactDetect in body force API. please tell me what is the syntax to do that. 

    Do i just define it two times or is there any keyword to use? because i am confused about this. 

    Hi Shyam,

    There is a body force and a contact model in this plugin. Since I want them to use the same custom property, I give them the same name. EDEM recognises custom properties by name, so in this case the string for the custom property ("Custom Residence Time") is the same in both, meaning I can use same custom property in the contact model and body force.

    Hope that helps.

    Richard