PPView is a visualization tool for PhiPsi. It enables users to:
Perform PhiPsi simulations;
View models defined in PhiPsi keyword files (.kpp files);
Edit PhiPsi keyword files (.kpp files);
View simulation results generated by PhiPsi;
Import Abaqus model files (.inp files).
PPView supports the following operating systems:
Windows;
macOS (Apple Sillicon);
Linux (e.g., Ubuntu).
The latest PhiPsi solver executable is available within PPView, for Windows users, for example: C:\Program Files (x86)\PhiPsi\PPView\PhiPsi\PhiPsi_Win64.exe.
2. Basic usage
2.1 Installation
It is recommended to install by default to the path C:\Program Files (x86) folder. When finished, a shortcut for PPView will be created on the desktop.
2.2 Window Layout
The PPView interface is composed of a menu bar, a toolbar, a model tree, a data analysis panel, an operation log panel, and the main window.
2.2.1 The menu bar
The menu bar encompasses several sections: File, Analysis, View, Windows, Setting, Tools, Help, and About.
File
- Opening kpp file: Open the PhiPsi keywords file, i.e., *.kpp file.
- Open example kpp file: Open the PhiPsi keywords file of examples, i.e., *.kpp file.
- Edit kpp file: Edit the PhiPsi keywords file.
- Check kpp file: Check the PhiPsi keywords file.
- Save kpp file as...: Save the current kpp file as other kpp file.
- Save project as...: Duplicate the current project. The whole work directory (model files, boundary conditions, solver results, etc.) is copied and the kpp file is saved under a new name; the paths inside the new kpp file are rewritten so that *Work_Directory points at the new work directory and any other path-bearing keyword (e.g. *PPV_STP_FILE) follows it. The keyword *Filename is left unchanged, so the copy is a self-contained and runnable project. By default the duplicate is named <name>_duplicate_<n> (the index grows automatically and the kpp file and the work folder always share the same index) and is placed beside the current kpp file and beside the current work directory. Both the file name and the location can be changed. When the copy is finished, PPView asks whether the duplicated project should be loaded right away; choosing Yes switches the current session to the new project. When the current kpp file lies inside the work folder, the duplicate is made self-contained: the new kpp file is placed inside the new work folder next to the copied data files, and the current kpp file is not carried over.
- Open work directory: Open work directory defined in the keywords file.
- Open PhiPsi log file: Open PhiPsi running log file (*.log) which is stored in the work directory.
- Clear result files: Clear result files of the current work defined in the keyword file.
- Create a blank kpp file: Create a blank kpp file in a user defined folder.
- Import Abaqus model (.inp): Import Abaqus model (.inp file). PPView will automatically transform the Abaqus model file to PhiPsi model files. The element information, node information, boundary conditions, external forces, and materials defined in the Abaqus model file will be handled. For 2D problems, the supported element types include CPS4, CPS4R, CPS4I, CES4, and CPE4R; For 3D problems, the supported element types include C3D8, C3D8R, C3D8H, C3D8I, C3D8RH, and C3D8IH. The supported loads include concentrated force and pressure. The extracted material parameters include elastic modulus, Poisson's ratio and density. Once the Abaqus model file has been read, PPView will automatically plot the model and update the kpp keyword file based on the extracted data.
- Import geometry file (.step): Import geometry model file (.step).
- Recent kpp file: Open recent kpp files.
- Save plot as image: Save pictures.
- Copy Project: Copy the entire project folder (all kpp files, geometry, results, etc.) to a user-defined new location. Useful for backing up a project or creating a variant run.
- Exit: Exit PPView.
- Close and restart PPView: Close and restart PPView.
Analysis
- Run kpp file with PhiPsi: Start the PhiPsi kernel to solve the problem defined in the keywords file.
- Stop PhiPsi: Stop all running PhiPsi tasks.
- Refresh results: Reload the result files of the currently running PhiPsi task.
View
- Isometric: Plot in isometric view.
- XY plane, (Z+): Plot in xy view (z plus).
- XY plane, (Z-): Plot in xy view (z minus).
- XZ plane, (Y+): Plot in xz view (y plus).
- XZ plane, (Y-): Plot in xz view (y minus).
- YZ plane, (X+): Plot in yz view (x plus).
- YZ plane, (X-): Plot in yz view (x minus).
- YX plane, (Z+): Plot in yx view (z plus).
- YX plane, (Z-): Plot in yx view (z minus).
- ZX plane, (Y+): Plot in zx view (y plus).
- ZX plane, (Y-): Plot in zx view (y minus).
- ZY plane, (X+): Plot in zy view (x plus).
- ZY plane, (X-): Plot in zy view (x minus).
- View cut manager: Open the view cut manager to plot user defined section view along the x, y, and z directions.
- Rotate 5° around X axis: Rotate 5° around the X axis.
- Rotate 5° around Y axis: Rotate 5° around the Y axis.
- Rotate 5° around Z axis: Rotate 5° around the Z axis.
- Auto rotate around X, Y, Z axes: Automatically rotate once around the X-axis, Y-axis, and Z-axis respectively.
- Move left: Move left.
- Move right: Move right.
- Move up: Move up.
- Move down: Move down.
Windows
- Minimize the Window: Minimize the Window.
- Maximize the Window: Maximize the Window.
- Fullscreen: Fullscreen the window.
- Center: Center the window.
- Toolbar: The toolbar sub-menu. It shows or hides the button groups of the toolbar, and customizes the groups whose content the user is allowed to change:
- File Operations: Show or hide the File Operations button group.
- Plot & Zoom: Show or hide the Plot & Zoom button group.
- Views: Show or hide the Views button group.
- Display Modes: Show or hide the Display Modes button group.
- Labels: Show or hide the Labels button group.
- Crack Display: Show or hide the Crack Display button group.
- Output: Show or hide the Output button group.
- Window: Show or hide the Window button group.
- Help: Show or hide the Help button group.
- Geometry and Mesh: Show or hide the Geometry and Mesh button group.
- Geometry Building: Show or hide the Geometry Building button group.
- Common Tools: Show or hide the Common Tools button group.
- Quick Settings: Show or hide the Quick Settings button group.
- Reset Toolbar Layout: Restore the default layout of the toolbar.
- Customize Common Tools...: Add, remove or reorder the buttons of the Common Tools group.
- Customize Geometry Building Tools...: Add, remove or reorder the buttons of the Geometry Building group.
- Customize Quick Settings Tools...: Add, remove or reorder the buttons of the Quick Settings group.
Settings
- Model Display Style: Change model display style, the following display modes are available:
- Mesh View: Display the model with mesh (default).
- Smooth View: Display the model in a smooth view without mesh.
- Wiremesh: Display the model only with wirelines.
- Points: Display the model with only nodes.
Note for STEP geometry models: a STEP geometry model is always drawn in the smooth mode, i.e. as a smoothly shaded solid with the CAD sharp edges as black lines - the triangulation mesh lines are not shown, and the display style above does not apply to it. "Model Display Style" and "Model Deformation Display Style" control the finite-element model only, so the two views never interfere with each other. The sharpness of the feature lines is set with "Feature angle" below. Run "Mesh STEP Model" to turn the geometry into a finite-element mesh.
- Model Color: Change model color, the following options are available:
- Cyan: All elements of the model will be drawn in Cyan.
- Varies with Material Type: Elements with different material numbers are drawn in different colors.
- Yellow: All elements will be drawn in Yellow.
- Green: All elements will be drawn in Green.
- Pink: All elements will be drawn in Pink.
- Red: All elements will be drawn in Red.
- Blue: All elements will be drawn in Blue.
- Purple: All elements will be drawn in Purple.
- Orange: All elements will be drawn in Orange.
- Black: All elements will be drawn in Black.
- White: All elements will be drawn in White.
- Grey: All elements will be drawn in Grey.
- Step Model Color: Color the model based on the step/load-step number. The color of each step can be customized in the submenu, making it easy to visually distinguish between different loading stages.
Note on the highlight colours: whatever colour the model is drawn in, the colours PPView draws on top of it -- the hovered node or element, the selected node, element or face, the node globes of a model tree entry, the coupling preview, the picked crack point and the distorted elements -- are picked automatically so that they are always clearly distinguishable from the model. No setting is needed: change the model colour and the highlights follow it. This applies to the finite element mesh and to the STEP geometry alike. The one exception is the line which connects the nodes of a degree-of-freedom coupling group: its colour can be set to a fixed one in the Show Boundary Conditions Setting dialog (see section 3.1).
- Model Deformation Display Style: Change model deformation display style, the following display modes are available:
- Mesh View: Display the deformed model with mesh (default).
- Smooth View: Display the deformed model in a smooth view without mesh.
- Mesh View + Wiremesh (undeformed): Display the deformed model with mesh and underformed wirelines.
- Smooth View + Wiremesh (undeformed): Display the deformed model in a smooth view without mesh and underformed wirelines.
- Crack Display Style: Change crack Display style, the following options are available:
- Mesh View (for 3D): Display 3D cracks with mesh.
- Smooth View (Feature Line Mode, for 3D): Display 3D cracks in a smooth view without mesh.
- Show Model Feature lines: Show model feature lines.
- Show Model Wiremesh: Show model wiremesh.
- Show Deformed 2D Cracks: Display the true shape of the 2D cracks after deformation.
- 2D Crack Lines Color: Change color of 2D cracks - Balck (default) / White / Red / Purple.
- Show Numbering of Initial Cracks (for 2D): Display numbering of 2D initial cracks.
- Show Numbering of Initial Crack Coordinate Points (for 2D): Display numbering of 2D initial cracks coordinate points.
- Pre-exsisting Natural Cracks: Settings about pre-exsisting natural cracks: Plot Pre-exsisting Cracks as Surface (3D) (default), Plot Pre-exsisting Cracks as Wireframe (3D), or Hide Pre-exsisting Cracks.
- Show Fluid Elements (for 3D): Show fluid elements for 3D hydraulic fracturing problems.
- Show Crack Vertex Local Coordinate System and Integral Domain (for 3D) : Show local Coordinate system and integral domain of crack vertex for 3D problems.
- Show Crack Vertex Local Coordinate System and Integral Domain (for 3D) : Show crack vertex local coordinate system and integral domain for 3D problems.
- Only Show Crack Surface within the Model (for 3D Boundary Cracks) : Only show crack surface within the model for 3D boundary cracks.
- Smooth crack aperture (for 3D) : Smooth crack aperture for 3D problems.
- Smooth crack aperture settings (for 3D) : Smooth crack aperture settings for 3D problems.
- Colorbar Colormap: Change colormap of colorbar. The following options are available:
- Jet.
- coolwarm.
- PiYG.
- Greys.
- hsv.
- cool.
- ocean.
- spring.
- summer.
- autumn.
- winter.
- Blues.
- Reds.
- Greens.
- Purples.
- pink.
- Oranges.
- copper.
- YlGn.
- YlOrRd.
- cividis.
- inferno.
- magma.
- plasma.
- viridis.
- Accent.
- Paired.
- tab20.
- Colorbar Font: Change the size and color of colorbar font.
- Colorbar Style: Change the style of the colorbar legend - its docking position (bottom / right) and its appearance. The Abaqus Style renders the legend exactly like Abaqus/CAE: transparent background, a hairline frame, a narrow ramp split into 12 bands by white lines, signed scientific-notation values and Abaqus variable symbols (U1, S, Mises ...). The legend ramp always follows the colormap chosen in Colorbar Colormap.
- Colorbar Unit: Change the unit of the colorbar legend - meter (default) / millimeter. Useful for matching the displayed units to the model scale.
- Colorbar Range: Set custom minimum and maximum values for the colorbar. The contour plot will be scaled to the user-defined range instead of the auto-computed range.
- Gradient Flip Vertical: Flip the background gradient direction vertically (for gradient backgrounds only).
- Enable Lighting: Enable lighting.
- Enable Anti-Aliasing: Enable Anti-Aliasing.
- Enable Parallel Projection: Enable parallel projection, switch the visualization mode of a 3D scene from perspective projection to parallel projection.
- Enable Model Transparent: Make the 3D model transparent, enabling users to see through the model's surfaces. Opacity can be adjusted through the Miscellaneous settings.
- Show Load: Plot the applied force of nodes.
- Show Boundary Support: Display the supporting of fixed nodes. Clicking this menu item also opens the Show Boundary Conditions Setting dialog, where the Display Style and the boundary condition colour are chosen (see section 3.1).
- Show Model Coordinate Origin: Display the coordinate origin of the model.
- Show Model Boundary Box: Allows users to visually display a bounding box around the model.
- Show Gauss Points (2D): Display the Gauss points of 2D problems.
- Plot Gauss Point Results instead of Nodal Results (2D): Plot Gauss point results instead of nodal results for 2D problems. After enabling this option, the accuracy of cloud image rendering can be significantly increased, but the rendering speed will decrease.
- Show Model Wiremesh: Show the wireframe of the model (model edges only, no solid fill). Useful for inspecting the underlying mesh.
- Show Crack Surface within the Model (3D): Only show the crack surface inside the model body for 3D boundary cracks (hide the portions of the crack that extend outside the model).
- Show Crack Vertex Local Coordinate System and Integral Domain (3D): Show the local coordinate system and the integration domain around each 3D crack vertex.
- Show Memory Usage: Display the current memory consumption of PPView in the status bar.
- Light Intensity: Adjust the intensity of the scene lighting used for 3D rendering.
- Vector Scale Factor (load arrows): Adjust the size of the arrows used to represent the magnitude of applied loads.
- Animation: Animation-related settings.
- Background Color: Change background color, the following options are available:
- Gradient Blue.
- Gradient Grey.
- Gradient Green.
- Gradient Yellow.
- Gradient Purple.
- Gradient Black.
- White.
- Black.
- Grey.
- Select a Solid Color.
- Theme: Change theme of icons or font:
- Change icon theme. The following options are available:
- Colorful icon theme (default).
- Green icon theme.
- Blue icon theme.
- Red icon theme.
- Purple icon theme.
- Grey icon theme.
- Orange icon theme.
- Change font theme.
- Text Editor: Change the text editor used to open kpp and log files - the following options are available:
- Notepad (default): Use the Windows built-in Notepad.
- Notepad++ (if installed): Use Notepad++ (recommended for syntax highlighting).
- VS Code (if installed): Use Microsoft Visual Studio Code.
- Sublime Text (if installed): Use Sublime Text editor.
- Language: Change Language - English / 中文.
- PhiPsi Solver: Change PhiPsi solver, the following options are available:
- PhiPsi Solver Compiled Using gfortran (default): Simulation will be performed by running PhiPsi_Win64.exe (C:\Program Files (x86)\PhiPsi\PPView\PhiPsi\PhiPsi_Win64.exe) compiled using gfortran.
- PhiPsi Solver MPI Version. Simulation will be performed by running PhiPsi_Win64_MPI.exe (C:\Program Files (x86)\PhiPsi\PPView\PhiPsi\PhiPsi_Win64_MPI.exe).
- Set Number of MPI Processors. Set the number of MPI processors for PhiPsi_Win64_MPI.exe.
- Miscellaneous: Miscellaneous Settings:
- Show wellbore (3D). Set wellbores for 3D hydraulic fracturing simulation.
- Model opacity. Set the model's opacity.
- Feature Angle: Change the feature angle (in degrees) used to detect and render sharp edges in 3D models - the following options are available:
- 15 degrees: Use a feature angle of 15 degrees (more edges detected).
- 30 degrees: Use a feature angle of 30 degrees.
- 45 degrees (default): Use a feature angle of 45 degrees.
- 60 degrees: Use a feature angle of 60 degrees.
- 100 degrees: Use a feature angle of 100 degrees (fewer edges detected).
- Restore Defaults: Restore default settings.
- Other Settings: Other Settings:
- Enable PhiPsi Legend: Display the PhiPsi logo and the PhiPsi solver version number in the upper-right corner of the window.
- Enable Startup Window: Show the welcome screen when launching the software.
- Show Coordinate System: Display the coordinate system in the lower-left corner of the window.
- Automatically Refresh the Simulation Results: Automatically refresh (read) simulation results every 10 seconds.
- Check for Updates on Startup: Automatically check for the latest version of PPView each time the software is launched.
- View Settings File: Open the settings file.
- Export Settings File: Export (Save) the settings file.
- Import Settings File: Import the settings file.
Tools
- Open PhiPsi kpp File Editor: Open the PhiPsi kpp file editor that comes with the PPView software.
- PhiPsi Running Monitor: Run the PhiPsi running monitor to watch the memory and CPU usage of the PhiPsi kernel.
- Multi-Task Parallel Analysis: Open the Multi-Task Parallel Analysis window to add multiple kpp files and run them sequentially or in parallel. The task sequence (with notes) can be saved to / loaded from a .mtsk file for batch processing.
- CSV Data Processor: Open the CSV Data Processor window to import, scale (X/Y scale factor, offset), preview, and export CSV data. Supports exporting the processed data to a new CSV file or copying the X / Y series to the clipboard.
- Curve Plotter Tool: Draw curves in the format of a scientific paper.
- Bar Chart Plotter Tool: Draw bar charts in the format of a scientific paper.
- Curve Grabber: Extract data points from a picture of a curve.
- Enrichment function graphs: Plot the enrichment functions (F1 - F4, Heaviside) used by XFEM.
- Impact results (.res) to PPView: Convert the result file of the Impact solver (*.res) into the PPView format.
- Word to PDF: Convert a Word document to a PDF file.
- Screen Recorder: Record the screen within the PPView window range.
- Video Processing: Video processing-related tools.
- Video Time Slice: Capture a time segment from a video.
- Video Cutting: Divide a video into equal parts.
- Video Merging: Merge videos.
- Format Converter: Tools related to format conversion.
- PDF to svg: Convert a PDF file to a svg file.
- PDF to png: Convert a PDF file to a png file.
- PDF to TIF (300 ppi): Convert a PDF file to a TIF image at 300 ppi resolution.
- PDF to TIF (600 ppi): Convert a PDF file to a TIF image at 600 ppi resolution (high quality).
- IGES to STEP: Convert an IGES (*.igs / .iges) geometry file to a STEP (.step) file using the OpenCascade kernel.
- GIF to MP4: Convert a GIF picture to a MP4 file.
- Run a Batch File: Run a batch File (*.bat).
- Run a Python Script: Run a Python script (*.py).
- Hardware Information: Display detailed hardware information of the current machine, including CPU model, cores, RAM, GPU model and VRAM, disk, OS, etc.
- Computer Performance Testing: Run a quick benchmark on the CPU, GPU, RAM read/write, and disk read/write of the current machine. Useful for evaluating whether the hardware is capable of running large PhiPsi simulations.
- Automatically Run All Examples: Sequentially run all the example kpp files shipped with PPView (under the Examples folder). Useful for smoke-testing the solver after a version upgrade.
- Self-Check (Test Core Functions): Run an automatic check of the core functions of PPView and the PhiPsi solver, and report the result of each check in a table.
- Export Examples: Export the example kpp files and their data files to a folder.
- Cursor Position: Show the position of the screen cursor in a floating panel.
- Research Tools: Tools related to research.
- Plot Stiffness Matrix: Plot the stiffness matrix.
- Draw Enriched DOFs with Yellow Background: Draw enriched DOFs with yellow background in the stiffness matrix plot.
- Read and Plot ANSYS Result file (.rst): Read and plot simulation results from the ANSYS result file (.rst).
- Tansform ANSYS rst file to vtk file: Tansform the ANSYS rst file to the vtk file.
- Extract data (mesh, displacement, stress) from rst file: Extract data (mesh, displacement, stress) from the ANSYS rst file.
- Extract mesh from rst file: Extract the mesh from the ANSYS rst file.
- Extract nodal displacement from rst file: Extract nodal displacements from the ANSYS rst file.
- Extract nodal stress from rst file: Extract nodal stresses from the ANSYS rst file.
- Plot deformed mesh (2D): Plot the deformed mesh for 2D problems.
- Plot nodal solution x (dispalcement - x): Plot nodal solution in x direction (dispalcement x, for example).
- Plot nodal solution y (dispalcement - y): Plot nodal solution in y direction (dispalcement y, for example).
- Plot nodal solution sum (dispalcement - sum): Plot the nodal equivalent solution (dispalcement - sum).
- Plot nodal stress-xx: Plot the nodal stress component - xx.
- View Change Log of PPView: View the change log of PPView.
2.2.2 The toolbar
The toolbar buttons include:
File Operations
- Opening kpp file: Open the PhiPsi keywords file, i.e., *.kpp file.
- Edit kpp file: Edit the PhiPsi keywords file.
- Create a blank kpp file: Create a blank kpp file.
- Check kpp file: Check the PhiPsi keywords file.
- Open work directory: Open work directory defined in the keywords file.
- Run kpp file with PhiPsi: Start the PhiPsi solver to solve the problem defined in the keywords file.
- Stop running PhiPsi tasks: Stop all running PhiPsi tasks.
- Refresh results: Reload the result files of the currently running PhiPsi task.
- Open PhiPsi log file: Open PhiPsi running log file (*.log) which is stored in the work directory.
- Clear result files: Clear result files of the current work defined in the keyword file.
Plot & Zoom
- Plot model: Plot the model.
- Zoom to fit: Automatically fit the view to the screen (Zoom to Fit).
- Zoom in box: Zoom in on a region selected with the mouse box.
Views
- View isometric: Plot in isometric view.
- View xy_zplus: Plot in xy view (z plus).
- View xy_zminus: Plot in xy view (z minus).
- View xz_yplus: Plot in xz view (y plus).
- View xz_yminus: Plot in xz view (y minus).
- View yz_xplus: Plot in yz view (x plus).
- View yz_xminus: Plot in yz view (x minus).
Display Modes
- Enable Model Transparent: Make the 3D model transparent, enabling users to see through the model's surfaces.
- Enable Feature Line Mode: Render the model's feature lines instead of the mesh.
- Enable Parallel Projection: Enable parallel projection, switch the visualization mode of a 3D scene from perspective projection to parallel projection.
- View cut manager: Open the view cut manager to plot user defined section view along the x, y, and z directions.
Labels
- View Node Label: Show labels of all nodes.
- View Node Coordinate: Show coordinates of all nodes.
- View Element Label: Show labels of all elements.
Crack Display
- View enriched nodes: Click to show enriched nodes.
- View cracks: View cracks.
- View user defined initial crack, void, inclusion: Click to view user defined initial cracks, voids, and inclusions.
Output
- Plot Curve: Plot curves.
- Save Plot as Image: Save the current plot as image (*.png).
- Save Animation: Export animation (gif file).
Window
- Minimize the Window: Minimize the Window.
- Maximize the Window: Maximize the Window.
- Fullscreen: Fullscreen the window.
- Center: Center the window.
Help
- PPView Help: Open the online PPView help manual.
- View Geometry Information: Display the coordinate range and the model size in the x / y / z directions.
- Measure Geometry: Measure the current model.
- Check Geometry Quality: Check the validity of the current geometry.
- Export Geometry (STEP / IGES / STL): Export the current geometry model.
- Edit Mesh Control: Set the global mesh size and the element shape.
- Mesh STEP Model: Generate the finite element mesh of the geometry model.
Geometry Building
- Create Block: Create a 3D block primitive.
- Create Cylinder: Create a 3D cylinder primitive.
- Create Sphere: Create a 3D sphere primitive.
- Create Hollow Cylinder: Create a 3D hollow cylinder (pipe) primitive.
- Create Cone (3D): Create a 3D truncated cone.
- Create Torus (3D): Create a 3D torus.
- Create Prism (3D): Create a 3D regular prism.
- Create Rectangle (2D): Create a 2D rectangle primitive.
- Point-Defined Plane (2D): Create a 2D plane primitive defined by an arbitrary list of points.
- Create Circle (2D): Create a 2D circular model.
- Create Ellipse (2D): Create a 2D elliptical model.
- Create Polygon (2D): Create a 2D regular polygon.
- Extrude (3D): Extrude a profile along a selected direction.
- Revolve (3D): Revolve a profile around the Z, X or Y axis.
- Sweep (3D): Sweep a profile along a straight line or a circular arc.
- Chamfer: Add a chamfer to the geometry model.
Common Tools
- Multi-task Parallel Analysis: Open the Multi-Task Parallel Analysis window.
- PhiPsi Running Monitor: Watch the memory and CPU usage of the PhiPsi kernel.
- PDF to svg: Convert a PDF file to a svg file.
- CSV Data Processor: Import, scale, preview and export CSV data.
- Curve Grabber: Extract data points from an image.
- Curve Plotter Tool: Draw curves in the format of a scientific paper.
- Get Node Info: Show the number, the coordinates and the elements of the mesh node under the cursor.
Quick Settings
- Enable Lighting: Enable lighting.
- Enable Contour Lines: Show the contour lines of the plotted result.
- Show Load: Plot the applied force of nodes.
- Show Boundary Support: Display the supporting of fixed nodes.
The content of the Geometry Building, Common Tools and Quick Settings button groups can be customized by the user: right-click the toolbar and choose the corresponding Customize ... entry to add, remove or reorder the buttons of that group. The groups are stored in the settings file, so they keep their content between sessions.
2.2.3 The model tree
The model tree includes the following nodes:
Geometry and Mesh
- kpp file: the kpp file.
- Geometry: The geometry of the model. Right-click to import a STEP file, to create the geometry primitives, to apply the forming operations (Extrude / Revolve / Sweep) and a Chamfer, to plot the geometry, to measure it, to check its quality and to export it.
- Mesh Control: The mesh control of the geometry model.
- Mesh Control Window: Set the global mesh size and the element shape (Hexahedral / Tetrahedral / Quadrilateral / Triangle).
- Partitioning the geometry model (multi-material): A STEP geometry model can be cut into several sub-bodies, each of which may carry its own material. This is the way to model a multi-layered rock mass, for instance, where every layer has its own elastic properties. Below the STEP Model node a datum plane (3D) or a datum line (2D) can be added; a datum is construction geometry only, it is not part of the solid. Right-click the STEP Model node → Add Datum Plane (3D), Add Datum Line (2D) or Add Datum Circle; the datum can be created from points, from a point and a normal, parallel to a picked model face, or as a coordinate plane, and it can be shifted and rotated. The mesh is then generated on the partitioned geometry, so the nodes on the partition face are shared between the sub-bodies and the element boundaries run exactly along the cut instead of the two parts being meshed separately and glued together afterwards; the material of every element is written into the last column of the .elem file. Right-click the STEP Model node → Remove Partition to undo it. The partitions are stored in the side-car file .partition.json next to the STEP file (the datums in .datum.json); the original STEP file is never modified and no new solver keyword is introduced.
- Create Wedge Window (3D): Create a 3D wedge by the origin (x0, y0, z0), the overall size (dx, dy, dz) and the tilt of the top face.
- Create Ellipsoid Window (3D): Create a 3D ellipsoid by the centre (x0, y0, z0) and the three semi-axes a, b and c.
- Mesh: This model tree node holds the generated mesh; its children are the Elements and the Nodes.
- Elements: The elements of the generated mesh.
- Nodes: The nodes of the generated mesh.
- Mesh Info Window: Display the number of elements and number of nodes of the current model.
Boundary Conditions
- Boundary Conditions: The boundary conditions of the model. Right-click to add the constraints, to fix the degrees of freedom and to add the DOF coupling groups.
- Add Constraints at Coordinates Window: Apply fixed-displacement boundary conditions to all nodes whose (x, y, z) coordinates lie inside a user-defined range, in the X / Y / Z / all directions.
- Fix Freedoms Window: Apply fixed-displacement boundary conditions to a user-specified list of node numbers, in the X / Y / Z / all directions.
- Add Normal Displacement Constraints to Specified Faces / Edges (STEP geometry): Add a normal displacement constraint, which says that the displacement of a node has no component along the outward normal of the surface it lies on, while the tangential displacement stays free. It is the boundary condition of a smooth (frictionless) surface: the material may slide along the surface, it may not leave it. The normal of a node is the normal of the CAD surface at that node (a cylindrical face therefore gives the true radial direction whatever the orientation of the cylinder); an edge takes the average of the normals of the faces which share it. The constraint is enforced by a spring whose stiffness is the penalty factor times the stiffness of the node (default 1.0e4, written into the keyword file as *Key_Normal_Constraint_Factor). The faces / edges are picked on the canvas of the 3D view and the mesh nodes which lie on the selection are highlighted in yellow.
- Add DOF Coupling: Add a node degree-of-freedom coupling group. The coupling ties the displacement of a group of nodes to the same value: when a group couples the X direction, every node of the group gets exactly the same ux; when it couples X and Y, every node of the group gets the same uxand the same uy. It is used, for instance, to model a symmetry plane or a rigid connection between two parts of a model. The dialog defines one group: the coupled degrees of freedom (the X, Y and Z check boxes can be combined freely) and the nodes of the group, which can be picked on the canvas or selected by their coordinate range. No master node has to be chosen: the solver keeps a single unknown per group and lets one node of the group carry it. The groups are stored in the metadata file .dofc of the work directory, and PPView regenerates the .dofx / .dofy / .dofz files of the solver from it.
Applied Force
- Applied Force: The loads of the model. Its children are the Gravity and the In-situ Stress.
- Gravity: Set the gravity load and the gravity direction.
- In-situ Stress: Set the in-situ stress field of the model. Right-click → Settings to specify each component of the initial stress tensor (σxx, σyy, σzz, σxy, σyz, σxz), or to read the initial stress from a .istn file. Useful for simulating geostatic loading conditions.
- Add Force at Coordinate Window: Apply a concentrated force to all nodes inside a user-defined coordinate range, in the X / Y / Z / all directions.
- Add Force to Nodes Window: Apply a concentrated force to a user-specified list of node numbers, in the X / Y / Z direction.
- Add Pressure at Coordinates Window: Apply pressure to all elements (or nodes) inside a user-defined coordinate range.
- Add Initial Displacement at Coordinates Window: Prescribe an initial displacement to all nodes inside a user-defined coordinate range.
- Add Initial Velocity at Coordinates Window: Prescribe an initial velocity (Vx, Vy, Vz) to all nodes inside a user-defined coordinate range.
- Add Time-Varying Pressure at Coordinates Window: Define a time-varying pressure (Vx, Vy, Vz) for nodes inside a coordinate range. The time history is loaded from one or more CSV files. Includes a View Curve button to preview the time history and a Plot step arrows button to visualize the load at a given step (NEWFTU-2026062101).
- Add Time-Varying Initial Velocity at Coordinates Window: Define time-varying initial velocity (Vx, Vy, Vz) for nodes inside a coordinate range. The time history is loaded from CSV files (NEWFTU-2026062301).
- Applied Displacement: The applied displacements of the model.
Materials
- Materials: The materials of the model. Each material is a child node of its own.
- Material Parameters Setting Window: Configure material properties. Six material types are supported:
Initial Defect
- Initial Defect: Edit or define initial defects such as cracks, holes, and inclusions.
- Initial Crack: The initial cracks of the model. Each crack is a child node of its own; right-click to add a new crack.
- Initial Hole: The initial holes of the model. Each hole is a child node of its own.
- Initial Inclusion: The initial inclusions of the model. Each inclusion is a child node of its own.
- Crack 2D Settings Window: Define one 2D crack by an ordered list of (x, y) points (2 to 5 points).
- Crack 3D Settings Window: Define one 3D crack by an ordered list of (x, y, z) points (typically 4 points for a planar rectangular crack).
- Crack 3D Circular Settings Window: Define one 3D circular crack by the center (x, y, z), the normal vector (nx, ny, nz), and the radius.
- Circle Hole 2D Settings Window: Define one 2D circular hole by the center (x, y) and the radius.
- Circle Inclusion 2D Settings Window: Define one 2D circular inclusion by the material number, the center (x, y), and the radius.
Hydraulic Fracturing
- Hydraulic Fracturing: Hydraulic fracturing analysis settings. Its children are the wellbore, the fracturing fluid, the natural fractures and the 3D fracturing settings.
- Wellbore Settings: Configure wellbore geometry for 3D hydraulic fracturing simulations. Right-click to add a new wellbore (defined by an ordered list of points), edit its settings, or delete an existing one. Multiple wellbores are supported.
- Fracturing Fluid: Define fracturing fluid properties (injection rate, injection time, viscosity, etc.) for hydraulic fracturing simulations. Right-click → Settings to open the Fracturing Fluid Settings Window.
- Natural Fractures: Define or edit natural fracture sets. Right-click to create new fractures (2D / 3D rectangle, 3D circle, 3D polygon) randomly distributed inside the model, or to delete existing ones. Useful for simulating pre-existing discontinuities in rock masses.
- 3D Fracturing Settings: The parameters of the three-dimensional hydraulic fracturing analysis (analysis type 4 in three dimensions). It is available for the 3D hydraulic fracturing analyses only.
- Wellbore Settings Window: Define the geometry of one wellbore by an ordered list of (x, y, z) points, plus additional parameters (e.g. perforation depth, number of stages).
- Fracturing Fluid Settings Window: Set the constant injection rate, injection time, wellbore number, stage number, and the "keep pressure unchanged after each fracturing stage" option.
- Natural Fractures Settings Window: Generate natural fractures randomly inside the model. Set the random seed, number of cracks, crack type (rectangle / circle / polygon), crack size, and normal vector.
- 3D Fracturing Settings Window: The parameters of the three-dimensional hydraulic fracturing analysis (analysis type 4 in three dimensions): the multistage option, the time-step method, the slip-water friction type, the generation of the initial crack around the wellbores, and the permeability evaluation. The tree entry is greyed out unless the analysis type is 4 and the dimension is 3.
Analysis Settings
- Analysis Settings: Analysis settings include analysis type, load step, linear equations solver, etc.
- Analysis Type: Choose between the 2D / 3D problem, the plane strain / plane stress and one of the 8 analysis types.
- Load Step: Set the number of substeps of the current analysis.
- Equations Solver: Select the linear equation solver and whether to use the sparse matrix storage.
- XFEM Settings: Configure the XFEM parameters of the current analysis.
- FEM Remeshing Settings: The pre-processing controls of the pure FEM-remeshing fracture analysis.
- Phase Field Method: Phase-field fracture analysis settings. It is available when the analysis type is 41 (phase field), and it is mutually exclusive with the XFEM and the FEM remeshing methods.
- Advanced Fracture Settings: The advanced fracture settings: crack initiation, fracture zones, load control, integration, the 3D crack geometry and the contact parameters.
- Explicit Dynamics: The parameters of the explicit dynamics analysis. It is available for the analysis type 6 only.
- Other Settings: The remaining solver options: the number of CPU threads used by OpenMP, the node stress averaging method, and the switches Save VTK files, Save stiffness matrix, Save node reaction forces and Close terminal after calculation.
- Analysis Type Window: Choose between 2D / 3D problem, plane strain / plane stress, and one of 8 analysis types (quasi-static, implicit dynamic, hydraulic fracturing, explicit dynamic, nonlinear, field problem, phase field, etc.).
- Linear Equations Solver Settings: Select the linear equation solver (Direct / Gaussian elimination / LAPACK / MUMPS / UMFPACK / Lis / SuperLU / Pardiso / ITPACK / Y12m / EBE-PCG / STRUMPACK) and whether to use sparse matrix storage.
- Load Step Settings Window: Set the number of substeps (*Num_Substeps) for the current analysis. The window sizes itself to the current analysis type: the normal form stays compact, while the nonlinear (analysis type 7) load-step schedule uses its own larger, independently remembered size.
- XFEM Settings Window: Configure XFEM parameters: crack propagation criterion, SIFs calculation method, crack-tip enrichment type, crack aperture method, 3D front smoothing, contact (with max iteration count), and in-plane growth (3D).
- FEM Remeshing Settings Window: Pre-processing controls of the pure FEM-remeshing fracture analysis. The window uses the established XFEM keywords, so that the solver has one canonical source for the crack-growth controls. The tree entry is greyed out unless the FEM remeshing switch (*Key_FEM_Remeshing) is on and the analysis has no crack yet; it is mutually exclusive with the XFEM and the phase field methods, of which at most one can be active at a time.
- Phase Field Method Settings Window: Configure phase-field fracture parameters: fracture energy Gc, phase-field length scale l0, residual stiffness k, staggered convergence tolerance, maximum staggered iterations, load type, and spectral decomposition. The phase-field method is a 2D-only analysis, so neither XFEM enrichment nor FEM remeshing is used.
- Advanced Fracture Settings Window: The advanced fracture settings, gathered in one tabbed window: crack initiation, fracture zones, load control, integration, the 3D crack geometry and the contact parameters. The tree entry is available for the XFEM-based analysis types only.
- Explicit Dynamics Window: Configure explicit-dynamics parameters: total time, force time, time-step size, data-save interval, info-show interval, and the list of tips at which to save SIFs and propagation speed.
- Other Settings Window: The remaining solver options, gathered in the Other Settings entry of the analysis settings: the number of CPU threads used by OpenMP, the node stress averaging method (simple arithmetic average, or area-weighted average in 2D), and the switches Save VTK files, Save stiffness matrix, Save node reaction forces and Close terminal after calculation.
Result Settings and Solve
- Result Settings: Currently unavailable.
- Solve: Click to run the PhiPsi simulation.
3. Tutorial
3.1 Open an example kpp file (2D)
Click the PPView icon on the desktop.
Click on the toolbar to open PhiPsi keywords file. Select 2d_plate_with_holes.kpp from the folder C:\Program Files (x86)\PhiPsi\PPView\Examples. This example simulates the propagation of crack in a plate with holes, as shown in the following figure.
Fig. 3.1.1 Geometry and loading configuration of the plate with 3 holes and an initial crack positioned above the central hole.
Click on the toolbar to open and view the keywords file.
Click on the toolbar. The analysis will be started and a Windows terminal will show.
When the simulation is finished, the simulation log can be opened by clicking on the toolbar.
Click on the toolbar to reload the simulation results.
In the Simulation Results Panel, users can select component to be plot. By clicking the Apply button, the selected simulation result will be shown. By clicking the Open File button, the corresponding result file will be opened.
The figure can be saved to png file by clicking on the toolbar.
The colormap of the colorbar can be changed by clicking Setting < Colorbar Colormap, select coolwarm, for example. Click Apply button, the contour will be replot.
The default calculation results are nodal solutions. Check Setting < Plot Gauss Point Results instead of Nodal Results (2D). Click Apply button, the contour of calculation results at Gauss points will be replot. Contour plots based on Gauss point solutions are more accurate, as shown in the following figure.
Fig. 3.1.2 Contour plot of von Mises equivalent stress at propgation step 35.
The applied force and boundary conditions can be plot by clicking Setting < Show Load and Setting < Show Boundary Condition. Click Apply button, the contour will be replot.
The way the boundary conditions are drawn is chosen in the Show Boundary Conditions Setting dialog, which opens when Setting < Show Boundary Support is clicked. Its Display Style box offers two alternatives:
Classic - the historical representation: one small equilateral triangle per constrained node. This is the default, and the triangles are drawn exactly as they have always been.
Shaded Boundary Face - the boundary faces that carry the constraint are painted as a whole, instead of drawing a symbol at every node. A face whose nodes are all constrained is painted in the solid boundary condition colour; a face where only some nodes are constrained is painted in the same colour with a reduced opacity; a face without any constrained node is not painted at all. Each painted face is lifted slightly along its own outward normal, so it never fights with the model surface and never sinks into the model - which is what used to happen with the triangles on curved, concave or inclined surfaces. In 2D the boundary face is an edge, so a coloured band is drawn just outside the constrained edge. With the Red, Green, Blue colour option the three constraint directions are painted in red (X), green (Y) and blue (Z); constrained nodes that do not belong to any boundary face (nodes inside the model) are marked with a small sphere so that no constraint is ever lost.
The same dialog holds a DOF Coupling Color box, which sets the colour of the line that connects the nodes of a node degree-of-freedom coupling group (see the Boundary Conditions node of the model tree):
Auto - the default: the colour is picked automatically so that it is always clearly distinguishable from the colour the model is drawn in, and it changes with the model colour.
Any of the fixed colours Orange / Blue / Black / Red / Green / Magenta / Cyan / Yellow / Purple / Lime / White - the line is drawn in exactly that colour. The small spheres which mark the coupled nodes keep their automatic colour either way, so that they stay visible on the model.
If the user want to plot the model again, click on the toolbar. When you click the button on the toolbar, the model will be rendered in feature line mode instead of the mesh mode.
The work directory of the current task defined in the keywords file can be opened by clicking on the toolbar.
3.2 Open an example kpp file (3D)
Click the PPView icon on the desktop.
Click on the toolbar to open PhiPsi keywords file. Select 3d_cylinder_uniaxial_tension.kpp from the folder C:\Program Files (x86)\PhiPsi\PPView\Examples. This example simulates the propagation of a mixed-mode penny-shaped crack under uniaxial tension.
Fig. 3.2.1 Geometry, boundary conditions, and definition of crack-front angular position γ for a centrally embedded inclined penny-shaped crack in a cylindrical specimen under uniaxial tension.
Click on the toolbar. The analysis will be started and a Windows terminal will show.
Click on the toolbar to refresh the simulation results.
In the Simulation Results Panel, users can select component to be plot. By clicking the Apply button, the selected simulation result will be shown.
Click to open the Plot Curve Settings window. Swtich to 3D Crack Curve pannel and click the Plot Curve botton, the curve of stress intensity factor (SIFs) will be plot. The analytical solution of SIFs at step 1 can be written as:
KI=2σcos2απa(3.2.1)
KII=−2−ν4σsinαcosαπasinγ(3.2.2)
KIII=−2−ν4(1−ν)σsinαcosαπacosγ(3.2.3)
where γ denotes the angular position along the crack front at which the SIFs are evaluated, σ is the applied remote stress (100 MPa), a is the crack radius, ν is Poisson's ratio, and α is the inclination angle of the initial crack (45∘). The comparison between the theoretical solutions of the stress intensity factors and the results computed by PhiPsi is shown in the figure below.
Fig. 3.2.2 Comparison between theoretical SIF solutions and PhiPsi.
3.3 Import Abaqus model file
Click the PPView icon on the desktop.
Click File from the menu bar and then Click to create a blank kpp file. Select a folder, and then enter the name of the keyword file, for example Test. Then, a blank kpp file will be created.
Click File from the menu bar and then Click to import the Abaqus model file. Select an Abaqus model file (*.inp), for example C:\Program Files (x86)\PhiPsi\PPView\Examples\Abaqus_inp_files\3d\3d.inp. PPView will automatically transform the Abaqus model file to PhiPsi model files. Afterwards, PPView will plot the Abaqus model and update the kpp file according to the obtained information.
Now the model is ready to be solved. You can click the node in the model tree to solve the model.
Once the simulation is done, click the button in the Simulation Results Panel to update the obtained simulation results.
Users can also add initial cracks to the model. Right click Initial Crack, then select New Circular Crack. Click the newly added Circular Crack 1, then the 3D Circular Crack Settings window will appear. Input 0.5, 0.5, 0.75, 0, 0, 1, and 0.35, respectively, for each text-box from top to bottom.
Click Solve in the model tree to solve the model.
Once again, click the Refresh Results button in the Simulation Results Panel to refresh the obtained simulation results.
Enable model transparent by clicking the Enable model transparent on the toolbar, and disable initial crack by deactivating the View user defined initial cracks, void, inclusion on the toolbar. In this way, you can see the crack inside the model.
Finally, the 3D problem with an initial circular crack can now be post-processed through the Simulation Results Panel.