ABAQUS实用子程序SPRINC:主应力提取技巧

实用子程序SPRINC

在UMAT子程序k">ABAQUS中使用UMAT子程序时有时会使用到最大主应力进行计算。通过查阅帮助文档,ABAQUS实用子程序SPRINC可以在UMAT中计算最大主应力和最大主应变,SPRIND可以计算最大主应力和最大主应变的方向。

下面是ABAQUS帮助文档关于实用子程序SPRINC的介绍:

SPRINC (calculate principal values)

Interface

    CALL SPRINC(S,PS,LSTR,NDI,NSHR)

Variables to be provided to the utility routine

S

Stress or strain tensor.

LSTR

An identifier. LSTR=1 indicates that S contains stresses; LSTR=2 indicates that S contains strains.

NDI

Number of direct components.

NSHR

Number of shear components.

Variables returned from the utility routine

PS(I), I=1,2,3

The three principal values.

调用的时候直接在UMAT子程序中输入:CALL SPRINC(S,PS,LSTR,NDI,NSHR)

需要提供给该实用子程序的变量包括:


实用子程序返回UMAT的变量


实例:

CALL SPRINC(S,PS,LSTR,NDI,NSHR) 可以直接写成

CALL SPRINC(STRESS,PS,1,3,3)或CALL SPRINC(STRESS,PS,1, NDI,NSHR)

这行代码的意思是将UMAT中的应力分量数组STRESS提供给实用子程序SPRINC计算;1表示LSTR=1,表明提供给实用子程序SPRINC的为应力分量数组;后面的两个“3”分别表示正应力分量个数为3和切应力分量个数为3,也可以不用改变直接使用NDI和NSHR,因为在三维模型的UMAT中NDI和NSHR已经被赋予了值为3。PS数组储存返回的计算得到的主应力,这个需要自己在umat程序中定义数组PS.

下面是关于返回主应力顺序的验证:

    CALL SPRINC(STRESS,PS,1,3,3)

    STATEV(4)=PS(1)

    STATEV(5)=PS(2)

    STATEV(6)=PS(3)

SDV4_MAX.png

SDV5_MIN.png

ABAQUS实用子程序SPRINC提取主应力的图7

SDV6_MID.png

需要注意以下点:

1.PS数组一般需要在程序中自定义数组变量;

2.S数组一般也需要自定义数组变量,且需要为S数组赋予应力分量或应变分量的值;

3.如果SPRINC或SPRIND返回的主应力为零,检查输入的变量或数组是否未定义或者未赋值,其次检查输出数组是否未定义。

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空