- 积分
- 36117
- 明经币
- 个
- 注册时间
- 2006-12-16
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
[飞马系列] Lisp利用MatLab 学习1-Delaunay三角网 感谢高山流水
在此贴-- http://bbs.mjtd.com/forum.php?mod=viewthread&tid=62106&page=6#pid393539
中,高山流水兄 非常让人激动地引入了怎么用Lisp调用Matlab绘制图形的好函数。
我是近日才看到这个帖子的,非常受启发。
于是最近利用了高山流水兄的函数,做了一些探讨了研究,包括矩阵求逆等问题,有时间将慢慢添加。
Delaunay三角形是计算几何中一个重要的问题
以前我曾经用Lisp写过一个三角网程序,是翻译C语言的,
http://www.mjtd.com/Codes/ArticleShow.asp?ArticleID=1143
写的冗长无比,之后一直寻求更好的方法,也用C#编过,速度还可以。
Highflybird版主曾经用arx编过一个奇快无比的三角网,大概10000个点<1秒。C++的效率那是神速。
http://bbs.mjtd.com/forum.php?mod=redirect&goto=findpost&ptid=82644&pid=434713&fromuid=250774
因为Matlab是一个国际顶级的数学软件,也具备编程功能,在.Net方面可以和C#方便地连接,但在Lisp方面,目前为止
高山流水兄的函数是最具备现实意义的。
于是,在学习高山流水兄代码的基础上,利用Matlab的Delaunay函数,编写了如下一段代码。希望你也喜欢。
注意:系统内必须安装有Matlab(这是一个很大的应用程序),另,运行本程序的时候,最好先打开Matlab,可以节省时间。
本代码的效率一般般,10000个点大概得8秒左右,其实Matlab计算很快,大概在0.3秒左右,我的程序的大部分时间是在处理表和文件的写入上,应该说我用的文本操作方法还是比较落后的,希望高手们指正。看看有什么更好的交互方法。非常感谢。
后续希望能进一步地利用Matlab的优化工具箱啊,神经网络啊,遗传算法啊等等来看看能如何拓展Lisp的应用范畴。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
x
评分
-
查看全部评分
|