注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

htbbzzg的博客

与朋友们分享 CAE 资料和经验

 
 
 

日志

 
 

NX Nastran 超单元用户指南 一份翻译资料 (13)  

2012-01-23 09:28:51|  分类: Nastran 超单元 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  (续第一个例子)

对于超单元 1 的情况控制

    SUBCASE 1

        SUPER = 1

        LOAD = 1

        DISP = ALL

对于残余结构的情况控制

    SUBCASE 2

        SUPER = 0

        LOAD = 1

        DISP = ALL

 

在程序处理超单元 1 时,它只考虑超单元 1 的情况控制,可以看到只要生成一个解。对于该解,施加载荷 1,并要求对超单元1 输出所有节点的位移。

在处理残余结构时,程序看到也是只要生成一个解,对于残余结构中对应于组 1 的所有载荷卡生成矩阵,并与上游超单元的减缩载荷矩阵结合到一起。

对于定义的每个解 (载荷序列),在载荷矩阵中都有一个对应的列。解的序号 (载荷矩阵中的列号) 根据残余结构中的 SUBCASEs 确定。每个超单元生成一个载荷矩阵,其列号包含了基于该超单元的情况控制的信息。如果一个超单元没有任何子情况与残余结构的子情况 (载荷序列)相关联,在载荷矩阵中对该超单元的相应解生成一个空号。

 

一个载荷条件 – 减缩的情况控制

现在将显示同一个问题,减缩形式的情况控制,它十分接近我们经常看到的形式:

    SUPER = ALL $ optional in MSC.Nastran V69+, necessary in previous versions

    ISP = ALL

    LOAD = 1

由于只有一个载荷条件,默认将所有的情况控制施加到所有的超单元。在这一情况控制中可以添加一个 SUBCASE 命令,但是只有一个载荷条件时它并不是必要的。

 既然已经说明了 SUPER 命令的最简单用法,现在看一下可能的选项。

 首先看一下在每个超单元只有一种载荷条件的情况,对不同超单元施加不同载荷和要求不同输出的可能性。假设在结构建模时生成了不同的部件。现在将这些部件装配成一个模型并进行求解。仍然看一下前面图 1-12 中显示的双头苍蝇拍,使用超单元,如图 2-1 所示

我们将写出施加压力载荷的情况控制,假设不同的部件建模为不同的超单元,其中超单元 1 对应的部件使用载荷组 101,而超单元 2 对应的部件使用载荷组 102,均代表压力载荷。

同样,对超单元 3 对应的部件要求输出节点位移和节点力的平衡情况,而对所有其它超单元要求输出位移和应力。

与这些要求对应的情况控制如下:

    DISP = ALL $ default request before first SUBCASE

    STRESS = ALL $ default request before first SUBCASE

    SET 99 = 0,4,5,6,7 $ set of superelements

    SUBCASE 10

        LABEL = SUPERELEMENT 1, LOADING 1

        SUPER = 1

        LOAD = 101

    SUBCASE 20

        LABEL = SUPERELEMENT 2, LOADING 1

        SUPER = 2

        LOAD = 102

    SUBCASE 30

        LABEL = SUPERELEMENT 3, LOADING 1

        SUPER = 3

        GPFORCE = ALL

        STRESS = NONE

    SUBCASE 40

        LABEL = SUPERELEMENTS 0,4,5,6,7, LOADING 1

        SUPER = 99

在这一组情况控制中,定义了一个超单元集,包含超单元 4, 5, 6, 7 和残余结构。默认的,对所有子情况要求位移和应力输出;子情况 10 和 20 分别用来对超单元 1 和 2 施加载荷并得到这些超单元的输出;子情况 30 用于超单元 3。虽然这个子情况没有直接施加任何载荷,但在情况控制中必须涉及以便获得输出。在这一子情况中,要求输出位移和节点力的平衡情况,而默认的应力输出被覆盖。

最后一个子情况用于其余超单元和残余结构。

再次强调,对残余结构,所有载荷条件都必须有相应的 SUBCASE。这里的最后一个 SUBCASE 保证了该要求。同样,要得到一个超单元的输出,该超单元必须再情况控制中被涉及。

以下情况控制,只是将 set 99 改为只引用残余结构,对同样的载荷条件求解本问题,对超单元 4, 5, 6 或 7 将没有输出:

    DISP = ALL $ default request before first SUBCASE

    STRESS = ALL $ default request before first SUBCASE

    SET 99 = 0 $ set of superelements

    SUBCASE 10

        LABEL = SUPERELEMENT 1, LOADING 1

        SUPER = 1  $ mentioned superelement 1

        LOAD = 101

    SUBCASE 20

        LABEL = SUPERELEMENT 2, LOADING 1

        SUPER = 2  $ mentioned superelement 2

        LOAD = 102

    SUBCASE 30

        LABEL = SUPERELEMENT 3, LOADING 1

        SUPER = 3  $ mentioned superelement 3

        GPFORCE = ALL

        STRESS = NONE

    SUBCASE 40

        LABEL = SUPERELEMENTS 0,4,5,6,7, LOADING 1

        SUPER = 99

从 set 99 中一处了超单元 4, 5, 6 和 7,也就从情况控制中一处了对超单元 4, 5, 6 和 7 的引用。这些超单元将会被处理,他们的高度将包含在求解中,但是不会对他们施加载荷 (对于本例是可以接受的),也不会有相应的输出。

 

对于多载荷条件的情况控制

同样,如果输入是并列的,对于多载荷条件的情况控制看起来与常规的情况控制几乎一样。例如,使用 图 1-12 的模型例,划分为如 图 2-1 的超单元,我们将说明使用超单元时,对于多载荷条件的情况控制是什么样。

情况 1: 简化的情况控制

以下情况控制是多载荷条件的简化的情况控制。这一情况控制是基于使用文件 load1.dat,载荷定义如 图 4-5 所示。对于这一情况,模型仅包含主模型数据段。如果使用零件,则各零件所有的载荷卡必须至于输入文件中正确的 BEGIN SUPER 段中:

    TITLE = S.E. SAMPLE PROBLEM 1

    SUBTITLE = S.E. STATICS - RUN 1 - MULTIPLE LOADS

    DISP = ALL

    $ Set DEFAULT - ALL CASE CONTROL IS FOR ALL SUPERELEMENTS

    SUPER = ALL $ not needed, but it is better to include this

    SUBCASE 101

        LABEL = PRESSURE LOAD

        LOAD = 101

    $

    SUBCASE 201

        LABEL = 2# NORMAL LOADS

        LOAD = 201

    $

    SUBCASE 301

        LABEL = OPPOSING LOADS

        LOAD = 301

    $

图 4-4 对于多载荷条件,简化的情况控制

 

这一情况控制类似于多常规的多载荷条件的情况控制。唯一的改变是添加了一个 SUPER = ALL 命令以表示这些情况控制适用于所有的超单元。注意:现版本中这是默认的,不需要再添加该命令。

注意:在 图 4-5 中,对所有承受载荷的超单元,载荷集的编号是相同的。注意 PLOAD2 卡。虽然单元 18 到 67 有相同的载荷,但是使用了两个 PLOAD2 卡,这是因为模型数据是按超单元分割的。如果对所有单元使用一个 PLOAD2 卡,将会生成一个备份以适合超单元 1 和 2,在处理这些超单元的载荷时可能发布一个致命错,因为没有一个超单元包含完整的单元范围。超单元 1 包含单元 18 到 42,因此程序将发布一个致命错,表明单元 43  到 67 不存在。

这样,将 PLOAD2 分为两个卡可以防止这一问题。多数处理器对每个单元生成一个 PLOAD2 卡,从而预防这一问题的出现:

    $

    $ LOADINGS - FOR RUN SHOWING CONVENTIONAL CASE CONTROL

    $

    $ LOAD CASE 1 - PRESSURE LOAD

    $

    $ NOTE: THRU RANGE SHOULD INCLUDE ELEMENTS OF ONLY ONE SUPERELEMENT

    $

    PLOAD2,101,-1.,18,THRU,42

    PLOAD2,101,-1.,43,THRU,67

    $

    $ LOAD CASE 2 - 2 POINT LOADS AT CORNERS

    $

    FORCE,201,93,,2.,0.,0.,1.

    FORCE,201,104,,2.,0.,0.,1.

    $

    $ LOAD CASE 3 - OPPOSING POINT LOADS AT CORNERS

    $

    FORCE,301,93,,2.,0.,0.,1.

    FORCE,301,104,,2.,0.,0.,-1.

    $

    图 4-5 文件 load1.dat.

 

情况 2: 展开的情况控制

现在将使用文件 load2.dat 的载荷信息,如图 4-6 所示。在这一文件中,每个载荷条件都被两个载荷集所引用。比如,载荷条件 1 – 压力载荷,被载荷集 101 和 102 所引用:

    $

    $ LOADINGS - FOR RUN SHOWING PARTITIONED CASE CONTROL

    $

    $ LOAD CASE 1 - PRESSURE LOAD

    $

    PLOAD2,101,-1.,18,THRU,42

    PLOAD2,102,-1.,43,THRU,67

    $

    $ LOAD CASE 2 - 2 POINT LOADS AT CORNERS

    $

    FORCE,201,93,,2.,0.,0.,1.

    FORCE,202,104,,2.,0.,0.,1.

    $

    $ LOAD CASE 3 - OPPOSING POINT LOADS AT CORNERS

    $

    FORCE,301,93,,2.,0.,0.,1.

    FORCE,302,104,,2.,0.,0.,-1.

    $

    图 4-6 文件 load2.dat.

 

通过使用 Load 数据卡指示程序对载荷进行组合,可以解决将这些载荷集组合到一起的问题。但是,当考虑情况控制时,我们将使用情况控制来确定载荷如何施加。将载荷组合起来的情况控制显示如下:

 

    TITLE = S.E. SAMPLE PROBLEM 1

    SUBTITLE = S.E. STATICS - MULTIPLE LOADS

    DISP = ALL $ DEFAULT FOR ALL SUBCASES

    $

    $ SET DEFAULT VALUE FOR SUBCASES

    $

    SET 999 = 0,3,4,5,6,7

    SUPER = 999

    $

    SUBCASE 101

        SUPER = 1,1 $ SUPERELEMENT 1 - RESIDUAL LOAD 1

        LABEL = S.E. 1 PRESSURE LOAD

        LOAD = 101

    $

    SUBCASE 102

        LABEL = S.E. 2 PRESSURE LOAD

        SUPER = 2,1 $ SUPERELEMENT 2 - RESIDUAL LOAD 1

        LOAD = 102

        ELFORCE = ALL $ GET ELEMENT FORCES FOR S.E. 2 - R.S. LOAD 1

        $

    SUBCASE 201

        SUPER = 1,2 $ SUPERELEMENT 1 - RESIDUAL LOAD 2

        LABEL = S.E. 1 - 2# NORMAL LOAD

        LOAD = 201

        $

    SUBCASE 202

        LABEL = S.E. 2 - 2# NORMAL LOAD

        SUPER = 2,2 $ SUPERELEMENT 2 - RESIDUAL LOAD 2

        LOAD = 202

    $

    SUBCASE 301

        LABEL = S.E. 1 - OPPOSING LOADS

        SUPER = 1,3 $ SUPERELEMENT 1 - RESIDUAL LOAD 3

        LOAD = 301

    $

    SUBCASE 302

        LABEL = S.E. 2 - OPPOSING LOADS

        SUPER = 2,3 $ SUPERELEMENT 2 - RESIDUAL LOAD 3

        LOAD = 302

    $

    SUBCASE 1001 $ USE DEFAULT VALUE FOR SUPER

        LABEL = SE 0,3,4,5,6,7 LOAD 1 - PRESSURE

        SPCFORCES = ALL

    $

    SUBCASE 1002

        LABEL = SE 0,3,4,5,6,7 LOAD 2 - NORMAL FORCE

    $

    SUBCASE 1003

        LABEL = SE 0,3,4,5,6,7 LOAD 3 - OPPOSING LOADS

    $

    图 4-7 对多种载荷条件的情况控制

 

在这一情况控制中,默认值位于第一个 SUBCASE 之前。根据默认值,任何没有 SUPER 命令的 SUBCASE 被施加到 SET 999 (SE 0, 3, 4, 5, 6, 7),而对所有 SUBCASE 的默认输出是所有节点的位移。

载荷条件 1 有 3 个 子情况定义:子情况 101, 102 和 1001。在 子情况 101 中,命令 SUPER = 1,1 告诉程序:这个子情况引用超单元 1,并施加载荷序列 1 (对这一情况,施加载荷集 101)。

子情况 102 中有命令 SUPER = 2,1。这个命令告诉程序,这一子情况包含了将载荷序列 1 施加到超单元 2 的命令 (对这一情况,施加载荷集 102)。

子情况 1001 没有 SUPER 命令,因此 NX Nastran 使用在第一个 SUBCASE 之前的情况控制命令,施加到超单元 0, 3, 4, 5, 6 和 7。由于没有提供载荷序列号,程序将根据 SUBCASE 出现的顺序分配一个载荷序列号。由于这是包含这些超单元的第一个 SUBCASE,这一子情况也用于载荷序列 1,和输入命令 SUPER = 999,1 一样。由于这一子情况没有施加载荷,因此对这一载荷条件只有超单元 1 和 2 施加载荷。

载荷条件 2 使用子情况 201, 202 和 1002,以类似方式定义。载荷条件 3 以子情况 301, 302 和 1003 定义。

原作者注:当心 – 如果对某个超单元、某个载荷情况不存在 SUBCASE,则对该载荷情况没有载荷施加到该超单元上,也没有该载荷情况对应的输出。

在情况控制段经常会遗漏有关超单元的命令,从而没有载荷或约束施加到该超单元。这种遗漏不会导致不正确的结果,但是会导致对该超单元、该载荷条件没有任何输出。

注意:通过添加对于超单元的子情况,然后执行重启动可以纠正这一问题。

本例中,子情况 1001, 1002 和 1003 定义对于超单元 0, 3, 4, 5, 6 和 7 的输出要求。注意,如果在这一子情况中遗漏了 SUPER=999 命令,这一子情况将只用于残余结构,因此,对于超单元 3, 4, 5, 6 和 7 将不提供任何输出要求。

  评论这张
 
阅读(1186)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016