growland 发表于 2010-12-29 10:01:51

请教拓扑优化的计算时间的问题

本帖最后由 growland 于 2010-12-29 10:03 编辑

最近做了一个拓扑优化的算例,几何为一个长方体(X向100mm,Y向60mm,Z向20mm),用六面体划分网格,大小为1mm。并将网格分为两部分COMP:一部分为长方体Z向上表面的一层六面体网格,这部分不做拓扑优化;另一部分为剩余的网格,作为需要进行拓扑优化的空间。施加的载荷有重力载荷和均布载荷,均布载荷位置在长方体Z向上表面,载荷方向和重力方向均为-z向;在长方体Z向下表面的四角设置四个约束点,其中一个点设置XYZ向位移约束,剩余三个点设置为Z向位移约束。
优化设置中,设置长方体Z向上表面的一层节点(6000个,处于非拓扑优化区)的Z向位移为位移响应,优化目标为拓扑优化区体积最小。
之前用ROISS模块做了一次分析,时间大约有20分钟。但在进行拓扑优化时,运行了24小时却只进行到了第3次循环,不知是什么原因引起的,困惑中。。。。希望各位高手给予指导。下面为该拓扑算例的OUT文件(目前没有停,仍在继续算)

zkong 发表于 2010-12-29 12:39:22

1. 优化的时候需要很多额外的计算,特别是灵敏度的计算非常消耗时间。 所以一个优化迭代步比一次纯分析的时间长是正常的。
2. 你的模型看起来并不复杂,可以考虑用更少的单元,并且用四面体代替六面体。 这样时间应该能节省很多。
3. 你可以根据荷载和结构形式,选择位移最大的一些点定义位移响应(通常几个节点就够了),这样能大大减少约束的数量,提高计算速度。

growland 发表于 2010-12-29 16:01:02

非常感谢版主。不过我不知道该选择哪些点的响应,似乎选择了哪个点就会造成该点底部的拓扑体积的增加。回头我先试试看,再次感谢~

growland 发表于 2010-12-30 08:53:52

昨天晚上试了一下,感觉运行还挺好,呵呵。不过到第31个循环报错了。大致如下:IITERATION31

*** ERROR #157 ***
Error opening the scratch file "./1229.308_scr.w41"
    Fortran error code =          9
    This may be caused by not having the access right to open the file,
    not enough memory left for the system routines, or some other
    system setup related reasons.
This error was detected in subroutine opdirscr.

*** ERROR #151 ***
Error accessing the scratch files :
    error encountered in subroutine "xdslvm"
Solver error no. =       -410
             index =          1
    This may be caused by insufficient disk space or some other
    system resource related limitations.
    (e.g. The Operating System or NFS cannot handle file size > 2 GB.)
This error was detected in subroutine inptvm4.

This error occurs in module "slvdrv".

************************************************************************

RESOURCE USAGE INFORMATION
--------------------------

MAXIMUM MEMORY USED                                       151 MB
MAXIMUM DISK SPACE USED                                  2116 MB

************************************************************************


************************************************************************

COMPUTE TIME INFORMATION
------------------------

EXECUTION STARTED                         Wed Dec 29 17:57:57 2010   
EXECUTION COMPLETED                     Wed Dec 29 22:24:13 2010   
ELAPSED TIME                                       04:26:15
CPU TIME                                             01:06:36

************************************************************************



*** PROGRAM STOPPED: FATAL ERROR(s) ENCOUNTERED.

                        ***** END OF REPORT *****

For Useful OptiStruct Tips and Tricks, go to the URL:
http://www.altairhyperworks.com/tips.aspx

************************************************************************
RADIOSS/OptiStruct error termination report:
RAM:             151 MB total,      1 MB used.
Data arrays:   370 total,       185 allocated.
DATA SET size   63 MB, ram_disk      2 MB

DATASET USAGE: ndirs: 1, nfiles 1, nsets: 11, nblocks: 11, mode: 8
DIR: 0, size 62.4, path "C:/Documents and Settings/Administrator/Desktop/lianxi/1220/1229/new/" num_files 1
---
PROGRAM STOPPED DUE TO ERROR.

************************************************************************

A fatal error has occurred during computations:

*** ERROR #157 ***
Error opening the scratch file "./1229.308_scr.w41"
   Fortran error code =          9
   This may be caused by not having the access right to open the file,
   not enough memory left for the system routines, or some other
   system setup related reasons.
This error was detected in subroutine opdirscr.
   RAM:             151 MB total,      1 MB used.
   Data arrays:   370 total,       185 allocated.
...

************************************************************************








还望给予指导,多谢了。下面是完整的OUT文件:

growland 发表于 2010-12-30 09:09:17

对了,还有几个问题想问。
1、在进行拓扑优化时,我发现CPU的利用率总是有起伏,不能一直满负荷运算,不知这是否正常?
2、我装的是32位的HW10.0,同时运行两种拓扑优化是否有冲突?上个出错的例子的运行环境就是有两个并行的拓扑优化,大约在昨晚6点20左右。一开始运行时都很正常,今天上午一来就发现上面的算例出错(出错时间大约在昨晚22点);另一个算例则到目前还在运行(是个简单的2D拓扑优化),但最近的输出数据时间是在昨晚6点半,即运行没一会儿就不动了(但有多个完整运行的循环步)。
3、我用的机器是工作站,2个双4核CPU,不知在优化时能否调用多个CPU参与计算?目前计算只能用一个CPU,感觉资源挺浪费的
不知各位对这种情况是否有经验?

growland 发表于 2010-12-30 09:31:53

呵呵,第三个问题找到了
http://forum.simwe.com/viewthread.php?tid=921225&page=1#pid1934358
还望大家帮忙解答其它的疑问,特别是算例出错的原因,先谢谢了

growland 发表于 2010-12-30 15:55:09

下午发现第2个问题不是因为两个例子同时运行才导致的,也就是说可以同时运行两个拓扑优化的算例。不过下午做的几个算例老是碰到这个现象,做了几个循环就不动了,也没有错误提示,不明白是什么原因。。。。还望高手指导一下
页: [1]
查看完整版本: 请教拓扑优化的计算时间的问题