[发明专利]一种基于有限元语言的编码方法、编译器及求解方法在审
申请号: | 201710648454.3 | 申请日: | 2017-08-01 |
公开(公告)号: | CN107423516A | 公开(公告)日: | 2017-12-01 |
发明(设计)人: | 梁国平;周永发;李庆定 | 申请(专利权)人: | 元计算(天津)科技发展有限公司 |
主分类号: | G06F17/50 | 分类号: | G06F17/50;G06F9/45 |
代理公司: | 北京轻创知识产权代理有限公司11212 | 代理人: | 杨立,王灏增 |
地址: | 300467 天津市*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 有限元 语言 编码 方法 编译器 求解 | ||
技术领域
本发明属于数理方程编码领域,尤其涉及一种基于有限元语言的编码方法、编译器及求解方法。
背景技术
在计算机辅助工程(Computer Aided Engineering,简称为CAE)行业中,采用数值计算程序实现产品从设计、运行、破坏全生命周期内的仿真模拟,各行各业中面对不同的产品和项目类型,数值计算程序千差万别,工程界对该类型数值计算程序的需求种类繁多;当前这些数值计算程序都采用传统的人工组建团队的模式来一个个开发,采用计算机高级编程语言或面向对象的高级编程语言(如C、C++、Fortran语言等)去一行行代码实现,开发需要投入几十人年,并且要组织有序团队分工协作完成;传统人工编写程序存在编写程序工作量大,周期长、成本高,无法快速满足科研与工程界多样化的需求的缺点。
发明内容
本发明所要解决的技术问题是:现有的人工编写程序存在编写程序工作量大,周期长、成本高,无法快速满足科研与工程界多样化的需求等的缺点。
为解决上面的技术问题,本发明提供了一种基于有限元语言的编码方法,该编码方法包括:
S1,读取微分方程弱解形式的有限元语言文件以及与所述微分方程对应的微分方程算法格式的有限元语言文件;
S2,将所述微分方程弱解形式的有限元语言文件和所述微分方程算法格式的有限元语言文件按照不同的预定义编码规则编译成源程序代码;
S3,在预存储元件库中调用元件化源代码程序,并将所述元件化源代码程序和所述源程序代码集成完整的目标源程序代码;
S4,将所述目标源程序代码换成需求的语言代码,得到求解所述微分方程的程序代码。
本发明的有益效果:通过本发明的方法,可以速快地编译程序,并且编写的时间短,编写的准确率高,同时也大大降低了编译的成本,能够满足各种不同工程的需求。
进一步地,所述S2中包括:
将所述微分方程弱解形式的有限元语言文件按照第一预定义编码规则编译成用于计算单元特性的第一源代码程序;
以及将所述微分方程算法格式的有限元语言文件按照第二预定义编码规则编译成组集代数方程组的左端矩阵和右端向量的第二源程序代码。
进一步地,将所述微分方程弱解形式的有限元语言文件按照第一预定义编码规则编译成用于计算单元特性的第一源代码程序包括:
当所述微分方程弱解形式的有限元语言文件中包含有单元插值形函数的有限元语言文件时,调用预存储形函数库中相应的函数表达式对所述单元插值形函数的有限元语言文件进行编译,生成相应的第一源程序代码;
当所述微分方程弱解形式的有限元语言文件中包含有积分项的有限元语言文件时,调用预存储积分点数据库中相应的积分点坐标和权重值,并采用等参单元进行变换的方式对所述积分项的有限元语言文件进行编译,生成相应的第一源程序代码。
上述进一步地有益效果:使用规定的语言编译规则,这样可以使得编译的速度加快,也提高编译的准确率,同时也可以满足不同的方程编译需求。
进一步地,所述单元特性包括:单元刚度矩阵、单元质量矩阵、单元阻尼矩阵和单元载荷向量。
进一步地,所述有限元语言文件包括:pde文件、fbc文件、gcn文件、mdi文件、sch文件。
本发明还涉及一种有限元语言编译器,该编译器包括:获取模块、编译模块、生成模块、转换模块;
所述获取模块,用于读取微分方程弱解形式的有限元语言文件以及与所述微分方程对应的微分方程算法格式的有限元语言文件;
所述编译模块,用于将所述微分方程弱解形式的有限元语言文件和所述微分方程算法格式的有限元语言文件按照不同的预定义编码规则编译成源程序代码;
所述生成模块,用于在预存储元件库中调用元件化源代码程序,并将所述元件化源代码程序和所述源程序代码集成完整的目标源程序代码;
所述转换模块,用于将所述目标源程序代码换成需求的语言代码,得到到求解所述微分方程的程序代码。
本发明的有益效果:通过本发明的编译器,可以速快地编译程序,并且编写的时间短,编写的准确率高,同时也大大降低了编译的成本,能够满足各种不同工程的需求。
进一步地,所述编译模块,具体用于将所述微分方程弱解形式的有限元语言文件按照第一预定义编码规则编译成用于计算每个单元特性的第一源代码程序;
以及将所述微分方程算法格式的有限元语言文件按照第二预定义编码规则编译成组集代数方程组的左端矩阵和右端向量的第二源程序代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于元计算(天津)科技发展有限公司,未经元计算(天津)科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710648454.3/2.html,转载请声明来源钻瓜专利网。