Software: PFC
PFC3D Updates
These updates are to be used only by licensed PFC3D users. They are not "trial" versions of the code, nor are they fully functional installations - before downloading the update you must install PFC3D from the Itasca CD-ROM.
| PFC3D 3.1, Current Version Pre-Requisites Update Instructions Revision History C++ Option Files |
|||||||
|
|||||||
| PFC3D 3.0 (Previous Version) Update Instructions Revision History C++ Option Files |
||||||
|
||||||
Close This PanelX
PFC2D/PFC3D 3.10 Modification List
for pfc2d.exe and pfc3d.exe.
Type PRINT VERSION to display version information
in format of 3.10-XXX, where XXX is sub-version number.
========================================================================
Sub-Version
Number Date Description
257 08/22/05 Version 3.10 released to users on Itasca CD 17A.
258 09/21/05 BUG FIX to plotting logic: Crash occurred if the plot
window was brought to front at exactly the wrong time
during plotting.
259 10/05/05 Version 3.10 placed on Itasca CD 18A.
Updated security logic - network support in same
executable.
Note that new security drivers are required -
which are available on our website.
260 10/27/05 Fixed problem restoring pre-259 save files.
262 11/10/05 Fixed problem when printing FISH arrays containing
character strings.
263 11/11/05 Fixed security check in FLUID command.
264 12/01/05 Fix bug: display serial number in Help->About dialogue.
Fix bug: read customer information (SET {cust1, cust2})
from Windows registry during code startup.
265 12/07/05 Fix bug: memory leak when using user-written contact
models.
266 01/10/06 Enhance parallel-processing option to support GROUPs.
267 01/26/06 Fix bug: Only delete clumps by the DELETE CLUMP command,
and not when last ball used by a clump is deleted.
268 01/31/06 Fix bug in C++ option: TITLE command works correctly.
Modify structure of user{2,3}dproj directories.
269 02/14/06 BUG FIX to plotting logic: redraw all plot-items in views
automatically, and do not leave out balls if walls present.
This bug was introduced into 3.10-258.
270 skipped
271 02/22/06 Support debug compile for C++ user-written code option.
272 03/22/06 Security logic startup: added informational message about
compatibility with Windows Remote Desktop.
273 04/03/06 Fix bug (PFC2D fluid option only): porosity calculation.
274 07/07/06 Improve pressure BC (PFC fluid option only).
275 07/10/06 (1) Make FISH intrinsics w_radvel and w_radfob available
for circle (2D) walls. (2) Add FISH intrinsics w_posend1
and w_posend2.
276 07/11/06 Fix bug when saving FISH variables that point to objects
that have been deleted. For user-defined CPP code: FISH
variables that point to user-defined memory-allocated
objects will not save/restore properly.
277 07/25/06 Fix bug in clump logic: ignore null clumps (those with
no balls).
278 08/08/06 Update security logic to support Windows Remote Desktop.
Users must update their security drivers to >= 7.3.0.
279 08/22/06 Fix bug in fluid option and FluidCell plotting span.
Reset damping constants at user-written ball-ball contacts
based on estimated Kn and Ks from the user-written model.
280 09/14/06 Fix bug in fluid option (PFC2D only): calculate porosity
in cell.
281 09/14/06 Fix bug for user-written C++ option: provide proper
security.lib in user{2,3}dproj\lib directory.
282 09/20/06 Add thermal option to gold keys and demo mode.
283 skipped
284 10/31/06 Modify b_stress FISH intrinsic account for all ball
contacts (ball-ball and ball-wall).
285 12/08/06 Version 3.10-285 placed on Itasca CD 19A.
286 01/10/07 Add FISH intrinsics for AC/DC multi-process mode.
287 01/18/07 Fix bug in AC/DC logic, PFC3D only: commands PROPERTY
ZVEL and PROPERTY ZDISP now work properly.
288 02/27/07 Modify parallel-option behavior so that a key need only be
present on the master machine during parallel startup (PAR
START command) and cycling. Previous behavior required a
key on each machine during its startup.
289 03/12/07 Fix bug that only affects PFC2D/3D thermal option. Before
the fix, thermal pipes were activated between balls and
general walls and these walls gave a zero temperature
boundary condition. After the fix, thermal pipes are only
activated between balls and walls if wall temperature is
set (via WALL id=X temp=tval). Wall temperatures are
printed by PRINT WALL PROP command, and the temperature is
either "not set", in which case the wall acts as an
adiabatic boundary, or equal to the specified value.
290 03/31/07 Fix bugs in parallel option: (1) balls, and associated
contacts migrate properly across partitions, and (2) ball
plot item displays balls properly after cycling (they were
disappearing).
291 04/13/07 Fix bug in PFC2D that sometimes caused large spurious
forces to act on balls lying on the "reverse" side of
walls.
292 04/23/07 Use default window position if unable to get last position
from Windows registry --- previous behavior: error msg.
293 04/25/07 Fix bug in IV plotting: ball plot item now displays balls
properly after cycling (they were disappearing).
294 05/22/07 Make the code function properly with older keys.
295 06/06/07 Do nothing if unable to read ITASCA system variable from
Windows registry at HKEY_CURRENT_USER --- previous
behavior: error msg.
296 06/21/07 Fix bug in multi-process mode such that slave-balls
maintain their correct entries in the cell space as they
move. Before the fix, slave-balls were not migrating
across the cell space. If a slave ball moved out of its
original cell, its entry in that cell was not removed. If
that slave ball was then deleted, that entry became a
dangling pointer which could cause a crash whenever it was
referenced.
297 07/02/07 Enhance logfile capability so that informational and error
messages now get written to the logfile.
298 08/09/07 Enhance parallel-processing option: slave processes are
forced to wait until master completes the SAVE and RESTORE
operations. Previous implementation did not enforce this
condition, and thus, if slaves continued their execution
and sent/received data while a SAVE or RESTORE operation
was still in progress, then the error: "Communications
buffer overflow" occurred.
299 08/22/07 Fix bug in computation of critical timestep when viscous
damping is active. Let dt0 denote the critical timestep
without viscous damping, and let dtV denote the critical
timestep with viscous damping active. Previous
implementation sometime gave dtV > dt0 (for cases with
damping constants less than about 0.2), and this made the
mechanical computation nearly unstable. The bug fix sets
the final dt = min( dtV, dt0 ), which means that the
critical timestep is never able to be larger than its
value without viscous damping.
300 08/23/07 Fix bug in JSET command. Some of the JSET command
parameters are specified in terms of mean and standard
deviation, and the related JSET properties are drawn from
either a uniform or a Gaussian distribution. In the
previous implementation, the property values for the case
of a uniform distribution were being computed using:
v = m + 2*(phi - 0.5)*d, where m and d are the mean and
standard deviation, respectively, and phi is a number
between 0 and 1 drawn from a uniform distribution. The
corrected implementation uses the expression:
v = m + 2*(phi - 0.5)*d*sqrt(3.0), where sqrt(3.0) is
the square root of three.
301 12/17/07 Updated security logic to support new demonstration
version standard. The presense of a CFG file (named
PFC2Ddemo.cfg) indicates "demo" mode which allows cycling
of small models (PFC2D: 1000 balls or less, PFC3D: no demo
mode). This corresponds largely to the old "student"
license.
302 05/20/08 Fixed divide-by-zero errors in contact model "softening"
(called Displacement Softening Model in 3.1 manual).
303 05/29/08 Modify force-displacement logic to skip all calculations
for the "softening" contact model if there is no overlap
and the model is in its fully broken state.
304 06/04/08 Fix bug in periodic-space logic to prevent balls from
losing their EXTRA and GROUP data when switching state
(regular/controller/slave).
Close This PanelX
fname: pfc300pre.TXT
PFC2D/PFC3D (Version 3.00, pre-release) PUBLIC MODIFICATIONS LIST
Type PRINT VERSION DEVELOPMENT to display version information.
========================================================================
Version Date Description
3.00-133A 06/01/01 Version 3.0 pre-released (ALPHA version)
(-067-101-133)
3.00-134A 06/27/01 Version 3.0 pre-released (ALPHA version)
(-067-101-134)
3.00-135A 07/19/01 (1)Bug fixes (affect both PFC2D & PFC3D):
(-068-104-135) (a) Correct for time zone when checking lease keys (previously used GMT)
(b) Add capability to restore SAV-files from a CD
(c) Correct formatting of printout generated via PRINT CLUMP BALL
command.
3.00-137A 08/17/01 (1) Modifying ball friction or stiffness during cycling
(-069-105-137) will now propagate this information to contacts --- before,
the information was only propagated during next
CYCLE command.
(2) Add Burgers model and Hysteretic damping model DLLs
(3) Make switch NOTENSION for viscous damping
3.00-138A 08/28/01 (1) Bug fixes (affect both PFC2D & PFC3D):
(-069-105-138) (a) Correct Hertz Model using General Wall.
3.00-139A 09/13/01 (1) Bug fixes (affect both PFC2D & PFC3D):
(-069-106-139) (a) Correct Gen. command with Filter under parallel processing.
(b) Correct codes on problem; restoring Hertz Model from
SAV file.
3.00-147A 01/18/02 (1) Add Thermal logic (option)
(-069-110-147) (2) Add CPPUWC(User-Written C++ Code, option) features
(3) Make Solve command Parallel aware (Parallel option)
3.00-148A 01/29/02 (1) Adjust time zone for hardware KEY
(-069-110-148)
3.00-149A 02/01/02 (1) BUG fix:
(-069-110-149) (a) Windows fatar error during cycling after restoring
SAV files (only for v.3.0)
3.00-151A 02/13/02 (1) Add new functions for CPPUWC which allow to access
(-069-110-151) registered member variables in user-written classes from command line.
(2) BUG fix: accumulating time logic that existed on 147A-150A
3.00-152A 03/04/02 (1) Add new functions for CPPUWC, set CPPCALL #
(-069-110-152) %%% and access to extra
(2) Correct slip velocity contributed by rotation of each entity
using the distance from ball center to contact point
3.00-153A 03/27/02 (1) BUG fix
(-069-110-153) (a) Windows fatal error
(b) Change clump local-damp when changing involved balls local-damp
(C) FISH I/O
3.00-154A 05/03/02 (1) Add plotting functions in CPPUWC
(-069-110-154)
3.00-155A 06/13/02 (1) Add CPPUWC features
(-069-110-155) (2) Change viscous damping command structure
3.00-156A 06/13/02 (1) Add CPPUWC features
(-069-110-156)
3.00-158A 08/01/02 (1) BUG fix
(-073-110-158) (a) Command "plot clump" with JSET
3.00-159A 08/20/02 (1) Add thermal logic
(-074-110-159) (2) BUG fix
(a) Command "plot table"
3.00-161A 10/09/02 (1) add Udata::pointer_type() in CPPUWC
(-074-110-161) (2) add FISH function for thermal option
3.00-163 11/11/02 (1) Release version for 2D
(-077-112-163)
3.00-164 11/25/02 (1) BUG fix
(-077-112-164) (a) Retrieve SAV file with GW plot item before 154A version
3.00-165 02/24(28)/03 (1) BUG fix
(-080-112-165) (a) Parallel processing, communication buffer overflow & interface
region balls' detection
(b) CPPUDM (PFC3D only); data "fb.ptt_dot" communication between
PFC and DLLs
(2) Change the way of Registry inq. (HKEY_CURRENT_USER to HKEY_LOCAL_MACHINE
& CFG_INFO)
(3) Add FISH function c_gobj1(cp), c_gobj2(cp), c_go1clist(cp)and
c_go2clist(cp), these are the same as c_ball1(cp), c_ball2(cp),
c_b1clist(cp) and c_b2clist(cp)
3.00-166 03/07 (1) BUG fix
(-081-112-166) (a) Parallel processing with EXTRA ARRAY with ###
(2) Add no-range ball generation in GEN command
(GEN id 1 10 rad 1 1 x 0 10 y 5 5 z 0 10)
3.00-167 03/14 (1) BUG fix
(-082-115-167) (a) History of ball stress s13, s23 (affects 3D only)
(2) Modify Registry inq. HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER
3.00-168 03/24 (1) Add capability of CALL, SAVE and RESTORE from GUI windows
(-083-116-168) with space including path
3.00-169 04/10 (1) Add GUI for thermal option (temp., pipe, power and
(-083-116-169) pob)
(2) Add functionality for WALL has temperature (thermal option)
(3) BUG fix
(a) Plotting problem with deleted line and flat walls
(b) Retrieve SAV file created 154A or before
3.00-170 04/21 (1) Change Command Syntax: SET DAMP VISCOUS NOTENSION ON/OFF: ON/OFF is needed
(-083-116-170) after alpha version
3.00-171 04/24 (1) BUG fix:
(-083-116-171) (a) Time step calculation of Hertz contact model with viscous damping
(b) Command "print contact prop" for Hertz contact model
3.00-172 05/07 (1) Make 3D release version
(-083-116-172)
3.00-174 06/14 (1) BUG fix:
(-083-116-174) (a) Motion calculation of volumetric center by angular velocity (general wall logic 2/3D)
(b) Retrieve SAV file created 154A or before
3.00-175 08/04 (1) Add command "SET DAMP VISCOUS MODE 0(default)/1" and "DAMP VISCOUS MODE 0(default)/1" and the mode functionality in FD law (see below)
(-083-116-175) --- Adding the viscous damping term in the PFC2D/3D contact model ---
Putting the damping viscous term on contact models has two ways; mode 0 and 1.Users can set these by the command. The default is zero.
SET DAMP VISCOUS MODE 0(default)/1
The mode is set to 0 or 1 for all newly created contacts.
DAMP VISCOUS MODE 0(default)/1
The mode is set to 0 or 1 for all contacts in the range.
Below is the mode description.
Mode 0 (default):
The viscous damping force is added AFTER checking contact bond breaking criteria and frictional slip criteria.
Viscous damping in this case applies to the built-in contact models (the Linear contact model or Hertz-Mindlin contact model)or the user-defined contact models.
Mode 1:
The viscous damping force is added BEFORE checking contact bond breaking criteria and frictional slip criteria.
Viscous damping in this case applies to the built-in contact models (the Linear contact model or Hertz-Mindlin contact model).
NOTE that users who want to make a user-defined contact models with a viscous damping term within their code should include the viscous damping term in the calculation of contact shear force and set it to variable "cs_force" in FdBlock (in the updated contmodel.h).
Also, mode 1 ("SET DAMP VISCOUS MODE 1" or "DAMP VISCOUS MODE 1") should be set o avoid extra damping forces added externally to the user-defined model.
(2) Add solve ratio in cycle information during SOLVE.
3.00-176 08/06 (1) BUG fix:
(-083-116-176) (a) Fatal error with the ductile model : a user-defined contact model.
3.00-177 09/02 (1) Add information of Maxfric(on/off) from Print Wall Prop command
(-084-116-177) (2) BUG fix:
(a) Wrong message in PRINT CELL after SAVE RESTORE and BALL command
(b) Retieve 0 for User-defined object pointer in extra array (CPPUWC option)
(3) Add Mag(Udvect &) to get magnitude of Udvect class (CPPUWC option)
(4) Add Udata::pointer_type() = 105 for User-defined object (CPPUWC option)
(5) Add Udata::Uremap(Uobj *uop) function for User-defined object (CPPUWC option), see example below
class Uobj_2 : public Uobj {
};
class Uobj_1 : public Uobj {
private:
Uobj_1 *uobj1;
Uobj_2 *uobj2;
// ....
};
void Uobj_1::read(Ufile &fi) {{
uojb1 = (Uobj_1 *)Udata::Uread(fi,uobj1);
uobj2 = (Uobj_2 *)Udata::Uread(fi,uobj2);
//....
}
void Uobj_1::remap(void) {
uojb1 = (Uobj_1 *)Udata::Uremap(uobj1);
uobj2 = (Uobj_2 *)Udata::Uremap(uobj2);
// ....
}
3.00-178 10/14 (1) Add command : DELETE WALL #1 <#2 #3 #4 ...>, DELETE WALL #1 to #2 <#3 to #4> ...
(-085-116-178) (2) BUG fix:
(a) Udata::coord(), Udata::m_poros() and Udata::m_sfac() (CPPUWC option)
(b) Save/Restore for Measurement Circle object of CPPUWC function (CPPUWC option)
3.00-179 10/16 (1) BUG fix:
(-085-116-179) (a) Inconsistent definition of “av-unbal” in cycle information
with History diagnostic “muf”
(2) Note: on definition of average unbalanced force used in ver.3.0,
In the case of SOLVE AVERAGE command,
the average unbalanced force is calculated as sum of the absolute values of
all out-of-balance force components for all balls divided by number of
out-of-balance force components used in making the summation.
In the case of SOLVE RATIO ### (with SET SOLVE_RATIO AVERAGE) command,
the average unbalanced force is calculated as sum of the absolute values of
all out-of-balance force components for all balls divided by number of
balls that have at least one non-fixed translational degree of freedom.
3.00-181 12/22 (1) BUG fix:
(-085-116-181) (a) Wrong stress value in measurement circle (sphere) with Ball-General Wall contact
3.00-182 01/14 (1) BUG fix:
(-085-116-182) (a) Udata::clump_head(), Udata::b_clump() (CPPUWC option)
(2) Add Udata::Uwrite() and Udata::Uread() for Uclump (CPPUWC option)
3.00-183 01/19/04 (1) BUG fix:
(_085-116-183) (a) Udata::cl_list(), Udata::cl_add()(CPPUWC option)
3.00-184 01/26/04 (1) BUG fix:
(_085-116-184) (a) Udata::c_nstrength(), Udata::c_sstrength()(CPPUWC option)
3.00-185 02/25/04 (1) BUG fix:
(_086-116-185) (a) Save\Restore problem : Table Plot Item
(b) FISHCALL "pre_cycle" with uniform density scaling mode
3.00-186 04/06/04 (1) BUG fix:
(_086-116-186) (a) Data communication between process with Parallel Bond in Parallel option
(Parallel Option)
3.00-187 05/12/04 (1) BUG fix:
(_086-116-187) (a) Contact recovery after deleting permanent clump
3.00-188 06/16/04 (1) BUG fix:
(_086-116-188) (a) SET DISK t command (PFC2D, in the case of non unit thickness of t)
3.00-189 07/15/04 (1) Update clump logic in the case of iteration fail of angular velocity calculation
(_086-116-189) (3D only)
3.00-190 09/01/04 (1) BUG fix:
(_086-116-190) (a) Contact detection between a Flat wall and Balls in the case that the wall poistion
is on a cell boundary.
3.00-191 09/21/04 (1) BUG fix:
(_086-116-191) (a) Udata::w_rvel() for 3D (CPPUWC option)
3.00-191 09/21/04 (1) BUG fix:
(_086-116-191) (a) Udata::w_rvel() for 3D (CPPUWC option)
3.00-192 03/10/05 (1) BUG fix:
(_086-116-192) (a) Udata::c_prop() (CPPUWC option)
3.00-193 05/12/05 (1) BUG FIX: Save/restore problem if using CPPUWC.
3.00-194 11/14/05 (1) BUG FIX: Fixed problem when printing FISH arrays
containing character strings.
========================================================================
EOF: pfc300pre.TXT


