ANSYS-MFC生成APDL
1. 简介
对于ANSYS-MFC二次开发,两者之间的关系非常明确,从界面中读取参数并转换成APDL语言,然后调用批处理操作。
对于简单的程序设计,我们可以直接从界面中获取到参数,然后生成APDL;
而对于复杂的界面,可以将其参数保存到数据文件中,最简单的可以使用Access数据库或者xml格式的数据文件。对于Access数据库,需要在程序使用的时候对其进行定义,不利于后续程序的拓展;而xml格式的数据文件也可以向数据库文件一样使用,并且其操作速度更快,且利于功能的拓展和管理。关于xml的使用,请见链接
2. APDL生成
对于经常使用APDL的人来说,可以直接进行APDL程序的编程,而对于初学者来说,此种方法门槛太高,不利于快速入门,因为我们采用比较笨但是非常使用的方法。
首先需要用户对APDL有一点简单的理解;在进行操作ANSYS过程中,所有的操作都会被记录下来,可以点击【Main Menu】--【Session Editor】,在弹出的界面中我们可以看到操作后生成的APDL,从而在其中查找出所需要的语句。
在操作过程中,可以使用定义变量或者数据的方法来进行操作,这样生成的APDL需要修改变量即可;而如果直接到相应的位置去修改APDL,则需要花费大量的时间来查找其语句的具体位置。
例如,坐标的位置定义为变量P1,P2,P3,生成的APDL语句具体如下:
FINISH
/CLEAR
/PREP7
!定义力为变量
*SET,P1,0
*SET,P2,1
*SET,P3,2
!建立点
K,1,0,P1,0,
K,2,0,P2,0,
K,3,0,P3,0,
!连接成直线
LSTR, 1, 2
LSTR, 2, 3
设计界面
生成APDL程序
void APDLCreate::OnBnClickedButton2()
{
UpdateData(TRUE);//更新控件的值
CString WorkPath = _T("file.dat");//定义工作路径
CStdioFile Writefile;
if (!Writefile.Open(WorkPath,CFile::modeWrite|CFile::modeCreate))
{
return;
}
//清楚上个工程的数据
Writefile.WriteString(_T("FINISH \n"));
Writefile.WriteString(_T("/CLEAR \n"));
Writefile.WriteString(_T("/PREP7 \n\n"));
//定义变量
Writefile.WriteString(_T("*SET,P1,") + P1 +_T("\n"));
Writefile.WriteString(_T("*SET,P2,") + P2 +_T("\n"));
Writefile.WriteString(_T("*SET,P3,") + P3 +_T("\n\n"));
//生成点
Writefile.WriteString(_T("K,1,0,P1,0,\n"));
Writefile.WriteString(_T("K,2,0,P2,0,\n"));
Writefile.WriteString(_T("K,3,0,P3,0,\n\n"));
//将点连接成线
Writefile.WriteString(_T("LSTR,1,2 \n"));
Writefile.WriteString(_T("LSTR,2,3\n"));
Writefile.Close();
AfxMessageBox(_T("APDL生成成功"));
}
生成的直线如下图所示
3. 调用ANSYS批处理
建议将APDL生成和调用APDL分开处理,这样可以在计算前检查APDL然后再进行计算。
批处理的生成请参考链接。
ANSYS-MFC生成APDL的更多相关文章
- 【转载】基于ANSYS APDL的有裂纹平板问题的断裂力学仿真(PLANE183)
原文地址:http://blog.sina.com.cn/s/blog_9e19c10b0102vnw7.html 对于一般的强度问题,我们总是用应力来度量其强度的.但是对于有裂纹的,高强度的构件,使 ...
- MFC之目录结构及消息流转(一)
跟上时代,用vs2010, 新建一个MFC应用程序Helloworld. 目录结构: 所有文件分为6个部分:解决方案相关文件.工程相关文件.应用程序头文件和源文件.资源文件.预编译头文件和编译链接生成 ...
- MFC应用程序框架(转)
对于程序员来说,如果要提高编程效率,一个好用的,功能强大的并且可以得心应手使用的编程工具往往会给我们程序员带来莫大的方便.其实对于现在的编程工具来说,使用哪一种工具都不是问题的关键,重要的是你能够使用 ...
- VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)
VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)-软件开发-鸡啄米 http://www.jizhuomi.com/software/143.html 鸡啄米在上一讲中 ...
- C++(MFC)编程一些注意事项
一·书写问题 1.括号:左右大括号最好都放在左侧,这样可以很清楚大括号的看清配对情况以及作用域,便于检查也不易出错. 2.强制转换:强制转换表达式时一定要加括号,否则可能只转换了表达式中的单个量,可能 ...
- MFC DLL 资源模块句柄切换[转]
以前写MFC的DLL的时候,总会在自动生成的代码框架里看到提示,需要在每一个输出的函数开始添加上 AFX_MANAGE_STATE(AfxGetStaticModuleState()).一直不明白这样 ...
- MFC工程目录
如果已经以Debug方式编译链接过程序,则会在解决方案文件夹下和工程子文件夹下各有一个名为“Debug”的文件夹,而如果是Release方式编译则会有名为“Release”的文件夹.这两种编译方式将产 ...
- MFC中全局变量的定义及使用
用MFC制作的工程由很多文件构成,它不能象一般C++程序那样随意在类外定义全局变量,在这里要想定义能被工程内多个文件共享的全局变量和函数必须用一些特殊方法才行.实际上有多种方法可以实现,这里只介绍两种 ...
- MFC基本框架
MFC基本框架 By 小戴 发表于 2006-12-21 15:59:00 MFC 应用程序框架 1. MFC 简介: MFC ( Microsoft Foundation Class )是由 ...
随机推荐
- Python 之路
Python之路[第一篇]:Python简介和入门 Python之路[第二篇]:Python基础(一) Python之路[第三篇]:Python基础(二) Python之路[第四篇]:模块 Pytho ...
- 大小端(MSB & LSB)
谈到字节序的问题,必然牵涉到两大CPU派系.那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU.PowerPC系列采用big endian方式存储数据,而x86系列则采用l ...
- SniperOJ-as fast as you can-Writeup
SniperOJ-as fast as you can-Writeup 题目描述: 打开所给的题目地址 很容易可以看出这是一个简单的爬虫问题,爬去网页的信息并post,但在界面及网页源码中均没发现有价 ...
- Python学习之面向对象进阶
面向对象进阶当然是要谈谈面向对象的三大特性:封装.继承.多态 @property装饰器 python虽然不建议把属性和方法都设为私有的,但是完全暴露给外界也不好,这样,我们给属性赋值的有效性九无法保证 ...
- 一个简单的python爬虫,爬取知乎
一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...
- WEB - 关于rel="noopener"
参考网址 https://mathiasbynens.github.io/rel-noopener/ 例子 <a href="https://cli.vuejs.org" t ...
- WordPress 安装教程
1.要安装WordPress,先看他的环境要求 2.环境符合后,直接去官网下载 WordPress(点击去官网) 下载最新的安装包 3.下载解压后,直接在浏览器中访问 会自动跳转到安装界面 http: ...
- drat笔记
安装dart https://www.dartcn.com/install http://www.cndartlang.com/920.html 所有执行的方法都在main里面. main() {} ...
- PTA喊山
喊山 喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂—喂喂喂……”的呼唤.呼唤声通过空气的传递,回荡于深谷之间,传送到人们耳中,发出约定俗成的“讯号”,达到声讯传递交流的目的.原来它是彝族 ...
- iOS 开发之提取图片的主色调用于更换应用主题颜色
从刷爆 IT 圈的一个事件说起: 新闻:某互联网公司产品经理提出一个需求--要求APP开发人员做到软件根据用户的手机壳改变软件的主题颜色. What Fuck!还有这操作,PM,你过来,保证不打屎你. ...