[原创作品]基于UPFs的FORTRAN应用研究_第1页
[原创作品]基于UPFs的FORTRAN应用研究_第2页
[原创作品]基于UPFs的FORTRAN应用研究_第3页
[原创作品]基于UPFs的FORTRAN应用研究_第4页
[原创作品]基于UPFs的FORTRAN应用研究_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、原创作品基于UPFs的FORTRAN应用研究    本文是ABC论文坊原创作品,转载请注明出处 基于UPFs的FORTRAN应用研究摘要:FORTRAN语言在数值计算方面具有强大的功能,不仅可以生成一定格式的文件为大型计算程序所调用,还可以对大型数值计算软件的计算成果进行读取、处理,以弥补通用有限元分析软件相对落后的后处理功能(因为要满足不同的规范,所以一般要由使用者自己进行后期处理)。ANSYS程序的用户程序特性(UPFs)向用户提供丰富的开发子程序和函数,用户利用它们从开发程序源代码的级别上扩充ANSYS的功能。介绍过一般的开发、优化过程后,对以后学

2、习方向有了更清晰的认识通过编制相应模块,大大提高了计算精度和工作效率,这也是程序开发者工作的目的。代写代发论文|代写论文|代发论文关键词:FORTRAN,ANSYS,二次开发,UPFs,优化,模块Abstract: The FORTRAN language has powerful functions in the way of numerical calculation, not only could generate a file in certain format called by large-scale program, but also read and process the r

3、esults of the large-scale numerical software, in order to make up for the relatively backward post-processing function of the general finite element analysis software (because of the need to meet the needs of different norms, generally, users proceed with the post-processing by themselves). The ANSY

4、S program offering the UPFs to provide users with abundant subroutines and functions, users could, in the level of source code, expand the functions of ANSYS. After introducing the general process of development and optimization, I learn more clearly of the direction of learningthrough the programmi

5、ng of the corresponding module, greatly enhanced the accuracy and efficiency, which is the goal of the developers.Key words: FORTRAN, ANSYS, secondary development, UPFs, optimization, module代写代发论文|代写论文|代发论文· 上一页· 1· 2· 3· 4· 5· 下一页     

6、0;   FORTRAN语言因其结构层次清楚,数学计算和科学分析能力较强而获得工程师们的青睐。因此,很多有限元程序都是用FORTRAN编制而成,FORTRAN语言在数值计算方面具有强大的功能。在图形显示、人机交互等方面则显不足,常通过与VB、VC等进行混合语言编程1,或生成指定的类型文件导入到AUTOCAD以实现图形的及时准确显示23,也可以利用VB、Delphi等结合以实现良好的人机交互能力45,拥有更美观的可视化界面,这些都使FORTRAN的数值计算能力得到最大的发挥和完善。除了对FORTRAN的结果进行及时、交互显示外,很多学者更多的还是研究其计算功能,直接进行非线性

7、分析、矩阵位移法分析等复杂数值计算,自动微分方法的引入更是极大的提高了数值运算的准确性,极大的克服了有限差分方法的不足,极大减小了电脑模拟实验的误差。FORTRAN不仅可以生成一定格式的文件为大型计算程序所调用,如文6将原始数据进行相应处理以适合SATWE的数据输入要求,还可以对大型数值计算软件的计算成果进行读取、处理,以弥补通用有限元软件相对落后的后处理功能(因为要满足不同的规范,所以一般要由使用者自己进行后期处理),通过编制这些程序,大大提高了计算精度和工作效率, 这也是很多工程单位使用者在实践的目的。代写代发论文|代写论文|代发论文1、ANSYS二次开发功能的简介FORTRAN作为一门功

8、能强大的基础编程软件,要了解其使用必然要先了解经典的有限元分析软件ANSYS。下面就简要介绍一下ANSYS。标准ANSYS程序是一个功能强大、通用性好的有限元分析程序,同时它还具有良好的开放性,用户可以根据自身的需要在标准ANSYS版本上进行功能扩充和系统集成,生成具有行业分析特点和符合用户需要的用户版本的ANSYS程序,这也是它能够使用这么广泛的一个原因。结合以下三方面的特性,才使ANSYS拥有强大的分析功能: 参数化设计语言APDL是ANSYS优化设计的基础,只有创建了参数化的分析流程,才能对其中的设计参数执行优化改进,达到优化设计目标和节约成本的目的。这里特别强调一下APDL在设计中运用

9、较多的参数使用、流程控制和宏程序文件,具体参见文7。代写代发论文|代写论文|代发论文 通过用户界面设计语言(UIDL),用户可以在扩充ANSYS功能的同时建立起对应的图形驱动界面,争强特定人机交互能力,如在主菜单的某位置增加或减少特定菜单项,设计对应的对话框、拾取对话框,实现参数的输入和其它程序运行的控制,同时提供相应的联机帮助,使操作者能方便地获取系统帮助,也可以由Fortran来实现帮助系统的调用8。· 上一页· 1· 2· 3· 4· 5· 下一页      

10、   用户程序特性(UPFs)向用户提供丰富的FORTRAN77用户程序开发子程序和函数,用户利用它们从开发程序源代码的级别上扩充ANSYS的功能。使用这些子程序和函数,编写用户功能的源代码程序,在与ANSYS版本要求匹配的FORTRAN或C编译器上重新编译和连接,生成用户版本的ANSYS程序。另外,还提供了外部命令功能,允许用户创建ANSYS可以利用的共享库。用户可以开发下列方面的功能程序:开发用户子程序实现从ANSYS数据库中提取数据或将数据写入ANSYS数据库。该种子程序可以编译连接到ANSYS中,此时ANSYS提供了10个数据库操作命令;如果作为外部命令处理,可以在

11、ANSYS的任何模块中运行;利用ANSYS提供的子程序定义各种类型的载荷,其中包括BF或BFE载荷、压力载荷、对流载荷、热通量和电荷密度等;利用ANSYS提供的子程序定义各种材料特性,包括塑性、蠕变、膨胀、粘塑性、超弹、层单元失效准则等;利用ANSYS提供的子程序定义新单元和调整节点方向矩阵;利用ANSYS提供的子程序修改或控制ANSYS单元库中的单元;利用UEROP创建用户优化程序;ANSYS程序作为子程序在用户程序中调用。综合起来,UIDL主要控制GUI界面的各类二次开发方法,涉及的分析部分就要少一些,APDL一般是与分析部分频繁打交道的一组小型工具,功能强大,但不像UIDL一样能够非常具

12、体的针对某一两方面的二次开发处理,通常情况下的它融合在分析的很多地方。UPFs是三者之间的最强者,它能完成最复杂的二次开发工作,比如说构建新单元,复杂数据库交互,外围命令定制等,但UPFs在很多情况下也借助了APDL命令来完全实现其功能。同样也可以在UIDL中嵌入APDL命令,来构建比较复杂的GUI二次开发工作。所以,UIDL、APDL和UPF三者各有所长,密不可分。结合使用三者,就能够实现任何强大的分析功能。而ANSYS的六点开发方向正是我们努力的目标,用FORTRAN可以实现它。· 上一页· 1· 2· 3· 4· 5·

13、 下一页         2、基于UPFs的开发过程一个典型的UPFs包括下列步骤: (1)明确目标并在FORTRAN中编制用户程序。在ANSYS中所有的用户程序源代码都是公开的。大部分完成至少一个简单的功能, 因此在编制程序前应列出一份完整的可用程序表。(2)编译并将用户程序连接到ANSYS程序中。(3)要验证自己做的改动是否影响其他ANSYS标准功能的使用。(4)用用户认为可以满足要求的过程检验用户子程序。本步需由用户完成, 用户要对子程序负责9。了解以上整个过程有利于设计者尽快完成开发。基于UPFs的程序编制

14、用户子程序,可以采用两种计算机语言:Fortran语言和C语言。早期的ANSYS程序是采用Fortran77语言编写的,后来又加入了C语言程序。因此,编写子程序的计算机语言版本应当高于Fortran77,或者采用C语言。代写代发论文|代写论文|代发论文用户程序完成后形成程序代码文件(*.F或*.C),首先要转换成目标文件*。OBJ),这项工作是由编译器(Compiler)完成的。VisualFortran虽然有Windows下的使用接口,但真正的Compiler部分仍然是使用命令格式操作的,即在命令行窗口键入DF或FL32就可以具体执行Compiler了,因此,在下面的编译中我们采用直接调用C

15、ompiler的方法对程序源代码进行编译。Compiler在编译时有很多选项可以设置,如何使用这些设置也是一门学问。DF命令可以执行编译与链接两项工作。通过相应命令,对当前目录下的所有Fortran源程序进行编泽。而要把用户编写的程序真正融入到ANSYS程序之中,一个必不可少的步骤是实现用户程序与ANSYS程序的链接。要实现用户程序与ANSYS程序的链接,要用到一个非常重要的编译命令nmake及其描述文件makefile(这里主要针对W取DOWS系统下的二次开发,UNIX系统下类似)。对于一个包括几百个源文件的应用程序,使用nmake和makefile文件就可以简洁明快地理顺各个源文件之间纷繁

16、复杂的相互关系。而且如此多的源文件,如果每次都要手动编译的话,那对程序员来说简直就是一场灾难。而nmake命令则可自动完成编译工作,并且可以只对程序员在上次编译后修改过的部分进行编译。因此,有效的利用nmake命令和makefile文件可以大大提高项目开发的效率10。 3、软件设计中的优化代写代发论文|代写论文|代发论文在程序设计中必然遇到软件优化问题,ANSYS软件中的优化模块能实现目标优化和拓扑优化,其目标优化工具箱提供有五种优化工具和两种优化方法,各有其优缺点,设计中可以参照使用7。本文重点讨论了关于单元划分的优化问题。ANSYS中提供了近200多种单元类型,根据工程混凝土结构特点选用合

17、适的单元可以使模型更加接近工程实际,提高计算精度,减小解题规模ANSYS 7.0基础教程与实例详解。ANSYS中有专门用于钢筋混凝土结构的Solid-65单元及适合混凝土材料的William-Warnke 5参数准则,可以考虑反映混凝土压碎和开裂。混凝土材料模型的基本参数有开裂截面和裂缝闭合截面的剪切传递参数,单轴和多轴抗拉、抗压强度等,利用Solid-65单元及Concrete材料模型可以在一定范围内较好地进行钢筋混凝土结构非线性分析。事实上Solid-65单元既是通过优化后选取的整体式有限元分析模型,即是将钢筋弥散于整个单元中,将加筋混凝土视为连续均匀材料,求出的是一个统一的刚度矩阵。这是对于但个单元的优化。另外,用宏单元代替两个或多个常用的相关单元,可以减少节点数目及总体自由度,提高计算效率,对较大规模的问题,此优势尤为显著。在满足计算精度的前提下,实现经济与效率的平衡11。对单元

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论