DOI: 10.5281/zenodo.17314699
title: Dataset for publication: Parametrically Upscaled Model-based Predictive Platform for Fatigue with Location-Specific Microstructural Linkages

description: PUCM/PUCNM for DENT (in-house code repository)





The zip file Coupon_Load315_CaseIV.zip contains the inputs used to generate results shown in Figures 3, and 6a &6b. The description of key files in the capsule is provided below:

Input Files




File Name
Description




MS_*.inp
contain mesh details and feature properties


materialPHCMTi64.inp
Data file containing RAMPS and PUCM parameters


bcs*.inp
Defines boundary conditions


elementsets.inp/nodesets.inp
Defines element and node sets


assignment*.inp
Assigns boundary conditions to element/node sets


form_coeffs_primAlpha.dat
Functional form coefficients for primary alpha phase


form_coeffs_transBeta.dat
Functional form coefficients for transformed beta phase


inputMain.inp
Contains necessary input parameters


timeIncrementation*.inp
Contains time stepping information




Executable Files required to run the simulation
(Executables provided separately)

 






File Name
Description




MainFiniteElementCMRL.exe
This is the executable FEA code that should be used to run the preprocessing simulations to obtain the necessary initial guess for wavelet coefficients and their rate of evolution.


convertProcessorBasedOutputsWatmus
This is used to collate the output data from individual processors into a single unit.


gencsdatCMRL
This file operates on the output generated by MainFiniteElementCMRL.exe to compute the initial guess for wavelet coefficients and their rate of evolution


ProgramWatmus.exe
This file should be used to run the cycle scale simulations.


reconDwellCMRL
Reconstructs the outputs


writeRAMPs.py
This file generates RAMPs.out file that contains element IDs and their corresponding RAMPs for postprocessing.


getRmacroUQ_withEpVM
Calculates the probability of crack nucleation and the outputs the value of crack nucleation life.


tpConv
This can be used to plot the contours of stress or probability.




Running the Analysis
Prerequisites



Intel Fortran Compiler (IFORT) 2021.7.0 20220726

Intel(R) MPI Library for Linux* OS, Version 2021.7 Build 20220909 (id: 6b6f6425df)

Python


Step-by-Step Procedure





Setup Environment





###### Download required files#####Place the folder containing input files inside ./data/#####Place all the required codes inside ./code/- data/Coupon_Load315_CaseIV- code/*The folder structure should look as follows:.├── code/│   ├── convertProcessorBasedOutputsWatmus│   ├── gencsdatCMRL│   ├── getRmacroUQ_withEpVM.m│   ├── MainFiniteElementCmrl.exe│   ├── ProgramWatmus.exe│   ├── reconDwellCMRL│   ├── tpConv│   ├── writeRamps.py│   └── PUCNM_DISK_ABAQUSUMAT/│       ├── abaqus_v6.env│       ├── computePNucl.py│       ├── forFIP.py│       └── PUCMabaqus.o├── data/│   ├── Coupon_Load315_CaseIV/│   │   ├── Step1_finescale/│   │   ├── Step2_postProcess/│   │   └── Step3_coarsescale/│   │   └── Step4_CrackNuclAnalysis/│   └── PUCNM_DISK_ABAQUSUMAT/






Preprocessing Steps



##### Change directory to **Step1_finescale**cd Step1_finescale##### Run the preprocessing simulation   ./run_job_step1.sh ##### Change directory to **Step2_postProcess**   cd Step2_postProcess##### Run the postprocessing simulation   ./run_job_step2.sh






Execution



  ##### Change directory to **Step3_coarsescale**     cd Step3_coarsescale  ##### Run the postprocessing simulation    ./run_job_step3.sh






Output Generation



  ##### Change directory to **Step4_CrackNuclAnalysis**     cd Step4_CrackNuclAnalysis  ##### Run the postprocessing simulation     ./run_job_step4.sh





The crack nucleation life with its upper and lower bounds will be written to the file named "NuclElems.out". The file "MaxPnucl.out" contains the maximum probability of crack nucleation in the domain for every cycle step in the simulation.



Post-Processing



 ##### Generate Contours    ##### Change directory to **Step4_CrackNuclAnalysis**    cd Step4_CrackNuclAnalysis ##### Run the postprocessing simulation    ./generateContours.sh





          This will generate contour plots with .plt files which can be visualized in TecPlot.

PUCM/PUCNM FOR THE DISK USING ABAQUS UMAT

The zip file PUCNM_DISK_ABAQUSUMAT.zip contains the input files used to generate results shown in Figures 4, 5 and 6c &6d. The description of each file in the capsule is provided below:

Input Files




File Name
Description




diskJob.inp
ABAQUS input file containing mesh details and boundary conditions for disk simulations


fld_g.inp
Data file containing RAMPS for each element in different zones of the disk


fld_SF.inp
Data file containing RAMPS for each element in different zones of the disk


form_coeffs_primAlpha.dat
Functional form coefficients for primary alpha phase (used by UMAT at runtime)


form_coeffs_transBeta.dat
Functional form coefficients for transformed beta phase (used by UMAT at runtime)




Executable Files required to run the simulation

(Executables provided separately)




File Name
Description




abaqus_v6.env
ABAQUS environment file


PUCMabaqus.o
Compiled UMAT object file for ABAQUS


computePNucl.py
Python script for PUCNM crack nucleation life calculation


forFIP.py
Python script for FIP-based crack nucleation life calculation




Running the Analysis
Prerequisites



Access to ABAQUS license server

ABAQUS 2023 (compatible version)

Intel Fortran Compiler 2023


Step-by-Step Procedure





Setup Environment



###### Download required files- data/PUCNM_DISK_ABAQUSUMAT/Disk_RPM8300_MS-1432/- code/PUCNM_DISK_ABAQUSUMAT/PUCMabaqus.o- code/PUCNM_DISK_ABAQUSUMAT/abaqus_v6.env- code/PUCNM_DISK_ABAQUSUMAT/*.py






File Placement



##### Place the compiled UMAT and ABAQUS environment file in the simulation foldercp PUCMabaqus.o abaqus_v6.env *.py Disk_RPM8300_MS-1432/cd Disk_RPM8300_MS-1432/






Execute Simulation



abaqus Job=diskJob.inp user=PUCMabaqus.o






Output Generation



Upon completion, generates diskJob.odb for post-processing

Contains all field outputs and state variables




Post-Processing

1. Visualization in ABAQUS/CAE

Open the output database file:



abaqus cae diskJob.odb



Key State Variables (SDVs)




SDV ID
Variable Name




SDV3
Equivalent Plastic Strain


SDV33
Probability of Nucleation


SDV47
MTR Intensity


SDV48
Grain Size


SDV49
Mean Misorientation




2. PUCNM Crack Nucleation Analysis

Command:



abaqus python computePNucl.py diskJob.odb 1



Output File: maxPnucl.out contains 8 columns as follows:



Cycles | MaxProb | FailedElemID | MTRIntensity | gL | EquivalentPlasticStrain | Misorientation | GrainSize



Crack Nucleation Criterion: MaxProb > 0.9

3. FIP-Based Crack Nucleation Analysis

Command:



abaqus python forFIP.py diskJob.odb 1



Output File: maxPnucl.out contains 4 columns as follows:



Cycles | FailedElemID | FIPValue | MaxProb



Crack Nucleation Criterion: MaxProb > 0.9