> For the complete documentation index, see [llms.txt](https://dante-solutions-inc.gitbook.io/dante-6.3-help-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dante-solutions-inc.gitbook.io/dante-6.3-help-documentation/introduction/cylinder-2d-stress.md).

# Build Stress Model using Abaqus-CAE

## **Modification of Thermal Input File to Stress Input File using ABAQUS/CAE**

In this session, the thermal model in the CAE file is used to start the pre-processing for stress model input file. The thermal input file, ***cylinder\_2d\_t.inp,*** can also be imported and used by ABAQUS/CAE to prepare input file for stress model.&#x20;

* Right click the thermal model, and select ***Copy Model. Name the new model as cyl2d\_oil\_quench\_stress***. The CAE file now has 3 models.

<figure><img src="/files/kxGzkx8iq0V1z229Ermx" alt="" width="470"><figcaption></figcaption></figure>

* Go to the ***Mesh*** Module, and check ***Part*** instead of ***Assembly*** for Object.

<figure><img src="/files/Y7eXnUkpilQcTjJszfSm" alt="" width="561"><figcaption></figcaption></figure>

* ***Mesh*** / ***Element Type***, select the whole region. Click ***Continue***, and the ***Element Type*** window pops up.
* Select ***Axisymmetric Stress*** from the element type ***Family*** to replace ***Heat Transfer*** element. Click ***OK*** to exit.

<figure><img src="/files/1SPVbi7A1EvzbhqIbjfj" alt="" width="375"><figcaption></figcaption></figure>

* Go to ***Step*** module. ***Step*** / ***Manager***, and ***Step Manager*** window pops up. The time durations of each step in the stress model should match those in the thermal model.

<figure><img src="/files/abk9WTr2uj4xw43Ge22F" alt="" width="507"><figcaption></figcaption></figure>

**Delete all the thermal steps**, and define stress (static) analysis steps for all steps as follows:

Step 1: Heating up step

```
*Step, name=Heat-Up, amp=step, inc=1000
Furnace heat up
*Static
1., 1000., 1e-06, 100.,
```

```
Step 2: Carburization step
*Step, name=Carburization, amp=step, inc=1000
Carburization process
*Static
1., 10620., 1e-06, 500.,
```

```
Step 3: Air transfer step
*Step, name=Air-Transfer, amp=step, inc=1000
Transfer from furnace to quench tank
*Static
0.01, 12., 1e-05, 1.,
```

```
Step 4: Immersion quenching step
*Step, name=Immersion-Quench, amp=step, inc=1000
*Static
0.001, 5., 1e-06, 1.,
```

```
Step 5: Oil quenching step
*Step, name=Oil-Quench, amp=step, inc=1000
Oil quench to 65 C
*Static
0.001, 1000., 1e-05, 50.,
```

```
Step 6: Air cooling to room temperature
*Step, name=Air-Cool, amp=step, inc=1000
Air cool to room temperature
*Static
1., 1500., 1e-05, 100.,
```

***Note: In general, it is more efficient to edit the input file using a TEXT editor directly.***

* Go to ***Load*** Module. ***Tools*** / ***Set*** / ***Manager***, and the ***Set Manager*** window pops up. Click ***Create*** to define a node set, ***Fixed\_Y\_Node***, by picking the bottom left point.

<figure><img src="/files/l3NYv5TGOpoNEo4suldg" alt="" width="326"><figcaption></figcaption></figure>

* Go to ***Load*** Module. ***BC*** / ***Create***, ***Create Boundary Condition*** window shows up. Select ***Initial*** step, ***Mechanical***, and ***Displace/Rotation***. Click ***Continue***.

<figure><img src="/files/zhARtl19I6BreYtzPXg1" alt="" width="382"><figcaption></figcaption></figure>

* Select the pre-defined node set, ***Fixed\_Y\_Node***, Click ***Continue***.

<figure><img src="/files/Mvw8xqQk5oKIBr6hxx6b" alt="" width="444"><figcaption></figcaption></figure>

* In the ***Edit Boundary Condition*** window, check U2, and Click ***OK*** to exit.

<figure><img src="/files/MBQGAXAEW12KBp9BhC7C" alt="" width="280"><figcaption></figcaption></figure>

* Define the temperature history from the thermal model result to drive the stress model.

```
*TEMPERATURE, FILE=cylinder_2d_t, BSTEP=Step#, ESTEP=step#.
```

**Note: This modification needs to be done by editing input deck**

Key word ***\*TEMPERATURE*** should be used in each step during stress analysis

### Modify the output in ***Step*** module

* Modify the DOF of monitor

  ***(Output SDV, S, U, NT)***

Be careful of the history output file size

### Write out input file <a href="#write-out-input-file" id="write-out-input-file"></a>

* Select ***Job*** module
* ***Job*** / ***Manager***, ***Create*** a new job with job name: ***cylinder\_2d\_s***, and output the input file: ***cylinder\_2d\_s.inp***.

## **Modifications of Input File before Running Stress Model**

* Under the ***\*Material definition***, add definitions for SDV variables as highlighted lines below.

<pre><code>*Material, name=STEEL_S41XX
<strong>*Density
</strong><strong>7.83e-06,
</strong><strong>*Depvar
</strong><strong>190,
</strong><strong>1,   DEFWF_CARB,         Defined Nascent Carbon Weight Fraction
</strong><strong>2,    HARDNESS,           Total Hardness
</strong><strong>4,    DEFWF_NITROGEN,     Defined Nascent Nitrogen Weight Fraction
</strong><strong>5,    PSTRN,              Plastic Strain
</strong><strong>21,   VF_AUSTENITE,       Volume Fraction of Austenite
</strong><strong>34,   VF_FERRITE,         Volume Fraction of Ferrite
</strong><strong>47,   VF_PEARLITE,        Volume Fraction of Pearlite
</strong><strong>60,   VF_UBAINITE,        Volume Fraction of Upper Bainite
</strong><strong>73,   VF_LBAINITE,        Volume Fraction of Lower Bainite
</strong><strong>86,   VF_MARTENSITE,      Volume Fraction of Martensite
</strong><strong>99,   VF_TMARTENSITE,     Volume Fraction of Tempered Martensite
</strong><strong>102,  WF_CARB_AUST,       Carbon Weight Fraction in Austenite
</strong><strong>103,  WF_CARB_FERR,       Carbon Weight Fraction in Ferrite
</strong><strong>104,  WF_CARB_PEARL,      Carbon Weight Fraction in Pearlite
</strong><strong>105,  WF_CARB_UBAIN,      Carbon Weight Fraction in Upper Bainite
</strong><strong>106,  WF_CARB_LBAIN,      Carbon Weight Fraction in Lower Bainite
</strong><strong>107,  WF_CARB_MART,       Carbon Weight Fraction in Martensite
</strong><strong>108,  WF_CARB_TMART,      Carbon Weight Fraction in Tempered Martensite
</strong><strong>115,  DEFWF_NTDA,         Defined Nitrogen Weight Fraction in Nitride A
</strong><strong>117,  DEFWF_NTDB,         Defined Nitrogen Weight Fraction in Nitride B
</strong><strong>135,  CBDC_TMART,         CBD-C Weight Fraction in TMart
</strong><strong>142,  CBDC_SIZE_TMART,    CBD-C Averaged Size in TMart
</strong><strong>149,  CBDA_TMART,         CBD-A Weight Fraction in TMart
</strong><strong>156,  CBDA_SIZE_TMART,    CBD-A Averaged Size in TMart
</strong><strong>157,  TM_CMAX,            Max. Weight Fraction of CBD-C in TMart
</strong><strong>172,  TM_AMAX,            Max. Weight Fraction of CBD-A in TMart
</strong></code></pre>

* second constant of -4 is needed for the stress model

```
*User Material, constants=24, TYPE=MECHANCIAL
**Row1 (1rd:Density),(2nd:ModelType),(3rd-8th:F,P,UB,LB,M,TM)
7.83e-06,    -4.,    0.3,    0.7,     0.,     0.,     0.,     0.
**Row-2: GS:1, Mn:3,   Si:4,   Ni:5,   Cr:6,   Mo:7,   Cu:8,  V:9
0.0635,   0.6,    -1.,    -1.,    -1.,    -1.,    -1.,   -1.
**Row-3: P:10, Nb:11,  Al:12,  Ti:13,  W:14,  Co:15,   B:16,  N:17  ***
-1.,   -1.,    -1.,    -1.,   -1.,    -1.,    -1.,    -1.
```

**Notes:**

1. The 2<sup>nd</sup> material constant needs to be “-4” for stress model.
2. The unit of grain size is mm diameter.
3. For all alloy elements, “-1.” means taking the nominal value from the material database file.
4. To specify a specific composition, the unit of each alloy element value should be in percentage (Mn 0.6%). &#x20;

* Add  ***Field Variable*** initial conditions (Same as the thermal model)

```
*Initial Conditions, type=FIELD, variable=13
ALLNODES, 0.
**
*Initial Conditions, type=FIELD, variable=1
ALLNODES, -4.
**
*Initial Conditions, type=TEMPERATURE
ALLNODES, 20.
**
*Initial Conditions, type=FIELD, variable=3
ALLNODES, 0.002
```

***Note: ALLNODES is the node set of whole model nodes.***

* Check ***\*Step*** definition to make sure they are well defined.  Add ***AMP=STEP*** to all the ***\*Step*** definition card except the Carburization step. For Carburization step, add ***AMP=RAMP***. &#x20;
* Using ***\*Controls*** card to make the convergence easier.

```
*CONTROLS, PARAMETERS=LINE SEARCH
6,
*CONTROLS, PARAMETERS=TIME INCREMENTATION
20, 30
*CONTROLS, FIELD=DISPLACEMENT, PARAMETERS=FIELD
0.05, 0.05,
```

* Using ***\*Temperature*** definition for all steps

```
*Temperature, File=thermal, Bstep=step#, Estep=step# (the corresponding step number)
```

***Note: During the add carbon step, the temperature is assumed to be same as the temperature profile by the end of heating up, and the temperature keeps same through the add carbon step***

***\*Temperature should be deleted in add carbon step***

* ***The DOF for \*Monitor should be changed to displacement DOF (1 or 2 in this case) instead of Temperature (11)***
* Add the carbon file: ***cylinder\_2d\_cc.nod,*** to the Carburization step.

```
*FIELD, OP=NEW, VAR=3, INPUT=cylinder_2d_gas_cc.cbn
```

* **Start the stress model job under ABAQUS command window.**

```
abaqus job=cylinder_2d_s
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://dante-solutions-inc.gitbook.io/dante-6.3-help-documentation/introduction/cylinder-2d-stress.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
