知识的存储
建模的智慧存在于书本与人的思维中,无法被电脑直接理解。一款好的建模软件可以建立起了两者之间的联系,这也是Modelica开发的最宏大的初衷。
以方程的形式
方程的历史可以追溯到公元前2000多年,而有关方程表达时的符号体系由Robert Rocorde在1557年给出。牛顿第二定律,曾以文字形式“The change of motion is proportional to the motive force impressed."表达(1686)。而这一定律的真正方程表达式出现在1967年,由CSSL给出:
variable = expression
v = INTEG(F)/m
这赋予了方程一层新的涵义,也是目前方程被广为使用的一种功能,即其左右等价的逻辑概念在体系构建(或建立模型)中的作用。
然而,通常情况下,这些方程都是不被计算机所理解,即不可以直接被编程语言编写的。在人脑思维模式的自然需求与计算机语言的局限性的矛盾下,一款沟通起二者的软件呼之欲出。
Modelica简史
第一次正式组会召开于1996年的秋天
参加这次会议的主要是计算机语言专家和物理学者。学术领域和工业领域都很关注这一事件。
历史上的各个版本
1.0发布于1997年11月
2.0发布于2002年3月
2.2发布于2005年3月
Modelica的主要特点
作为一款建模与仿真软件,Modelica的主要特点有:
陈述式语言(Declarative Language)
代码是面向对象的,基于各类方程的,故描述性较强,这有利于增加复杂程序的可读性,也更适应于大量的调试工作。
多领域适用(Multi-domain modeling)
涵盖了电子、机械、热动力学、水力学、生物学、控制、事件分析、实时仿真等一系列领域。
面向对象编程(Everything is a class)
这让Modelica更像是一款Java与Matlab完美结合的软件。
可视化编程(visual component programming)
将语言、程序等以可视化的模块给出,在庞大系统或理论的搭建上更加友好,且具有良好的复用性。
高效的高级语言
相比C语言,Modelica是十分有效率的,它有着和Matlab相似的基于矩阵和向量的算法。