Download the update file to a convenient location and double-click on the file.
Visual C++ 2017 Runtime Library
PFC 6.0 requires the Microsoft Visual C++ 2017 Runtime Library. If these codes have not been previously installed or are experiencing errors related to missing DLLs, the runtime may not be present and will need to be installed. Use the download below to install the necessary files. Note this step need only be performed once.
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.
Download Recent Update
Latest Version: 6.00.21
Released On: Saturday, Feb 8, 2020
PFC 6.00 64-bit Update
Software Update Revisions
||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.