MercuryMonth 2020

MercuryMonth 2020

Dates: April 20-May 20th

Due to COVID-19 this year the event will be completely  online.

Update meetings

We will have update meeting at 11am everyday

Add to your agenda

Updated link (To get added to the calendar, send an email to t.weinhart@utwente.nl):

https://calendar.google.com/event?action=TEMPLATE&tmeid=M2hwZjE5NGQ4ZzE4cHQwbTdjdGRiYWthc2RfMjAyMDA0MjBUMDkwMDAwWiB3ZWluaGFydEBt&tmsrc=weinhart%40gmail.com&scp=ALL

Joining

Join the 11am meeting (webex):

https://meetingsemea5.webex.com/meet/timoplath

PW: MDPM

Slack account

 

For this month we will be using slack:https://app.slack.com/client/TJ0BZKBNC/C012B175Z28 or the normal mercrydpm channel at  https://mercurydpm.slack.com/archives/CHZQ527RA

Topics

  1. JIRA Jobs

    1. Documentation - New branch: Documentation.  Anthony will change the root of this branch to the trunk.
      Please use svn checkout https://svn.mercurydpm.org/SourceCode/Branches/NewDocumentation/
      This does not have Juan changes at the moment as they did not merge cleanly i.e. this is based on the current trunk and fully passes all selftest for me.

    2. Advanced tutorials (main developers: sit dow and make a list of tutorials necessary; link to youtube videos)

    3. New tutorials

      ---------------------------------

    Interaction::computeNormalForce - Juan has started. - Timo will improve Hertzian and Mindlin http://docs.mercurydpm.org/Trunk/d7/dc4/ContactModel.html by himself because his info is in German. 
    Link UnitTests to each contact model. Plot the interactions. 

    Normal contact models:
    Linear spring dashpot model - UnitTest 
    Hertzian spring dashpot model - UnitTest 
    Elastoplastic contact forces - UnitTest 
    Sintering (time-temperature dependent) - UnitTest 
    Enhanced sintering model interaction - UnitTest 

    Friction contact models:
    Sliding friction interaction  - UnitTest 
    Friction interaction - Tutorial - SelftTest
    Mindlin interaction - ---

    Adhesive contact models:
    Dry cohesion for elastic contact forces  - Linear reversible cohesive force UnitTest 
    Wet cohesion - Irreversible adhesive interaction - UnitTest  - SelftTest
    Liquid migration - Irreversible adhesive interaction SelftTest
    Charged bonded UnitTest SelftTest - Do we have any reference for this model? - A// Thomas will send me a paper
    Pharmi McMeking sinter interaction SelftTest. This self-test is in a USER directory. Maybe could we change it to SelfTests directory ? A// Move to 

    Include check function in unit tests.
    --------------------------------- 

  2. Tutorials

  3. @Anthony Thornton take look at UnitTest and see why there is selftest data

  4. Convert demos to tutorial;

  5. Consolidation of coupling (merge/make compatible Mitchel and Hong; parallelise)

    1. Oomph: Non-dimensionalisation is needed, we need to find out why. Hong uses the output function to produce dimensional output.

  6. Release

  7. Resurrect Marnix mu(I) code [Hong]

  8. STEP Files (file format for curved geometries)

  9. Sydney demo programs for teaching [Juan, Ant]

  10. Check naming of files/dir's/variables;

    1. make cleanup branch

  11. Restore old codes

Done:

  1. How to create a video from Paraview (this contains only the initial setting ".pvsm" for particles, walls setting is not there)

  2. Add logo into videos (done-one example has been updated at the end of this page)

  3. Setup Confluence questions

Missing days

Please list the days you cannot attend the daily meeting.

Thomas: May 18

Timo: April 22, May 11-13

Julius: May 12, 19 (Equipment Design Course)

Ant: : April 29.

Hao: May 5.

Mitchel: May 4-5

Juan: May 13-14

Hongyang: May 12

Yousef: May 15 / 18-19

Discussion

Everyone, please curate your own section below yourself.

 

 

 

 

Teach

Do you still need skills to do you tasks?

SVN, MercuryDPM basics, etc.

Slack

Do you have access to slack

Calendar

Did you get teh calendar invite? Anyone to add?

Juan

Documentation; Sydney demo programs for teaching - Convert MercurySimpleDemos to tutorials.

MercurySimpleDemos:

CubicCell.cpp
FreeCooling2DPeriodicDemo.cpp
FreeCooling3Demo.cpp
FreeCoolingDemo.cpp
FreeCoolingTryplePeriodic.cpp
HeaterBoundaryTest.cpp
HourGlass2DDemo.cpp
HourGlass2DDemoMPI.cpp
HourGlass3DDemo.cpp
MinimalExampleDrum.cpp
ParticleInclusion.cpp
REV_IsotropicCompression.cpp
REV_PurShear.cpp
REV_SimpleShear.cpp
HourGlassSelfTest.cpp Warning: This file cannot be moved


Could I move these self tests to SelfTests directory?

A// Yes

FreeFallSelfTest.cpp
InsertionBoundarySelfTestMPI.cpp
MasterChuteUnitTestMPI.cpp
ParticleCreationSelfTest.cpp
FreeFallInteractionSelfTest.cpp : Warning: interaction file will take up a lot of disk space! 


Could I move these unit tests to UnitTests directory?

A// Yes

PeriodicBoundaryUnitTestMPI.cpp
PeriodicChuteUnitTestMPI.cpp
PeriodicWallsUnitTest.cpp
ParallelUnitTest.cpp
HGridUnitTest.cpp


Which demo tests does @Anthony Thornton want for teaching?

R//

Job MDPM 301: Update Hour Glass Demo. The description of this job is: This code is written in a weird way with respect to what N.
To update the structure, some changes need to be done. Maybe I could rewrite this code using the tutorial format.

Job MDPM 282: Write a tutorial on how to create your own code
Documentation: Write your own code. Updated.
Job 306: Add a review doc of what files can be turned on
Job 304: Hourglass does not seem able to write multiple data files.

I've created a new beginner tutorial, tutorial11. This tutorial shows how to work with axisymmetric walls inside a cylindrical domain. Furthermore, it is based on the hourglass demo. This tutorial can write multiple data files (Job 304).

Thomas

Resurrect old Driver code directories (SerializedDriver, Leidenfrost, GranularJet, Avalanching, CartesianShearCell, Segregation), see r4549
@Thomas Weinhart Contraction directory cannot be resurrected, make a new Contraction driver.
@Anthony Thornton look at Chute directory, Codes are extremely old (#include "scr/Chute.h")
Send Juan paper on Chargedbonded.
Merge completed features from my Branches (MercuryLab, ResurrectOldDriverCodes/) into Trunk, see r4522, r4549
@Julius Mbaziira Check whether *SelfTestMPI.cpp/*UnitTestMPI.cpp is executed if MPI=ON
No, they are never executed. They need to be renamed *MPI2Test.cpp
Fixed "Mathjax not displayed" issue in documentation, see r4554
Add Test rules to coding style
Clean up Doxygen section in coding style, add /ref
Update license
Discuss: HertzMindlin tied together, or shear modulus updated from Hertz.

Ant

  1. Change settings of MercuryDPM website [done]

  2. Make mercurydpm forward-only email adresses work (info, personal, etc)

  3. Backup script for web pages

Finish off oomph-lib testing branch, so we have an oomphlib branch we can commit to

Timo

 

Documentation Mindlin
Enhance Mindlin
Implement a collisionselftest for mindlin

Walls doc

Doxygen infinite loop script (now works in background): 

Mitchel

  1. Coupling;

  2. look at open jobs at JIRA (started)

Tutorial on 2D and 3D parameter studies (JIRA MDPM - 307)
Code
Documentation
Validation

Hong

Make the structure of the coupled codes consistent
Clean up my branches to be merged with Mitchel's
CoupledProblem class and how to inherit
Volume coupling
Match the current velocity
(Augmented) Lagrange multiplier
Merge implicit and explicit branches into the main coupling branch
Surface coupling
Smooth particle-finite element contacts
Triangulated walls with prescribed velocity from Oomph-lib
Coarse-Grained coupling force
Marnix \mu(I) rheology
Works on a CG converter tool (e.g. stat2vtu.py). In Tools

Yousef

  • Clean up melting, add test cases (PS: My branch should not be merged back till the work is published).

Coding style and format
Error checks
Test Cases:

....
Update ThermalParticleVtkWriter: to avoid dynamic_cast!
  • JIRA jobs:

  • I noticed some jobs are repeated: Do not delete, just link them (e.g. latex pb in documentations).

  • Test failing on cluster and Windows 10 [MDPM-311] : I ran fullTest on Win10 and cluster, all passed.

  • Add Doxygen section to the "Coding style of the kernel" on the website [MDPM-95]: The section already on the website, do we need to add it in the documentation?

  • make separate VTKWriter class for Wall/Interaction VTK writer [MDPM-240]: There is also done, right? -> a unit test is needed.

  • Adhesive particle contacts increases simulation time [MDPM-323]: which adhesive species? -> we need to contact Nikzad Falahati, Anthony knows him.

  • ..

 

Hao

Check the StressStrainControlBoundary:

Check the comment of each function implemented in this boundary and modify the documentation.
Add a detailed version of the tutorial of one deformation mode. (New page on Isotropic compression.)
Update the detailed pdf and it to the additional document.
Maybe add more videos and tutorials on different deformation modes:
PureShear,
SimpleShear, (Volume conserving, no stress control activated)
SimpleShear, (Changing volume, activate the stress control)
How to deal with the input data folder? Reference it? Or make them separate folders but then need to check all the other folders also.

Please don't copy input data, instead refer to the source directory using getMercurySourceDir in CMakeDefinitions.

Include the path in the cpp file and read the input data from there, so avoid copying.

 

Here is the issue of MPI without c++ binding issue. I think it is general in all the new version of openmpi, not only on mac.

can someone test this with newest openmpi on either windows or linux?

 

Added the logo with slogan to the NewDocumentation branch.

Julius

Converting demos to tutorial (Homogeneous and Inhomogeneous Cooling States, F-C-Demos)

 

Todos

Make a separate discussion on the coupling branch [Hong, Mitchel, Thomas, Anthony]; Tuesday  after 11am meeting