PhiPsi v1.59.57 (2026-07-15) new features and bug-fixes:

  1. Added MUMPS and Lis solver support for Linux Alpine version.
  2. Fixed OpenBLAS thread count mismatch with Key_Num_Process, ensuring solvers respect the specified thread count. Added -Dopenblas compilation directive.
  3. Updated MUMPS solver to version 5.9.0 with symmetric matrix support.
  4. Implemented OpenMP parallelization for 3D XFEM stiffness matrix assembly and SIF calculation (Cal_SIFs_IIM_3D.f90), with significant performance improvement.
  5. Extended CFCP=1 (maximum circumferential stress criterion) to 3D problems.
  6. Added energy curve calculation for 2D quasi-static problems (*Key_Cal_Energy, *.ener file) including external work, fracture energy, elastic strain energy, and residual energy.
  7. Adjusted Kequ_Expected and St_Expected coefficients to improve energy calculation accuracy.
  8. Added keywords for 2D explicit dynamics: *DY_SIFs_IIM_Enable_Velocity_Coupling, DY_SIFs_IIM_Enable_f1_f2, DY_Save_Propagation_Speed_at_Specified_Tip (.prst), and *DY_Time_to_Active_Crack_Propagation.
  9. Fixed bugs in Check_Crack_Grows.f90 (missing KII in equivalent SIF calculation) and Cal_SIFs_IIM.f90 (uninitialized variables).
  10. Fixed frequent errors in 2D crack propagation with Key_Propa_Type=1 by converting fixed-dimension arrays to dynamically allocated ones.
  11. Migrated all fixed-form (.f) source files to free-form (.f90) across all directories.
  12. Removed Silverfrost compiler related content and standardized code indentation.
  13. Added progressive H-tip enrichment for 2D fracture (Key_TipEnrich=5, Asymptotic H function).
  14. Added keyword *DY_Save_Crack_Length_2D for saving crack length data to *.dcrl and *.dprl files.
  15. Added keyword DY_Save_SIFs_at_Specified_Tip for saving SIFs at specified crack tips (.sift file) in 2D explicit dynamics.
  16. Added EDY_Number_Enriched_Nodes_3D.f90 with two-phase stable numbering strategy to fix enriched DOF correspondence issues in 3D explicit dynamics.
  17. Implemented local L² projection subroutines for history-preserving enriched DOF transfer during crack propagation in 3D explicit dynamics (testing ongoing).
  18. Added keyword EDY_Save_SIFs_at_Specified_Plane for saving SIFs at intersection points with specified planes (.sfpl file).
  19. Added keyword EDY_Save_Aperture_at_Specified_Point for saving aperture at user-specified points (.apep file) in 3D explicit dynamics.
  20. Added keyword *EDY_Crack_Propagaton_at_Specified_Time_and_Speed for crack propagation at specified time and speed.
  21. Added keyword EDY_Save_SIFs_at_Specified_Point for saving SIFs at user-specified points (.sifp file) in 3D explicit dynamics.
  22. Improved lumped mass matrix algorithm using Gravouil_2009 equation 41 instead of Menouillard_2006 equation 25.
  23. Added inertial terms and frictional surface traction terms to interaction integral SIF calculation.
  24. Added adaptive contact penalty parameter algorithm (Key_EDY_Contact_Penalty_Parameter_Scheme=2).
  25. Added keyword *Key_EDY_Lumped_Mass_Scheme (default=3) with three options for lumped mass matrix assembly.
  26. Added keyword EDY_Internal_Force_Scheme with three options including graph coloring for parallel computation.
  27. Added energy calculation for explicit dynamics (kinetic, internal, total) with Save_EDY_Energy.f90 (*.edye file).
  28. Improved 3D explicit dynamics FEM by replacing mass matrix with mass vector, reducing computation time by 86.67% and memory usage by 76.07%; further improved using sparse CSR format, reducing time by 50%.
  29. Added keywords EDY_Data_Save_Interval_Timesteps, EDY_Info_Show_Interval_Timesteps, EDY_Total_Time, and EDY_Force_Time for explicit dynamics control.
  30. Added keyword *Key_3D_Slip_HF_Keep_Pressure to maintain fluid pressure after each fracturing stage without further propagation.
  31. Added keyword Key_Save_Stiffness_Matrix for saving stiffness matrix to text files (.csra, *.csrj, *.csri, *.csrn).
  32. Fixed major bugs in EBE-PCG solver (Ele_by_Ele_FEM_PCG_3D.F90 and Ele_by_Ele_FEM_PCG.F90): corrected constrained DOF processing, switched to true residual norm as convergence criterion, and fixed preconditioner calculation.
  33. Fixed major bug in Ele_by_Ele_XFEM_PCG_3D.90 by adding Elem_Topology_Markers_3D to determine which XFEM elements need recalculation through topological changes.
  34. Increased EBE-PCG solver convergence tolerance from 1.0D-6 to 1.0D-9.
  35. Added keyword *User_Specified_Crack_Mesh_Size for user-defined discrete fracture mesh size for 3D fractures.
  36. Added keywords *Key_Cracks_InPlane_Growth and *Key_Initiation_3D_Crack_Normal_Vector for 3D crack control.
  37. Added keyword *HF_Pres_Initial_Guess for 3D hydraulic fracturing.
  38. Fixed initialization bugs in 3D explicit dynamics (initial velocity, SIF inertial terms, contact force NaN issues).
  39. Bug fixes and performance optimizations throughout.

PhiPsi v1.58.8 (2026-02-12) new features and bug-fixes:

  1. Added interaction integral method for 3D stress intensity factor calculation.
  2. Improved the logic for 2D crack and hole intersection: if a hole is just penetrated by a crack in the current propagation step, it will no longer be checked for new crack initiation in that same step.
  3. Fixed an issue in Tool_Dis_Point_to_3D_Tri.F and Tool_Dis_Point_to_3D_Tri_only_Dis.F90 where an excessively small tolerance caused failure in calculating the distance from a point to a 3D triangle when dealing with very small elements.
  4. Added the keyword Key_3D_SIFs_Print to output stress intensity factors at each vertex of 3D problems to the screen.
  5. Bug fixes.

PhiPsi v1.56.12 (2024-11-17) new features and bug-fixes:

  1. A new solver STRUMPACK for linear system equations has been added.
  2. Improved sparse stiffness matrix assembly algorithm.
  3. Added keyword *Key_User_Defined_2D_Crack_Path. When activated, cracks will propagate along the user-defined paths in 2D analysis.
  4. The BLAS library has been replaced by OpenBLAS.
  5. The SuperLU solver for linear system equations has been updated to version 7.0.0.
  6. Added keyword *Key_Weibull_E_n. When *Key_Weibull_E_n = 1, it activates Weibull distribution for elastic modulus of materials. See PhiPsi keywords manual for details.
  7. The Lis solver for linear system equations has been updated to the latest version 2.1.6.
  8. The MUMPS solver for linear system equations has been updated to the latest version 5.7.3.
  9. Bug fixes.
  10. A new maximum shear stress fracture propagation criterion was added (*CFCP=4, see PhiPsi keywords manual for details).
  11. The gfortran compiler has been updated to GCC version 14.1.0.
  12. Bug fixes and enhancements of 3D XFEM.
  13. Keywords file now supports parameter definition and four arithmetic operations (+,-,*, and /). See PhiPsi keywords manual for details.
  14. Now you can start a PhiPsi simulation in Terminal using the following instruction, for example:
PhiPsi_Win64.exe -i XFEM.kpp -n 4
where -n specifies the number of threads for the OpenMP parallel simulation.

PhiPsi v1.55.15 (2023-08-14) new features and bug-fixes:

  1. Enhancements of 3D XFEM.
  2. Support output vtk files for 3D cracks (Set *Key_Save_vtk to 1).
  3. Compiler updated to GCC version 13.1.0.
  4. New method to calculate 3D crack aperture (Set *Key_Crack_Aperture_Method to 1 to active).
  5. Support degenerated hexahedral elements.
  6. Some bugs on data conflicting in OpenMP have been fixed.
  7. Now supports intersection of arbitrary 3D cracks and the simulation of 3D complex fracture network.
  8. Add a new linear system solver: PCG-EBE (Set *Key_SLOE to 11).
  9. Supports simulation of contact between3D crack surfaces.
  10. Dynamic memory management for 3D XFEM simulation.
  11. Supports generation of random 3D natural fractures.
  12. Supports the import of FracMan natural cracks file (*.fab file).
  13. Bug fixes.
  14. Optimization.

PhiPsi v1.25.0 (2019-08-01) new features and bug-fixes:

  1. Kill elements to simulate excavation.
  2. Bug fixes.
  3. Optimization.

PhiPsi v1.23.2 (2019-04-16) new features and bug-fixes:

  1. Propagation of 3D cracks.

PhiPsi v1.21.0 (2018-09-26) new features and bug-fixes:

  1. A new linear solver SuperLU added.
  2. README.txt added.

PhiPsi v1.20.2 (2018-09-10) new features and bug-fixes:

  1. Support field problems with cracks and holes.

PhiPsi v1.19.1 (2018-08-28) new features and bug-fixes:

  1. Fixes a critical bug on stiffness matrix assembly of different kinds of enriched elements.
  2. Support random hole generation.
  3. Support cracks emerged form holes.

PhiPsi v1.18.6 (2018-06-19) new features and bug-fixes:

  1. Support triangular elements degenerated from quadrilateral elements.
  2. Improve the interactive display of error and warning information.
  3. Support nonlinear analysis such as plastic analysis.

PhiPsi v1.17.4 (2018-01-11) new features and bug-fixes:

  1. Add a linear system solver called Lis which supports OpenMP.
  2. Computational efficiency optimization (up to 50% as least).
  3. Add the support for the interactions between cracks and polygonal inclusions.

PhiPsi v1.16.3 (2017-10-31) new features and bug-fixes:

  1. Add the peridymanic analysis for simple problems.
  2. Add the support for the random generation of the irregular polygon inclusions.
  3. Add a new random generation algorithm which is controlled by a seed number.
  4. Improvements on the save of the binary data.
  5. Adds a new integration rule, i.e., subquads integration.
  6. Change the suffix of the keywords file to kpp.
  7. Add the support for curved cracks.
  8. Improvement: expand dimensions of related matrices when calculating the B matrix.

PhiPsi v1.13.7 (2017-05-21) new features and bug-fixes:

  1. Fix the bug in subroutine Get_Node_Stress_XFEM.f.
  2. Improvements of subroutines Vector_belongs_Matrix_Is_Dou.f, Vector_belongs_Matrix_Is_Int.f, and Matrix_Count_Row_Int.f.
  3. Rewrite the subroutine Tool_Intersection_Line_and_Circle.f with a totally new scheme.
  4. Improvement: clear all the results files in the current work directory by setting the keyword *Key_Clear_All to be 1.
  5. Add the support for the simulation of the intersection of cracks and holes.
  6. Add the support for the crossing crack.
  7. Improvement: identify the input parameters of the executable program by using "getarg" function.

PhiPsi v1.9.0 (2017-04-16) new features and bug-fixes:

  1. Fix a bug for the analysis of the static field problems.
  2. Add the analysis type for the transient field problems.
  3. Add the explicit dynamic analysis.
  4. Enhance OpenMP supports in the following subroutines: a) Get_Node_Stress_FEM.f b) Get_Gauss_Stress_FEM.f c) Assemble_Mass_Matrix_FEM.f d) Assemble_Stiffness_Matrix_FEM.f e) Get_Gauss_Disps.f
  5. Add the molecular dynamics analysis.
  6. Add the support for the plasticity material and damaged material.
  7. Add the support for the cohesive crack.
  8. Improvement: propagation increment is now allowed to be less than the length of an element.

PhiPsi v1.5.3 (2016-11-01) new features and bug-fixes:

  1. Add 3D XFEM analysis for the simple 3D planar crack.
  2. Add the support for the coupling of degrees of freedom (DOFs).
  3. Add the implicit dynamic analysis.
  4. Add the support the thermal stress.
  5. Add the support for the Biot consolidation.
  6. Add the analysis type for the static field problems.