Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Task marked complete

...

Discussion items

TimeItemWhoNotes
 Review last meeting 

2017-09-04 Meeting notes

  • Anthony: git-svn bridge
  • Irana: interactions: list vs vector
  • Anthony: setIndSpecies
 Review recent commits 

See log below:

  • Thomas: IntersectionOfWalls can now handle fine details (previously could cause nan values); nan values now get treated
  • Irana: Bug fix cgHandler at boundaries
  • Irana: Simplification of Kernel/CMakeLists.txt (smile)
  • Irana Commented CG, sped up neighborhood detection in CG<CGCoordinates::XZ, CGFunctions::Lucy, CGFields::StandardFields>::evaluateContact
  • Irana: vector instead of list in BaseInteractable.

 

 File-extension for source files that are not compiled, but includedIrana

Because of templates, not all files with the implementations of functions can be compiled separately, see e.g. this cppfaq for an explanation of templates and compiling.

Currently, there are some .cc files included instead of compiled, see e.g. CGPoint. Can we rename this to CGPoint.hcc (or something else) to make a distinction between implementation files that are included vs compiled?

Next time: decide to use hcc files of put definitions in .h for templates

 Open JIRA jobs Preparation: please close all your Jira-jobs that you finished.
 Mercury speed test 

untitled.m

Here the results of computation time from a quasi 2D silo simulation (Trunk, r2478) with periodic particles. Particle number is increasing, so I can measure speed as function on N. Speed is at 50'000 particles*timesteps per real second. So a silo simulation (timeMax=3) takes 3 weeks.

In 2012, the chute simulations, we could simulate 8e3 particles and 2e6 timesteps in 10 days (18'500 particles*timesteps per real second), so it got quicker.

But: Under idealised conditions (small number of particles, no boundaries/walls), Mercury was at ~500'000 particles*timesteps per real second (measured in Santorini). My guess: the ghost particles are very costly.

 Next meeting  Oct 11, 11:00

 

SVN log since last meeting:

------------------------------------------------------------------------
r2509 | weinhartt | 2017-09-17 11:45:26 +0200 (Sun, 17 Sep 2017) | 6 lines

Bugfix in IntersectionOfWalls.

Not sure if I should call this a bugfix: The detection of vertices and edges worked fine if the vertices are not closer
than one particle diameter. Below that, certain assumptions are no longer valid. Yousef's geometry required a very thin
wall, which caused issues, so I rewrote IntersectionOfWalls::getDistanceAndNormal, adn implemented a test
(ContactDetectionIntersectionOfWallsSelfTest)
------------------------------------------------------------------------
r2508 | irana | 2017-09-15 12:49:54 +0200 (Fri, 15 Sep 2017) | 2 lines

Hopper as a boundary: backup of start in Irana's folder.

------------------------------------------------------------------------
r2507 | irana | 2017-09-14 15:21:30 +0200 (Thu, 14 Sep 2017) | 3 lines

Bugfix CG: In Polynomial.hcc, tangentialSquared became negative when pNormal
< distance contact to evaluation-point, in certain cases.

------------------------------------------------------------------------
r2506 | irana | 2017-09-13 15:32:05 +0200 (Wed, 13 Sep 2017) | 2 lines

Application Irana: update to CG'ing maser-restart files.

------------------------------------------------------------------------
r2505 | weinhartt | 2017-09-13 08:15:58 +0200 (Wed, 13 Sep 2017) | 1 line

Committed settings run for PowTech mixer image
------------------------------------------------------------------------
r2502 | irana | 2017-09-08 14:06:13 +0200 (Fri, 08 Sep 2017) | 2 lines

Application Irana: some adaptations.

------------------------------------------------------------------------
r2497 | irana | 2017-09-08 08:46:52 +0200 (Fri, 08 Sep 2017) | 6 lines

Simplification of Kernel/CMakeLists.txt: all .cc files in Boundaries,
FMM, Math, Particles, Strings, VTKWriter and Walls are now compiled
automatically and automatically incorporated in the library DPMBase.
This is useful, as we this makes it one step easier to make e.g. new Walls
and Boundaries.

------------------------------------------------------------------------
r2496 | irana | 2017-09-07 14:23:10 +0200 (Thu, 07 Sep 2017) | 3 lines

In CG, added the specialisation CG<CGCoordinates::XZ, CGFunctions::Lucy, CGFields::StandardFields>::evaluateContact(const BaseInteraction& c)
with the neighbourhood search for better performance.

------------------------------------------------------------------------
r2495 | irana | 2017-09-07 12:33:06 +0200 (Thu, 07 Sep 2017) | 6 lines

Comments, clean-up and new feature in CG:
- Added void CG<CGCoordinates::XZ, CGFunctions::Lucy, CGFields::StandardFields>::evaluateParticle(const BaseParticle& p) with neighborhood-search.
- In CG::initialise, replaced a for-loop with count_if + comments, for better readability
- Added more comments in CG in general
- Added/adapted comments in StandardFields and IntegralType

------------------------------------------------------------------------
r2494 | irana | 2017-09-06 15:27: 26 +0200 (Wed, 06 Sep 2017) | 2 lines

Clean-up: debugging messages are displayed iff log-level is DEBUG.

------------------------------------------------------------------------
r2493 | irana | 2017-09-06 12:02:26 +0200 (Wed, 06 Sep 2017) | 7 lines

Bug-fix: reading restart-files of version 3:
- Quaternion now checks for length in setOrientationViaNormal, so that it does not try to normalise a vector of length 0. If the length is 0, it sets the Quaternion to unity.
- BaseParticle: resurrected oldRead. Now incorporates everything except interactions.
- DPMBase.cc: included an else in readRestartFile, otherwise it would always give a warning.
- DPMBase::setParticleDimensions now only gives a warning for wrong particle dimensions, as in the old restart files the particle dimensions were 0. Now setting it to the same as systemdimensions if it is not in the range 1-3.
- ParticleHandler::readAndCreateObject can now read an old object if the line starts with a number.

------------------------------------------------------------------------
r2491 | irana | 2017-09-04 14:23:37 +0200 (Mon, 04 Sep 2017) | 2 lines

Clean-up: Changed the std::list of interactions in BaseInteractable to a std::vector