声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 8830|回复: 19

[Nastran专区] 模型建好了怎么提取刚度阵质量阵,dmap怎么写呢

[复制链接]
发表于 2006-11-9 12:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
看到别人说dmap可以做到,那dmap写在什么地方,是bdf里吗,是bdf的什么地方呢怎么写呢,能不能稍微详细的说下呢,谢谢了,急
回复
分享到:

使用道具 举报

发表于 2006-11-10 16:26 | 显示全部楼层
本帖最后由 wdhd 于 2016-5-11 10:20 编辑

  仔细研究一下下面的语句吧。
  SOL 103
  DIAG14  COMPILESEMODES  ALTER226  MATGENEQEXIN/INTEXT/9/0/LUSETSDIAG14  COMPILESEMODES  ALTER226  MATGENEQEXIN/INTEXT/9/0/LUSETS
  MPYAD INTEXT,KGG,/KGGE/1 MPYADKGGE,INTEXT,/KGGEXTMPYADKGGE,INTEXT,/KGGEXT
  MATMOD KGGEXT,EQEXIN,,,,/MATPOOL1,/16/1 MPYADINTEXT,MGG,/MGGE/1MPYADINTEXT,MGG,/MGGE/1
  MPYAD MGGE,INTEXT,/MGGEXT MATMODMGGEXT,EQEXIN,,,,/MATPOOL2,/16/1MATMODMGGEXT,EQEXIN,,,,/MATPOOL2,/16/1
  CEND
  METHOD=1
  DISP=ALL
  BEGIN BULK
  GRID,1,,0.,0.,0.,,23456
  GRID,2,,0.,0.,0.,,123456
  CONM2,1,1,,10.
  CELAS2,2,1000.,1,1,2,1
  EIGRL,1,,,10
  ENDDATA
发表于 2006-11-12 12:18 | 显示全部楼层
本帖最后由 wdhd 于 2016-5-11 10:20 编辑

  dmap写在bdf文件的executive control section中,
  一般用到的是dmap alter,即修改nastran现在已有的求解序列,例如你在sol 101或sol 103过程中想提取质量或刚度阵就需要修改相应的求解序列,而不是自己编写新的求解序列(当然对特定的需要这也是完全可以的)。
  写一个dmap alter的基本过程如下:
  1.首先在executive control section 中加入 DIAG,8 提交运算,然后检查f04文件,
  找到你要提取的或修改的那个矩阵由哪个subDMAP的哪个MODULE输出。
  2.同时,可以使用 DIAG,14 把整个SOLution的DMAP程序列写在f06里
  或用 COMPILE,subDMAP_NAME,LIST 列写某个subDMAP,比如第1步中你要用到的那个 subDMAP
  这一步骤只是让你看到 nastran 现有的 DMAP程序是如何编写的,以便于修改它。
  3.在步骤1中找到了要修改的subDMAP和MODULE之后就可以开始写 DMAP ALTER 了
  格式如下:
  COMPILE subDMAP_name subDMAPname就是上面提到的你要修改的那个sunDMAPALTERi,jsubDMAPname就是上面提到的你要修改的那个sunDMAPALTERi,j 这句用来告诉nastran你下面的DMAP要修改sunDMAP_name的什么地方,通常由第1步骤中提
  到的那个MODULE确定到的那个MODULE确定 DMAP 程序
  ENDALTER
  4. 提交计算,查看结果。
  在机器了翻了一下,只找到一个提取超单元约束模态的例子,供参考
  NASTRANinputfilecreatedbytheMSCMSC.NastraninputfileNASTRANinputfilecreatedbytheMSCMSC.Nastraninputfile translator ( MSC.Patran 13.1.089 ) on October 21, 2006 at 12:38:42.
  DirectTextInputforNastranSystemCellSectionDirectTextInputforNastranSystemCellSection Direct Text Input for File Management Section
  NormalModesAnalysis,DatabaseSOL103DIAG8NormalModesAnalysis,DatabaseSOL103DIAG8 Direct Text Input for Executive Control
  COMPILE SEKR −−−−−−−−−−−−−−−−−−从这行ALTER106−−−−−−−−−−−−−−−−−−从这行ALTER106 这行的106对不同版本的NASTRAN可能会不同,
  现在可以用ALTER′STARTTEXT′,′ENDTEXT′来解决,不过我习惯了用原来的格式MATPRNGOT//现在可以用ALTER′STARTTEXT′,′ENDTEXT′来解决,不过我习惯了用原来的格式MATPRNGOT//
  ENDALTER −−−−−−−−−−−−−−−−到这行就是一个完整的DMAPALTER了,很简单的。CENDTITLE=MSC.Nastranjobcreatedon17−Oct−06at20:29:08ECHO=NONE−−−−−−−−−−−−−−−−到这行就是一个完整的DMAPALTER了,很简单的。CENDTITLE=MSC.Nastranjobcreatedon17−Oct−06at20:29:08ECHO=NONEDirect Text Input for Global Case Control Data
  SUBCASE 1
  Subcasename:DefaultSUBTITLE=DefaultMETHOD=1SPC=2VECTOR(SORT1,REAL)=ALLSPCFORCES(SORT1,REAL)=ALLBEGINBULKPARAMPOST−1PARAMPRTMAXIMYESEIGRL1100Subcasename:DefaultSUBTITLE=DefaultMETHOD=1SPC=2VECTOR(SORT1,REAL)=ALLSPCFORCES(SORT1,REAL)=ALLBEGINBULKPARAMPOST−1PARAMPRTMAXIMYESEIGRL1100Direct Text Input for Bulk Data
  seset,1,4,5,6
  spoint,1001,thru,1005
  seqset1,1,0,1001,thru,1005
  ElementsandElementPropertiesforregion:barPBARL11BAR.02.01ElementsandElementPropertiesforregion:barPBARL11BAR.02.01 Pset: "bar" will be imported as: "pbarl.1"
  CBAR 1 1 1 2 0. 0. 1.
  CBAR 2 1 2 3 0. 0. 1.
  CBAR 3 1 3 4 0. 0. 1.
  CBAR 4 1 4 5 0. 0. 1.
  CBAR 5 1 5 6 0. 0. 1.
  ReferencedMaterialRecordsReferencedMaterialRecords Material Record : aluminium_iso_SI
  DescriptionofMaterial:Date:26−Jul−94Time:17:54:56MAT117.+10.32700.2.32−5DescriptionofMaterial:Date:26−Jul−94Time:17:54:56MAT117.+10.32700.2.32−5Nodes of the Entire Model
  GRID 1 0. 0. 0.
  GRID 2 .2 0. 0.
  GRID 3 .4 0. 0.
  GRID 4 .6 0. 0.
  GRID 5 .8 0. 0.
  GRID 6 1. 0. 0.
  LoadsforLoadCase:DefaultSPCADD21LoadsforLoadCase:DefaultSPCADD21 Displacement Constraints of Load Set : fixed end
  SPC1 1 123456 1
  $ Referenced Coordinate Frames
  ENDDATA 3d0f1156
  上面用到的知识的一些细节请自己查手册吧。
 楼主| 发表于 2006-11-13 16:37 | 显示全部楼层
我在bdf中加入了PARAM,EXTOUT,DMIGPCH,得到一个pch文件,可是看不懂里面的刚度和质量阵的结果,
它的刚度和质量阵的结果是怎么排列的啊
我的qq是93629184,你能加我吗
 楼主| 发表于 2006-11-13 16:49 | 显示全部楼层
我弄了个简单的悬臂梁,分两个单元,那就应该得到的刚度和质量阵都应该是6*6的矩阵,但是pch文件里是这样的,什么意思呢??
DMIG    KAAX           0       6       2       0                      18
DMIG*   KAAX                           1               1
*                      1               1 4.199999989D+08
DMIG*   KAAX                           1               2
*                      1               2 4.199999856D+06
DMIG*   KAAX                           1               3
*                      1               3 1.679999943D+07
DMIG*   KAAX                           1               5
*                      1               3 2.519999914D+06
*                      1               5 5.039999828D+05
DMIG*   KAAX                           1               6
*                      1               2-6.299999784D+05
*                      1               6 1.259999957D+05
DMIG*   KAAX                           2               1
*                      1               1-4.199999989D+08
*                      2               1 8.399999979D+08
DMIG*   KAAX                           2               2
*                      1               2-4.199999856D+06
*                      1               6 6.299999784D+05
*                      2               2 8.399999713D+06
DMIG*   KAAX                           2               3
*                      1               3-1.679999943D+07
*                      1               5-2.519999914D+06
*                      2               3 3.359999885D+07
DMIG*   KAAX                           2               5
*                      1               3 2.519999914D+06
*                      1               5 2.519999914D+05
*                      2               5 1.007999966D+06
DMIG*   KAAX                           2               6
*                      1               2-6.299999784D+05
*                      1               6 6.299999784D+04
*                      2               6 2.519999914D+05
DMIG*   KAAX                           3               1
*                      2               1-4.199999989D+08
*                      3               1 4.199999989D+08
DMIG*   KAAX                           3               2
*                      2               2-4.199999856D+06
*                      2               6 6.299999784D+05
*                      3               2 4.199999856D+06
DMIG*   KAAX                           3               3
*                      2               3-1.679999943D+07
*                      2               5-2.519999914D+06
*                      3               3 1.679999943D+07
DMIG*   KAAX                           3               5
*                      2               3 2.519999914D+06
*                      2               5 2.519999914D+05
*                      3               3-2.519999914D+06
*                      3               5 5.039999828D+05
DMIG*   KAAX                           3               6
*                      2               2-6.299999784D+05
*                      2               6 6.299999784D+04
*                      3               2 6.299999784D+05
*                      3               6 1.259999957D+05
DMIG    MAAX           0       6       2       0                      18
DMIG*   MAAX                           1               1
*                      1               1 7.559999870D-01
DMIG*   MAAX                           1               2
*                      1               2 7.559999870D-01
DMIG*   MAAX                           1               3
*                      1               3 7.559999870D-01
DMIG*   MAAX                           2               1
*                      2               1 1.511999974D+00
DMIG*   MAAX                           2               2
*                      2               2 1.511999974D+00
DMIG*   MAAX                           2               3
*                      2               3 1.511999974D+00
DMIG*   MAAX                           3               1
*                      3               1 7.559999870D-01
DMIG*   MAAX                           3               2
*                      3               2 7.559999870D-01
DMIG*   MAAX                           3               3
*                      3               3 7.559999870D-01
DMIG    VAX            0       9       2       0                       1
DMIG*   VAX                            1               0
*                      1               1 1.000000000D+00
*                      1               2 1.000000000D+00
*                      1               3 1.000000000D+00
*                      1               5 1.000000000D+00
*                      1               6 1.000000000D+00
*                      2               1 1.000000000D+00
*                      2               2 1.000000000D+00
*                      2               3 1.000000000D+00
*                      2               5 1.000000000D+00
*                      2               6 1.000000000D+00
*                      3               1 1.000000000D+00
*                      3               2 1.000000000D+00
*                      3               3 1.000000000D+00
*                      3               5 1.000000000D+00
*                      3               6 1.000000000D+00
发表于 2006-11-14 10:50 | 显示全部楼层
如果你用我提供的DMAP,可以在PCH文件里得到类似的DMIG格式的刚度和质量矩阵(NASTRAN2005版)。
NASTRAN中的矩阵有各种形式,由于矩阵的每一行每一列都是代表相应的自由度,不能搞错。DMIG就是将每个自由度相对应的矩阵元素。
请看附件介绍DMIG
 楼主| 发表于 2006-11-14 16:10 | 显示全部楼层
我的是nastran2004,怎么办
发表于 2006-11-15 12:57 | 显示全部楼层
请将
ALTER 226 改为:
ALTER 'CALL MODEFSRS'(1,-1)
如果再有问题请将$diag 14中的$号去除,计算后,将f06,f04文件发给我
 楼主| 发表于 2006-11-15 14:28 | 显示全部楼层
你的附件是一个说明,没有给我程序段,你给我一下好吗??
也可以给我qq发,93629184
 楼主| 发表于 2006-11-15 14:30 | 显示全部楼层
哦,我看到了,你是在原来的帖子里,我先试一下
顺便问下g-set集是什么意思,是不是我得到的是没约束时的矩阵
 楼主| 发表于 2006-11-15 14:44 | 显示全部楼层
DMIG    KGGEXT         0       1       2       0                      12
DMIG*   KGGEXT                         1               1
*                      1               1 1.000000000D+03
*                      2               1-1.000000000D+03
DMIG*   KGGEXT                         2               1
*                      1               1-1.000000000D+03
*                      2               1 1.000000000D+03
DMIG    MGGEXT         0       1       2       0                      12
DMIG*   MGGEXT                         1               1
*                      1               1 1.000000000D+01
DMIG*   MGGEXT                         1               2
*                      1               2 1.000000000D+01
DMIG*   MGGEXT                         1               3
*                      1               3 1.000000000D+01

只得到上面的信息,不对应该,把diag前的$去掉后,得到一个30多兆的f06文件
 楼主| 发表于 2006-11-15 15:28 | 显示全部楼层
请问我5楼写的那个结果是在pch文件中的,是得到的矩阵是什么呢
网上有问说这个就是去除约束减缩后的矩阵,应该就是我要的,可是看不懂怎么排列的
发表于 2006-11-15 16:40 | 显示全部楼层
你做的非常正确,结果也是对的。
去掉$后,f06文件中将打印 SOL 103的所有的DMAP程序,所以有30M。
PCH文件里有两个矩阵,一个KGGEXT是总体刚度矩阵,另一个MGGEXT是总体质量矩阵,并不是经过去处约束后的矩阵。
请仔细阅读我文件里的模型,它是两个节点间连一个值为1000的弹簧,一个节点只可以X方向运动,他有一个值为10的质量,另一节点固定。有两个节点,所以矩阵是12X12,NASTREAN中全零的列是不用表示的。请仔细阅读上面附件里对DIMG的介绍,理解他的表达,当然你也可以用其他的方式直接打印矩阵(MATPCH等命令)。
发表于 2007-2-22 10:23 | 显示全部楼层

回复 #13 FEM-Fan 的帖子

关于DMIG的附件在哪呢,找不着呀,麻烦再发一次吧,谢谢!
发表于 2009-4-2 21:47 | 显示全部楼层
如果我想要去除约束后的刚度矩阵和质量矩阵,应该输出哪个矩阵?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-10 16:43 , Processed in 0.063642 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表