Source-linked AI summary
Abaqus2Matlab: A suitable tool for finite element post-processing
George Papazafeiropoulos, Miguel Muñiz-Calvente, Emilio Martínez-Pañeda
TL;DR
The paper addresses the need to connect Abaqus finite-element modeling with Matlab’s analysis tools for post-processing, statistical analysis, and optimization. It presents Abaqus2Matlab, a source-code toolbox that transfers and manipulates Abaqus results and inputs, then demonstrates it on cleavage fracture and cohesive-zone inverse analysis. The applications estimate three-parameter Weibull quantities without preceding assumptions and identify cohesive parameters that agree quantitatively with experimental load–CMOD data.
Problem
Abaqus and Matlab provide complementary finite-element and mathematical-analysis capabilities, but a direct non-intrusive connection is needed for advanced post-processing, statistical analysis, and optimization.
Method
Abaqus2Matlab links Abaqus result and input files with Matlab processing, iterative three-parameter Weibull estimation, inverse analysis, neural-network optimization, and model manipulation.
Results
The toolbox estimates cleavage-fracture Weibull parameters without preceding assumptions and identifies cohesive parameters that produce very good quantitative agreement with experimental load–CMOD data.
Takeaways & Limitations
Abaqus2Matlab supports structural-integrity analyses by combining Abaqus simulations with Matlab statistical and optimization capabilities across probabilistic fracture and crack-propagation applications.
Takeaways & Limitations
The presented approach uses ASCII format for Abaqus results files because of its versatility in porting results between dissimilar operating systems.
Abstract
from arXiv · showhide
A suitable piece of software is presented to connect Abaqus, a sophisticated finite element package, with Matlab, the most comprehensive program for mathematical analysis. This interface between these well-known codes not only benefits from the image processing and the integrated graph-plotting features of Matlab but also opens up new opportunities in results post-processing, statistical analysis and mathematical optimization, among many other possibilities. The software architecture and usage are appropriately described and two problems of particular engineering significance are addressed to demonstrate its capabilities. Firstly, the software is employed to assess cleavage fracture through a novel 3-parameter Weibull probabilistic framework. Then, its potential to create and train neural networks is used to identify damage parameters through a hybrid experimental-numerical scheme, and model crack propagation in structural materials by means of a cohesive zone approach. The source code, detailed documentation and a large number of tutorials can be freely downloaded from www.abaqus2matlab.com.
1. Introduction
Abaqus2Matlab addresses the lack of a direct connection between Abaqus finite-element modeling and Matlab’s analysis capabilities. The paper introduces the software, explains its organization, and presents engineering applications involving fracture and inverse analysis.
- Finite Element Method simulations are central to engineering problems, but nonlinear conditions and uncertainties can limit high-fidelity predictions.
- Advanced inverse, statistical, and hybrid experimental-numerical methods can compensate for incomplete information in practical applications.
- Abaqus2Matlab provides a connection between Abaqus and Matlab, combining finite-element modeling with statistics, machine learning, neural networks, curve fitting, calibration, and optimization.
- The manuscript describes the software framework, usage instructions, and applications to probabilistic cleavage-fracture analysis and neural-network-based inverse identification of damage parameters.
2. Abaqus2Matlab
Abaqus2Matlab reads Abaqus result files by converting their structured ASCII records into Matlab-compatible strings and matrices. Its record-specific functions extract diverse analysis outputs for subsequent processing.
- Abaqus2Matlab uses ASCII *.fil results files to transfer Abaqus analysis results to other packages.
- 2.1.3. Record format: The results file stores sequential 80-character lines whose records begin with an asterisk and contain location, length, key, and attribute data.
- 2.1.3. Record format: Integer, floating-point, and character values use distinct encoded formats that record functions parse into usable data.
- 2.2. Reading Abaqus results files with Abaqus2Matlab: Fil2str reads the results file as a string, concatenates its lines, and passes the result to functions selected for the requested output type.
- 2.2. Reading Abaqus results files with Abaqus2Matlab: More than 50 record functions support most Abaqus result types, and new functions can be generated from existing templates.
- 2.2. Reading Abaqus results files with Abaqus2Matlab: Rec1901 converts a one-row results string into a matrix containing node numbers and nodal coordinates.
3. Usage instructions
The usage workflow organizes source code, compiles documentation, runs Abaqus analyses, and extracts selected results in Matlab. A truss example demonstrates coupling Abaqus evaluations to Matlab constrained optimization.
- 3.1. Organization of the source code: The source tree separates analysis, nodal, element, verification, input-file, and documentation resources.
- 3.2. Main usage instructions: Documentation.m must be compiled before use, after which the basic workflow is generate an input file, run the finite-element analysis, and extract required results.
- 3.2. Main usage instructions: Requested output settings are placed before *END STEP, and Matlab then runs the job, reads the *.fil file, and classifies results through Fil2str and record functions.
- 3.3. Simple example: truss optimization problem: The two-bar plane truss minimizes weight through member cross-sectional areas while satisfying displacement constraints.
- 3.3. Simple example: truss optimization problem: The optimization script defines elements, initial areas, bounds, tolerances, and constrained fmincon calls, while TrussConfun rebuilds Abaqus inputs and returns Matlab constraints.
- 3.3. Simple example: truss optimization problem: The truss design variables at the local minimum are [0.00365, 0.00482] m2, with minimum weight 2.5987 kN after 6 iterations and 21 objective evaluations.
- 3.3. Simple example: truss optimization problem: The example obtains results in a few minutes, extracts nodal displacements, assembles constraints, and makes the necessary files freely downloadable.
4. Applications
Abaqus2Matlab is applied to two engineering problems: probabilistic cleavage-fracture assessment and inverse identification of cohesive-zone damage parameters. The examples combine Abaqus finite-element results with Matlab statistical and neural-network capabilities, yielding agreement with experiments and local failure-probability maps.
- Applications: The toolbox connects Abaqus finite-element calculations with Matlab to address probabilistic cleavage fracture and inverse damage-parameter identification.The two applications demonstrate statistical analysis for cleavage failure and neural-network optimization for cohesive-zone modeling.
- 4.1. Cleavage fracture: The cleavage-fracture workflow reads finite-element stresses, element volumes, and load measures, then iteratively estimates σth, m, and σu using cumulative-distribution fitting.The procedure uses Abaqus results and experimental failure loads to calibrate the three Weibull parameters without fixing σth in advance.
- 4.1. Cleavage fracture: The calibrated cleavage model shows good agreement with experimental failure-probability data for the Euro toughness dataset at −40°C.The comparison uses 22NiMoCr37 steel and reports failure probability as a function of external load.
- 4.1. Cleavage fracture: 50% failure probability occurs at approximately J0 = 150 N/mm, with 5% and 95% probability bounds at J0 = 60 N/mm and J0 = 250 N/mm.The Weibull estimates also identify σth = 1004.7 MPa and a 64% unit-element failure probability at σu + σth = 2214.5 MPa.
- 4.1. Cleavage fracture: A hazard map displays local failure probability in logarithmic scale, using mesh information extracted from Abaqus through Abaqus2Matlab.The map provides visual information on the probability assigned to each local finite-element unit.
- 4.1. Cleavage fracture: The cleavage application uses a novel iterative three-parameter Weibull framework to estimate failure probabilities from statistically scattered fracture data.The framework is intended to support risk quantification and engineering operational decision making.
- 4.2. Cohesive zone modeling: The cohesive-zone workflow uses inverse analysis and neural-network optimization to infer Tc and Γc from experimental and numerical load-versus-CMOD curves.Abaqus2Matlab can read and modify Abaqus input files, enabling two-way interaction for optimization and preprocessing as well as post-processing.
- 4.2. Cohesive zone modeling: After 7 iterations, Tc = 199.2 MPa and Γc = 61.81 N/mm produce very good quantitative agreement with the experimental load-versus-CMOD curve.The result demonstrates the hybrid experimental-numerical strategy for identifying cohesive-zone parameters in Aluminum 2024.
5. Conclusions
Abaqus2Matlab couples Abaqus with Matlab through an open-source toolbox designed for extensive post-processing and analysis. Two structural-integrity applications demonstrate its use in cleavage-fracture assessment and cohesive crack-propagation modeling.
- Abaqus2Matlab provides a non-intrusive, open-source link between Abaqus finite-element capabilities and Matlab’s graphical and mathematical analysis tools.
- A three-parameter Weibull framework estimates cleavage-fracture modulus, scaling, and threshold parameters without preceding assumptions.
- Inverse analysis extracts cohesive parameters from Al2024 experiments, enabling crack-propagation modeling through model manipulation and genetic-algorithm optimization.