特色技术

专业从事预应力结构体系的设计、施工一体化解决方案

资讯分类

Csi Safe有限元软件的前处理开发(1)----板带的划分

  • 分类:程序技术
  • 作者:
  • 来源:
  • 发布时间:2015-10-20 20:56
  • 访问量:

【概要描述】Csi Safe软件可以方便地对各种板类构件进行结构设计和计算,为美国Csi公司的主要产品, 号称是混凝土预制板和基础系统的终极设计工具。该软件利用有限元技术,使用板壳单元进行内力计算,然后通过板带对板类构件进行设计。

Csi Safe有限元软件的前处理开发(1)----板带的划分

【概要描述】Csi Safe软件可以方便地对各种板类构件进行结构设计和计算,为美国Csi公司的主要产品, 号称是混凝土预制板和基础系统的终极设计工具。该软件利用有限元技术,使用板壳单元进行内力计算,然后通过板带对板类构件进行设计。

  • 分类:程序技术
  • 作者:
  • 来源:
  • 发布时间:2015-10-20 20:56
  • 访问量:
详情

Csi Safe软件可以方便地对各种板类构件进行结构设计和计算,为美国Csi公司的主要产品, 号称是混凝土预制板和基础系统的终极设计工具。该软件利用有限元技术,使用板壳单元进行内力计算,然后通过板带对板类构件进行设计。不过在地下车库设计中,因为结构平面较大且大多不规则,对每条板带进行x、y向划分、命名不仅工作量非常巨大(一般四万平米的地下室会有2000多条板带),而且不太友好的操作界面也会导致一些几何误差,而该几何误差在某些受力较敏感的部位则会产生一些较大的内力误差,从而影响设计结果。因此,对该软件进行前处理开发势在必行。

我公司运用MicroSoft的visual C++6.0作为开发工具,充分采取面向对象的程序设计技术,将板带作为类来处理,这样的好处在于,逻辑结构较为清晰。并且后续开发时可以直接将类拷贝使用,而不需要再重新开发,便于软件形成“套装”效果。

首先设计一个CPri类,用于一些常规的字符串、读写文件的处理。然后设计一个CStrip类表示每条板带,主要属性为名称、左板带宽度、右板带宽度等。然后设计一个CStripRec类,用来在各个区域内形成各种板带并进行命名,针对目前我公司在地下车库中开发的两种体系:无梁楼盖与扁梁板结构,对板带的命名与划分分别进行了量化处理,合并在CStrip类的一个函数中。最后设计一个CStrips集合类,用于统一管理板带的命名和划分。

safe软件中对point(点)的处理较为敏感,后置的点会将同一位置的点“消除",引起一些冗余,从而会导致一些意外错误,因此在CStrips中特别设计了一个MergePoint()函数,用于合并重复点。函数如下:

 

bool CStrips::MergePoint()
{
bool b1=false;
vector<CKLPoint> ::iterator it;
for (it=v_Point.begin();it!=v_Point.end();++it)
{
vector<CKLPoint>::iterator it2=v_Point.begin();
while (it2!=v_Point.end())
{
if (it2!=it)
{
if (it2->MergePoint(*it))
{
cout<<"有重复点"<<it->PointNum<<endl;
it2=v_Point.erase(it);
it=v_Point.begin();
b1=true;
break;
}
}
++it2;
}
}
return b1;
}

其中vector为stl标准程序库中的向量类。

 

最后在console平台下,手工输入文件以及扁梁宽度等参数,就可以顺利地进行各种板带划分。一般情况下,四五万平米的地下车库板带划分以前需要三天才能完成,现在仅需要10分钟左右时间就可以完成该工作,不仅提高了效率,准确性也能有效地保证。

 

(未完待续)

扫二维码用手机看

搜索