了解一种用于模拟弹塑性材料的RADIOSS材料定律的参数表征方法。
在开始之前,请将本教程中使用的模型文件从 /HS-4200/ 复 制到您的工作目录。
研究了延展性铝合金的表征。执行RADIOSS模拟以复 制实验性拉伸测试。确定材料定律的参数以拟合实验结果。
HS-1506:使用曲线差值积分进行材料校准提供了一种使用HyperMath或Python functions来测量两条曲线之间的差异来设置此问题的替代方法。
HS-1507:使用数据源中的面积工具进行Material校准提供了一种使用面积工具设置此问题的替代方法。
标准拉伸试样的四分之一使用对称条件进行建模。通过在左端施加速度对试样施加牵引力。
单位为:mm、ms、g、N、MPa。
要表征的材料是6063 T7铝。它具有各向同性的弹塑性行为,可以通过Johnson-Cook模型无损地再现(RADIOSS Block Law2),定义为:
在本教程中,参数a、b、n、σmax(最大应力)和杨氏模量被定义为Inputs Variable。通过实验测试获得的应力-应变曲线如图3所示。
对于模拟结果,通过将节点1的位移除以参考长度(75 mm) 来获得工程应变,通过将截面1中的力除以其初始表面(10.2 mm2) 来获得工程应力。
在此步骤中,在HyperStudy中创建基本输入模板,或使用研究目录中的基本输入模板。
1.启动HyperStudy。
2.在菜单栏中,单击Tools>Editor。
此时将打开Editor。
3.在File字段中,导航到您的工作目录并打开文件TENSILE_TEST_0000.rad。
Note: RADIOSS使用20个字符的固定字段作为属性。
4.在查找区域中,输入/MAT/PLAS_JOHNS/1并单击。
HyperStudy在TENSILE_TEST_0000.rad文件中突出显示/MAT/PLAS_JOHNS/1。
5.从第51行的开头开始并突出显示前20个字段,选择E。
Tip: 要帮助您选择20个字符的字段,请按Control键激活选择器(设置为20个字符),然后单击value。
6.右键单击突出显示的字段,然后从上下文菜单中选择Create Parameter。
此时将打开Parameter: varname_1对话框。
7.在Label字段中,输入E_Young。
8.更改边界。
o下限:50000
o初始值: 60400
o上限:70000
9.在Format字段中,输入%20.5f。
10.单击OK。
11.使用表1 中提供的信息定义另外四个变量。
Note: 一些初始值与原始文件中的值不同。
表1.
12.单击OK关闭Editor。
13.在Save Template对话框中,导航到您的工作目录并将文件另存为TENSILE_TEST_000.tpl。
1.通过以下方式开始新研究:
o在菜单栏中,单击File>New。
o在功能区上,单击。
2.在Add Study对话框中,输入研究名称,选择研究的位置,然后单击OK。
3.转到Define Models步骤。
4.添加Parameterized File模型。
a)从Directory中,将TENSILE_TEST_0000.tpl文件拖放到工作区中。
b)在Solver input file列中,输入TENSILE_TEST_0000.rad。
这是HyperStudy在评估期间写入的求解器输入文件的名称。
c)在Solver Execution Scrip列中,选择RADIOSS。
d)验证Solver input arguments字段是否显示为$(file)。
此参数运行Starter和RADIOSS的Engine进行崩溃分析。它还会阻止从动画文件创建.h3d结果文件。X是用于模拟的CPU数量。
5.定义模型依赖关系
a)单击Model Resources。
此时将打开Model Resource对话框。
b)选择Model 1(m_1)。
c)单击Resource Assistant>Add File。
d)在Select File对话框中,导航到您的工作目录并打开TENSILE_TEST_0001.rad文件。
e)将Operation设置为Copy。
f)单击Close。
6.单击Import Variables。
从TENSILE_TEST_0000.tpl资源文件导入5个Inputs Variable。
7.转到Define Input Variables步骤。
8.查看Inputs Variable的下限和上限范围。
1.转到Test Models步骤。
2.单击Run Define。
将在study目录中创建一个approaches/setup_1-def/ 目录。approaches/setup_1-def/run__00001/m_1目录包含输入文件,该文件是试运行的结果。
在此步骤中,您将RADIOSS应力-应变曲线与实验数据进行比较。
您将关注曲线中的三个特定点以进行此比较。由于损伤不是用这个定律建模的,所以在颈缩点之后不需要比较。
·应变时实验应力与RADIOSS之差等于0.02(1)
·实验菌株与RADIOSS在颈缩点的差异(2)
·颈缩点的实验应力和RADIOSS之间的差异(3)
1.转到Define Output Responses步骤。
2.创建标记为Disp_sim的数据源。
a)单击Data Sources选项卡。
b)从Directory中,将位于approaches/setup_1-def/run__00001/m_1中的TENSILE_TEST01文件拖放到工作区中。
此时将打开Data Source Builder。
c)对于Tool ,选择File Source。
d)定义以下选项:
Type:None/Node1
Request:4 node 1
component:DX-XD isplacement
e)单击OK。
f)在工作区中,将数据源的标签更改为Disp_sim。
3.重复步骤2 以创建标记为Force_sim的第二个数据源,并在此过程中进行以下更改:
a)将Type设置为Section/SECTION_2。
b)将Request设置为2 section 1。
c)将Component设置为FT-Resultant Tangent Force。
4.创建3个输出响应。
a)单击Define Output Responses步骤。
b)单击Add Output Response三次
c)在工作区的Label列中,将三个输出响应的标签更改为Radioss_Strain_0_2、Radioss_Stress_Necking和Radioss_Strain_Necking。
5.定义Radioss_Strain_0_2输出响应。
a)在输出响应Radioss_Strain_0_2的Expression列中,单击(...)的。
此时将打开Expression Builder。
b)单击Function选项卡。
c)从函数列表中,选择lininterp。
d)单击Insert varname。
函数lininterp(,,) 将显示在Evaluate Expression字段中。
e)在Evaluate Expression字段中,输入lininterp functions中的(ds_1/75,ds_2/10.2,0.02)。
此表达式计算Strain等于0.02时相对于Strain的应力。
f)单击OK。
6.定义Radioss_Stress_Necking输出响应。
a)在输出响应Radioss_Stress_Necking的Expression列中,单击 (...) 的。
此时将打开Expression Builder。
b)单击Data Sources选项卡。
c)从数据源列表中,选择Force_sim。
d)从Insert Varname下拉列表中,选择Maximum。
e)单击Insert varname。
函数max(ds_2) 将显示在Evaluate Expression字段中。
f)在Evaluate Expression字段中,编辑函数,使其读取max(ds_2)/10.2。
这是力的最大值(ds_2),它在最小应变和力最大值处的应变之间修剪,除以10.2(表面积)以获得应力。
Note: 在一些类似的曲线拟合问题中,可能需要在极限载荷后修剪数据,这样做的表达式是: max(ds_2[subrange(ds_1,min(m_1_ds_1),ds_1[indexofmax(ds_2)])/10.2.
g)单击OK。
7.定义Radioss_Strain_Necking输出响应。
a)在输出响应Radioss_Strain_Necking的Expression列中,单击 (...) 的。
此时将打开Expression Builder。
b)在Evaluate Expression字段中,输入ds_1[indexofmax(ds_2)]/75。
这是力值最大值处的位移(ds_1) 除以75(参考长度)以获得应变。
Note: 在一些类似的曲线拟合问题中,可能需要在极限加载后修剪数据,这样做的表达式是:ds_1[maxindex(subrange(ds_1,min(ds_1),ds_1[indexofmax(ds_2)])]/75.
c)单击OK。
8.单击Evaluate以提取响应值。
1.添加优化。
a)在Explorer中,右键单击并从上下文菜单中选择Add。
b)在Add对话框中,选择Optimization。
c)对于Definition from,选择一种方法,然后单击OK。
2.转到Optimization 1>Definition>Define Output Responses步骤。
3.单击Objectives/Constraints - Goals选项卡。
4.添加目标。
a)单击Add Goal。
b)在Apply On列中,选择Radioss_Strain_0_2。
c)在Type列中,选择More。
d)在第1列中,选择System Identification。
e)在第2列中,输入141.00000。
5.对Radioss_Stress_Necking和Radioss_Strain_Necking输出响应应用目标。
a)为Radioss_Stress_Necking指定以下内容:
Type:System Identification
目标值: 148.00000
b)为Radioss_Strain_Necking指定以下内容:
Type:System Identification
目标值:0.0800000
6.转到Optimization>Specifications步骤。
7.在工作区中,将Mode设置为Adaptive Response Surface Method(ARSM)。
Note: 只启用对问题表述有效的方法。
8.单击Apply。
9.转到Optimization>Evaluate步骤。
10.单击Evaluate Tasks以启动优化。
11.查看迭代历程记录。
a)单击Iteration Plot选项卡。
b)激活 可在其自己的绘图中查看每个通道。
c)使用Channel selector,选择三个目标和Objective Function。
前三个选择是系统识别优化问题中使用的实际值。观察他们的目标历程,看看他们的价值观确实接近各自的目标价值观。最后的图是系统识别问题中使用的标量目标;实际目标值和目标值之间平方差的标准化和。请注意,此组合函数的值已通过优化降低。