ik760218 发表于 2005-9-5 23:28

[转帖]MathCAD专题:Mathcad与土木结构 Mathcad VC 接口

来自钢结构
自己想了解一下Mathcad与土木结构分析计算及相关应用,于是查资料、学习,稍作整理后,贴出来和大家共享。

MathCAD专题:1.科学计算软件Mathcad与VisualC++接口的实现

    由于Mathcad是一种极为有效的大众化的数学工具,其程序是解释执行的,因此,对于那些探求数值计算精度及计算方法的科学工作者来说,它的功能是很不够的。但Mathcad向用户提供了与C/C++语言的接口,于是可以利用C/C++高效快速处理复杂数值计算的能力实现Mathcad功能的扩充。

用vc编写与Mathcad接口的DLL
    编写32位的windows 95和windows NT动态连接库比编写16位的windows 3.x动态连接库更方便一些,编译器提供了更直接的支持,创建DLL时可以省去几个步骤。
主要的不同有:
(1) 没有独立启动模块. 连接进C/C++运行时间库代码直接处理DLL的启动过程。

(2) 运行时间库代码调用适当的构造函数来初始化所有静态的非局部C++对象。

(3) 初始化和终止等任务由用户定义函数DLLMain来完成,该函数是可选的,如果不提供函数的源代码,编译器符连接它自己的DLLMain代码,此时该函数不完成任何任务,只返回TRUE。VC是微软公司的C/C++W32应用程序开发工具,用它可以快速方便地开发出与Mathcad接门的32位动态连接库。

使用vC编写与Mathcad接口的32位动态连接库的步骤包括:
(1) 建立一个类型为动态连接库(DLL)的工程。

(2) 将源程序文件加入工程,源程序中必须包含头文件MACADINCL.H,它提供了用户函数接入Mathcad集成环境的标准界面。

(3) 将目录MICROSFT\LIB中的文件MCADUSER.LIB加入工程;

(4) project settings/c++ options对话框选择Preprocessors类加入文MCADINCL.H所在的目录。

(5) 在project 菜单中选择build编译DLL。

编译结束后将DLL移入Mathcad安装目录下的USERFL目录。每次启动Mathcad,存在于USERFL目录的用户DLL都被装入。一旦启动Mathcad,可以选择Math菜单中的Choose Function菜单条打开ChooseFunction对话框,检查用户定义函数是否在列表中。如果不在,不是用户DLL没有故人USERFL目录中就是装入用户函数时出了问题.

参见:刘石丹,科学计算软件Mathcad与VisualC++接口的实现 ,计算机工程与应用.1999,35(9).-69-70
四川联合大学物理系
【关键词】 Mathcad ,科学计算软件, VC++语言 ,接口
【文 摘】 文章提出了使用VisualC++(简称VC)编写与MathCAD接口的32位动态连接库(DLL)的方法,该方法扩充了
MathCAD处理需讲究精度、速度和算法稳定性的复杂值计算的能力。该方法是VC处理复杂数值计算的能力和MathCAD集成环境的有机融合。

[ 本帖最后由 suffer 于 2007-6-29 01:50 编辑 ]

ik760218 发表于 2005-9-5 23:29

回复:(ik760218)[转帖]MathCAD专题:Mathcad与土木...

MathCAD专题:2.Mathcad在新规范结构设计中应用示例

       Mathcad是最直观、最易为广大工程技术人员掌握的交互式数学软件。通过新混凝土规范和抗震规范中的抗冲切验算和地震影响系数曲线的绘制,举例说明了Mathcad的自动计算、编程和绘图等功能在结构设计中的应用。可供从事工程计算时参考。

   掌握Mathcad软件对学习和掌握新规范公式、提高工作效率、避免出错都有帮助。

   Mathcad的突出优点:
(1)可视性强
      Mathcad中可同时输入汉字、字符、各种特殊符号和数学公式,与手写习惯保持高度的一致性,对设计中的各种参数和公式表述一目了然。
   
(2)自动运算功能
该软件的工作单(文件)分为文本区和公式区,在文本区可输入对设计的各种文字说明,在公式区可对变量赋值,赋值符号为“:=”,写出参数的计算公式,然后输入“某参数=”,即可得到其数值,而且可以将单位引入运算,使得计算结果有明确的物理意义。“自动运算”的另一层意思是当修改工作单中的任一变量时,其后的与此变量相关的计算结果将实时更新(注:当采用系统默认设定Recalculate automatically时)。

(3)绘图功能
   Mathcad能方便地利用数组和矩阵绘制二维和三维图形。

(4)易学易用
很多结构设计者宁可手工计算,而不愿用计算机编程的原因通常是计算机编程比较复杂,门槛过高,初学者容易出错,调试程序时间比较长。Mathcad却不存在这些问题,它可以说是一种“自然思维”软件,了解各个菜单的功能即可按平时的书写和思维习惯编程,而且不易出错。

(5)程序编辑器
   Mathcad 7.0 Professional以后的版本带有程序编辑器。对于比较短小,逻辑关系不是特别复杂,计算速度要求不高的程序,采用它是合适的。程序编辑器的优点是语法简单,程序框架直观。

(6)符号运算
    加入软件包自带的Maple插件后能直接支持符号运算。

应用1:平板式筏基抗冲切验算................(请参见原文)
应用2:地震影响系数曲线...............

五、结语
1.Mathcad工作单直观,符合结构计算书的书写习惯,结构设计人员可以通过它按照规范建立各种可重复使用的电子计算书,对于任一具体问题只需要简单地修改几个参数即可,大大提高了工作效率。

2.熟悉新规范的一个好方法就是将公式及步骤在纸上摘抄一遍,如果把在纸上抄写改为输入到Mathcad工作单上,那么等到规范熟悉的时候相应的电子计算书也就基本上完成了。

3.可充分利用Mathcad的绘图和动画功能,通过对图形结果的分析,使我们对问题的理解更加形象。

4.Mathcad电子计算书较理正工具箱等结构软件的计算书的优点在于:数学公式书写符合手写习惯;计算步骤一目了然,且非黑箱输入输出,可重复使用。

另外,Mathcad的用户可通过Mathsoft公司的网站“http://www.mathcad.com]在“Civil and Mechanical Engineering”子目录中有很多关于结构工程的应用,值得参考学习。

【作 者】 杨军
【机 构】 清华大学土木系,北京100084
【刊 名】 建筑结构.2003,33(10).-69-70
【关键词】 结构设计, Mathcad ,数学软件 ,冲切验算, 地震影响系数

[ 本帖最后由 suffer 于 2007-6-29 01:50 编辑 ]

ik760218 发表于 2005-9-5 23:31

回复:(ik760218)[转帖]MathCAD专题:Mathcad与土木...

MathCAD专题:3.在桥梁设计中应用MATHCAD
      
       计算纸式的语言MATHCAD使程序的形式同规范与计算书中的形式一样,可以采用同样的符合与格式,并且可以随时修改各参数以考察其相应的变化,讲述了在桥梁设计中应用MATHCAD的可能性及应用实例。

MATHCAD在设计中应用
       设计中不仅需要讲清结果,也需要讲清过程。应用MATHCAD程序可以象设计者一样的工作,如查规范、公式计算、结果检查等,就如同在计算纸上的设计计算工作一样。在设计中存在大量检查与试算工作,这些是无法用普通的程序代替的。而且这种工作又带有很大的重复性,MATHCAD的计算纸式的编程正好可以适应这一要求。目前的工程活动中广泛使用各种不同类型的程序,然而要对设计结果负责的仍旧是设计者而非编程者。对于通常的编译后的程序、使用者想检查其过程是不可能的,只能采用不同程序的结果作比较,或用某个具体算例来检查其正确性。与此不同,MATHCAD式演算纸语言可以显示整个程序过程,其表现与纸上文本几乎一致,使用者可以随时修改。

       当然,许多工作是MATHCAD程序所不可代替的,有限元计算只能由传统程序进行。但是MATHCAD程序可以读入有限元程序的结果然后做组合及相应的设计计算。另外,大量计算,如荷载的横向分布计算,一般并非有限元程序完成而是设计者按公式计算的。

每个设计者的第一项工作,就是要先熟悉与本设计相应的规范。熟悉规范的一个好方法,就是将公式及步骤在纸上摘抄一遍,如果把在纸上抄写改为在MATHCAD上抄写,那么等到规范熟悉了,相应的程序也就基本上完成了。做好的设计计算程序不仅有经验的设计者可以使用,也可以使新手很快地象悉设计计算过程。

         另外,在设计中要对大量不同的输入数据作反复计算并比较,以期找到最优值。对于计算纸式的工作方式,这是大量繁杂的工作,使用其他程序时也要反复准备大量不同的数据,而且容易在数据的输入格式中发生错误。而MATHCAD的计算纸式程序格式不仅使其理解使用十分方便,修改输入数据原则上也和在纸上操作一样不会发生错误,并且可以随时观察不同输入数据下的结果,做动态校验与比较.

      当然,并不是所有设计计算工作都可以由MATHCAD程序进行,有限元法计算结构内力与荷载下变形的工作,由于其巨大的计算量和相对复杂的流程,是不适合用MATHCAD来做的.然而大量的具体设计计算,预应力混凝土梁、板的设计,桥梁的荷载分配系数计算,材料强度验算等工作,都可以用MATHCAD来完成。

【作 者】 李立 李森
【机 构】 北京大学,北京100871
【刊 名】 华东公路.2001(1).-45-46
【关键词】 桥梁设计 MATHCAD 软件包 应用 可能性


[ 本帖最后由 suffer 于 2007-6-29 01:50 编辑 ]

ik760218 发表于 2005-9-5 23:32

回复:(ik760218)[转帖]MathCAD专题:Mathcad与土木...

MathCAD专题:4.基于MathCAD的深基坑多点支护结构的设计计算 【文 摘】
   分析了深基坑支护结构的设计计算的方法,选择了在计算中考虑施工工况、计算结果与实际结果比较相符、在工程设计计算中广泛采用的分段等值梁法,结合MathCAD数学系统的优点,避免了在设计计算中需解高次方程,手工计算花很长时间的缺点,并通过工程实例验证了所采用的方法,为深基坑支护结构的设计与施工提供快速合理的计算方法。

【作 者】 孙文怀 张一 等
【机 构】 华北水利水电学院岩工系,河南郑州450045
【刊 名】 华北水利水电学院学报.2002,23(4).-43-45
【关键词】 深基坑 多点支护结构 MathCAD 设计 计算

[ 本帖最后由 suffer 于 2007-6-29 01:50 编辑 ]
页: [1]
查看完整版本: [转帖]MathCAD专题:Mathcad与土木结构 Mathcad VC 接口