Download the update file to a convenient location and double-click on the file.
For those interested in calibrating or simulating laboratory testing of rock core samples using PFC 6.0 or PFC 5.0, an updated version of FISHTank, now called Material Modeling Support, is available to download for free.
For those interested in the creation and triaxial testing of a synthetic unsaturated granular material containing geogrid using PFC3D 6.0 or PFC3D 5.0, the Pavement-Design Package, is available to download for free.
||Feb 7, 2021
- Add the INITIALIZE method to the flat-joint contact model.
- Fix C++ plugins project properties in Debug/Debug2D.
- Fix Python RBLOCK_CONTAINING method.
- Add missing documentation figures.
- Fix rigid block - sphere contact resolution.
||Sep 2, 2020
- Fix viscous damping in the arrlinear model.
- Fix 2D rblock-rblock contact resolution bug with large rounding.
- Fix 2D rblock updating of enclosing sphere when using the RBLOCK GENERATE and RBLOCK DISTRIBUTE commands.
- Fix inertia tensor computation for convex polyhedra under certain circumstances.
- Add rblock.containing and rblock.inside FISH intrinsics and Python equivalents.
- Fix structural element link node creation with rblocks.
||Aug 9, 2020
- Fix capping of maximum contact area for contacts with rblocks.
- Fix overflow error when creating a null surface for clumps.
- Add the C++ interface documentation.
- On project restore set focus on last used editor pane.
- Fix potential CFD crash bug.
- Clean up rblock access to the orientation of the principal axis system and incremented orientation.
||Jul 20, 2020
- Add maximum number of pebbles in bubblepack.
- Fix viscous damping in adhesive contact model.
- Fix relative velocity computation in 2D for contacts with wall facets.
- Fix stiffness computation for wall-zone and wall-sel coupled contacts with the COMPUTE-STIFFNESS ON command.
- Fix bug in zone update.
- Documentation enhancements.
||May 19, 2020
- Fix the rblock-rblock and rblock-facet contact position update with large angular velocities.
- Update the rblock tunnel example to be more realistic and use new features.
- Update to the latest version of QHull (2019.1 2019/06/21 (7.3.2)).
- Change the RBLOCK CONSTRUCT command with the INTERNAL keyword so that the surface mesh also follows thew user supplied weighting.
- Change the wall-zone coupling contact updates so that the relative velocity is resolved on the sub-facet level.
- Fix datafile convertion to handle range phrases in the CMAT command.
- Fix potential crash when invoking the CONTACT MODEL range element on a contact for which no contact model has been assigned.
||Apr 14, 2020
- Update Scintilla to correct issues with UTF-8 encoding.
- Update Intel compilers.
- Update for partial high DPI monitor support.
- Add back logarithmic contour support.
- Fix wall.find documentation.
- Fix example in wall servo documentation.
- Fix generate movie dialog when relative paths are involved.
- Add the WALL-ZONE COMPUTE-STIFFNESS and WALL-STRUCTURE COMPUTE-STIFFNESS commands.
||Mar 23, 2020
- Modify rblock contact resolution for cases of contact activity without overlap.
- Add probability to rblock-rblock contact inhibiting.
- Add the KEEP-INERTIAL keyword to the RBLOCK SCALE command. If used then rblock volume/inertia tensor are unchanged when scaling.
- Fix rblock cutting bug that may lead to some high aspect ratio rblocks not being cut.
- If scaling the timestep do not scale the piece velocities if fixed.
- Fix rblock contact save/restore of contact resolution state.
- When using the BALL TRACTION or RBLOCK TRACTION command to specify forces, set the reference gap accordingly.
- In the RBLOCK CONSTRUCT command allow for internal size control with the INTERNAL keyword.
- Fix a bug inhibiting contacts with wall facets.
- Fix the GROUP command using the REMOVE keyword.
- Add FISH and Python access to the ContactModelMechanical::setForce method.
||Feb 8, 2020
- Modify the setForce method in the Flatjoint contact model to set the normal gap consistent with the normal force.
||Jan 27, 2020
- Add the ability to set stresses in periodic ball packings
- Fix the BALL TESSELLATE command in the presence of gravity
- Fix a bug that can lead to an undefined model extent when restoring a data file
- Add some minimal tolerance to the extents of wall facets
- Compute the rblock centroid more accurately, shifting the computation to the centroid of the vertices
- Use a more robust tolerance on the moment contribution to contacts with rblocks
||Jan 20, 2020
- Add the ability to generate rigid blocks with periodic boundary conditions when performing a Voronoi tesselation from a set of balls.
- Fix a bug with contact model fish callback events. Undefined behavior could occur for models were several functions were registered with several callback events, depending on the order in which the functions were registered.
- Fix 3D polygon intersection used for reduced resolution with rigid blocks.
- Update the C++ contact model plugin template
||Dec 18, 2019
- Fix a bug introduced in Revision 17 that caused an error when restoring a save file with Hertz contact models. Backwards compatibilty is re-established with save files containing Hertz contact models created with Revision 16 or earlier, but save files created with Revision 17 will need to be re-created with Revision 18. We apologize for the inconvenience.
- Add the ability to query the strain energy at onset of failure upon a bond_break event in the Flat-Joint contact model.
- Fix a regression bug in the thermo-mechanical coupling logic. Coupling could potentially be skipped after a thermal-only calculation if the number of steps taken was equal to that taken during the previous thermal calculation sequence.
- Minor updates to the Soft-Bond contact model documentation.
||Nov 12, 2019
- Fix a bug involving recomputing the overlap volume between rblocks in 3D.
- Fix a bug when rotating rblocks about a point other than their centroids.
- When in timestep scaling mode, change the rotational equations of motion for rblocks to a simplified version to increase stability of the contact position.
- Add the user_area contact property to all applicable contact models, fixing the contact area.
- Add the reference gap to the softbond model.
- Fix softbond documentation regarding units of kn and ks.
- Add the area method to all applicable contact models, fixing the contact area to the current value.
- Add the BALL TRACTIONS commands to set contact forces consistent with stresses in ball assemblies via Voronoi tessellation.
- Add the RBLOCK TRACTIONS command to set contact forces consistent with stresses in rblock assemblies.
- Add the RBLOCK CONTACT-RESOLUTION INHIBIT-CONTACTS command to inhibit edge and vertex contacts in zero porosity packings of rblocks.
- Fix 2D overlapping polygon bug that could impact contact position and area computations for 2D rblocks with sides collinear.
- Fix 2D EPA bug for rblocks.
||Oct 15, 2019
- Fix an issue loading clump templates from files.
- Update FiPy Python module.
- Add Future Python module.
- Fix an issue with forces added to CFD balls and clumps.
- Update the Darcy flow example to reflect the new FiPy module.
- Add the read only attributes to enable querying the minimum, intermediate, and maximum principle stresses for balls, clumps, and rblocks.
||Sep 10, 2019
- Improve performance (reduce memory and decrease cycle time) by removing the storage of contact forces/moments outside of contact models. This will impact all user-defined contact models; they will need to be slightly modified and recompiled to conform to the standard.
- Fix rblock area computation when computing the planar polygon intersection
- Add the rblock.vertex.near intrinsic
- Fix velocity constraint on timestep computation for balls, walls, clumps and rblocks
- Fix clump and rblock timestep scaling
- Fix 2D gui Python example
- Fix wall result bug
- Add stress components to ball results
- Fix potential crash bug with rblock-rblock and rblock-facet contacts when determining the contact normal
- Fix potential potential bug with GJK due to compiler optimizations
- Fix multithreading in the RBLOCK ERODE command
- Documentation enhancements and updates
||May 17, 2019
- Add optimized method for computing planar polygon intersection
- Fix rblock brick integration in 3D
- Fix licensing issue with thermal and custom contact model
- Fix floating point exception when calling a MODEL NEW with periodic space
- Fix potential contact normal bug when blocks are exactly touching with rounding
- Smoothjoint contact documentation updates
- Fix rblock contact plotting in periodic space
||Apr 26, 2019
- Fix save/restore issue with rblock particle traces
- Add thermal contacts for ball-rblock, pebble-rblock and rblock-facet contacts
- Fix bug introduced in version 11 with rblock-rblock contacts using proximity or reference gap
- In 2D, implement angular velocity update for rblock-facet contacts when facets have angular velocity
- Fix measurement sphere computations with rblocks, specifically the intersection with sphere computation and method to determine if a box falls within an rblock
- Fix potential file compression bug resulting in loss of save files
- Fix a crash bug in thermal contact deletion
- Fix rblock thermal save/restore
||Apr 7, 2019
- Skip any missing driver messages when loading a web license
- Add the OpenSSL dlls to the executable directory
- Add the RBLOCK CONTACT-RESOLUTION INHIBIT-INTERVAL command
- Add the RBLOCK.INTERSECT FISH intrinsic
- Fix a floating point exception when creating zone coupling elements with walls
- Improve density scaling when pieces are not in contact
- Fix pebble-rblock contact resolution
- Documentation updates
||Mar 21, 2019
- Add a relative tolerance to check if points fall inside rblocks.
- Add the RBLOCK CONTACT UPDATE-AREA command to update the curvatures passed to contact models.
- Fix an issue with FLAC3D and FLAC version numbers to operate the codes.
- Fix density scaling for rigid blocks and clumps.
- Fix FISH access to the module specific maximum ratio.
- Fix a normalization issue during bonding with rblock-rblock and rblock-facet contacts.
- Fix an issue with automatic project saves that can impact save/restore, leading to random crashes.
- Fix pebble-rblock contacts.
- Documentation updates.
||Feb 20, 2019
- Add an additional check for rblock convexity in 3D.
- Add the ability to export 3D rblocks to 3DEC 5.2.
- For 3D rblocks where the mesh is not 3 connected, switch back to the old contact resolution as it is faster.
- Fix menu flicker in gui.
||Feb 7, 2019
- Fix a bug when setting the position or rotating a rigid block with FISH or Python.
- Update web licensing to allow for older CPUs.
- Fix bug in wall facet contact resolution. This could be manifest when using a reference gap or when there is significant overlap between a ball or pebble and a facet.
- Switch 3D rigid block contact resolution to use GJK+EPA combined with direct overlap computation versus convex hull computation. This version is more efficient and more robust when determining the contact position in 3D.
- Ensure weak ordering in the 3D EPA when merging facets.
- Add the CONTACT CMAT PROXIMITY command.
- Deprecate the usage of the PROXIMITY keyword in the CMAT ADD/DEFAULT/MODIFY commands.
- Update to Qt 5.12.
- If the measurement sphere position or radius is updated with FISH or Python tag for an update in plotting and reset the valid bit.