求高手指导,MATLAB isosurface能用scilab和matlab函数替换吗

问一下有人用过octave吗?能替代matlab吗?_linux吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:151,736贴子:
问一下有人用过octave吗?能替代matlab吗?收藏
下学期要学matlab。。。
达内上海linux培训,将网络工程与Linux运维结合,培养高端 上海linux人才.达内上海linux培训,名师授课+百万机房+红帽认证;名企项目实战,13年20万学员成功就业!
没人用过吗?那求matlab下载地址
octave兼容matlab的语法,不过自带的工具箱没有matlab的多。我只是用过几回,没深究。octave没有图形界面,你可以用vim或着emacs编辑.m文件,再用octave运行。如果需要图形界面的话,可以考虑qtoctave。另外还听说matlab的另一个替代品——scilab,不妨也试试看。
我就不说楼主多么蛋疼了。matlab去那个simplecd上面一搜一大把。。unix版本的都有N多。
就是这个。。。
个人经验,octave的画图很不给力,卡顿的厉害,在ubuntu12.04下的matlab只要13s的,用qtoctave &35smatlab在linux下的效率比windows下要差很多,不知是什么缘故。比较过两次,一次是电磁传播的仿真,ubuntu12.04要17s,windows7是8s,另一次是计算100万以内的素数个数,ubuntu是7.8s,windows是2.7s两个系统都是64bits,i5笔记本处理器
可以拿来做矩阵运算,图像处理应该也可以,仿真最好还是用Scilab代替Matlab,因为它有一个类似Simulink的图形界面。在纯粹矩阵计算方面,Scilab略块于Matlab,Octave比这两个慢很多。可能是因为Scilab使用MKL的原因。
Scilab语法和Matlab差别较大。Matlab *.m文件中只有第一个函数是公有的,并且会自动根据函数名去加载相应的文件;而Scilab不会自动加载文件,需要用命令手工加载;一旦完成加载,源文件中所有函数都是公用的。这点没有Matlab好。
linux下可以安装matlab
已经在linux下安装了matlab
关于语法兼容问题,在Octave的FAQ中有这么一句话If you find an important functional difference between Octave behavior
and Matlab, then you should send a description of this difference (with
code illustrating the difference, if possible) to 所以Matlab程序95%多(不含特殊工具包)的应该可以直接在Octave,因为Octave让人把较大差别报到Bugs上去,但Octave中引入了一些其它语法符号,如字符串"",注释#(unix风格)等,所以如果完全按Octave写的程序在Matlab里是会出问题的另外个人使用中还有一个比较显著的差异,Matlab引入了JIT,所以有时会发现Matlab要比Octave快很多,不过Octave未来版本会引入JIT。由于本人没有用到仿真功能,所以不做评价。但Octave里也有不少工具箱,在SourceForge上。另外目前版本还没有引入GUI,这个在调试程序时会很蛋疼,不过未来版本也会有的这是一个持续活跃的项目,值得一用
至于Octave的画图,这个无需多说,后台是强大的Gnuplot,绝对不会弱于Matlab,而且输出格式要远多于Matlab,公式显示也要强大N倍。而且Matlab画图对中文支持不好,尤其是EPS格式
木听说过。。。
应该无法完全替代,至少工具包你有那么多。不过依旧建议尝试使用,支持一下开源软件嘛
我有matlabb,2013a,第一个是在华为网盘上下载的,后一个是在ed2000上下载的,最后一个网上能搜到种子,不过速度很慢,我下载了10多天
如果只是做线性代数作业绝对足够了,更深的不好说
貌似是个坟。加一个:octave forge里的img包比较坑爹,一些滤图函数和matlab的image包里的效果是不一样的。使用前要三思。
弱弱的问下,octave支持像maxima那样的运算吗?
以前出过函数兼容性问题,改了一下函数名就ok了
大家不是很满意啊
scilab不行么?
似乎收费的?我用sage math
用python。 numpy基本可以替代matlab或者尝鲜试试julia
首先,把matlab的toolbox装到octave下,octave功能就和matlab一样了。但是,octave的性能在x86结构上太差了,远远不及matlab,亲测的。但是要是在别的结构上。比如power上,用octave效果比较好。matlab替换java方法有时候会崩会掉。
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或求用matlab画出心型的函数!!_百度知道查看: 8617|回复: 18|关注: 1
isosurface函数求助
<h1 style="color:# 麦片财富积分
新手, 积分 5, 距离下一级还需 45 积分
有谁知道isosurface函数的原理和如何具体实现的啊& & 用法我知道
<h1 style="color:#0 麦片财富积分
关注者: 2
这样的帖子很难有人回帖的,呵呵
建议还是自己去看源代码吧。。。应该不会太复杂
matlabroot\toolbox\matlab\specgraph\private\src目录下:
isosurf.c 用C语言实现的mex&&600行代码
<h1 style="color:# 麦片财富积分
回复 2# yycs001 的帖子
恩 我已经在看源代码了 语句本身不难理解 但是他所代表的算法意义还是有很大难度的&&这个源代码中很多变量定义根本不清楚是什么意思比如第30行怎么定义的十二条边数组& &你看过这个源代码吗
<h1 style="color:#0 麦片财富积分
关注者: 2
你说得对,从源码来了解算法也很难,但也并非完全不可能。
我没看过它的源代码,刚看了下,我认为:
静态的分析很难理解,需要动态调试它,即往源代码中添加一些输出语句,然后测试一个简单例子,来观察每一步的动作。
至于你说的 十二条边数组,经过分析,我认为应该是边和顶点的编码,具体示意如图:
<h1 style="color:# 麦片财富积分
回复 4# yycs001 的帖子
恩 可能只能利用vc一段一段的去调试了,但是好多语段根本调试不出来,没有定义的!恩,像这个十二条边数组,我也晓得他是定义的顶点和边,但是实际代表着什么意义却是通过调试的不出来的,比如第一行,{0,1& &&&2、3、1& & 5、8、4}这两个顶点和六条边之间又有什么关系呢?呵呵,我感觉这应该是一种类似于mc的算法,呵呵。但是确实找不出具体的差别
<h1 style="color:#0 麦片财富积分
关注者: 2
{0,1& &&&2、3、1& & 5、8、4}
0,1表示0号顶点和1号顶点,它们连成的线叫0号边
2,3,1表示0号边左边面的其他3条边(按顺序排列)
5,8,4表示0号边右边面的其他3条边(按顺序排列)
大致的算法:
对每个小立方体,从0号边开始,
获取顶点坐标,计算函数值,比较顶点处函数值(v1和v2)和等值目标值,
如果等值目标值在v1和v2之间,则0号边标记为有效,否则为无效;
如果0号边有效,比较等值目标值更靠近0号顶点还是1号顶点;
如果更靠近0号顶点,则将0号边左边面的其他3条边作为0号边的搜索下线。
如此遍历立方体的12条边,为每条边标记是否有效以及得到每条边的搜索下线。
从0号边开始,如果有效,则找它的下线;
下线如果有效则继续搜索下线,得到3条有效的边(等值面必须穿过这3条边),计算出这3条边与等值面的交点(根据顶点处函数值和等值目标值插值),组成三角形。
如果无效则退出,继续下一条边。
如此得到很多三角形组成等值面。
<h1 style="color:# 麦片财富积分
回复 6# yycs001 的帖子
其实,按照注释isosurf整个程序分为这几个部分(创建顶点,创建三角形,取得每条边的坐标,找取下一条有效边,产生多边形,计算边交点值,绘制曲面),和MC算法一样,其中(找取下一条有效边,产生多边形,计算边交点值,绘制曲面)我感觉已经能够完成等值面片的绘制,那创建顶点,创建三角形,取得每条边的坐标有什么实际意义?是为了定义存储创建的顶点和面的变量?
<h1 style="color:#0 麦片财富积分
关注者: 2
“那创建顶点,创建三角形,取得每条边的坐标有什么实际意义?是为了定义存储创建的顶点和面的变量?”
这句话是什么意思,没看明白。
isosurface函数的返回值就是一系列面片,当然需要创建三角形,创建顶点
边是没有坐标的,边是由顶点组成,有顶点坐标就行
<h1 style="color:# 麦片财富积分
回复 8# yycs001 的帖子
通过calcEdgeValues和calcEdgeColorValues我感觉是求出了等值面与每个小立方体的交点,然后直接把顶点连接起来就是一系列的小面片,对吧。那 generatePolygons&&getCoords&&createTriangle&&createVertex 这几步 我觉得好奇怪啊 从他们本身的程序是看不出他们具体怎么实现的?
<h1 style="color:# 麦片财富积分
回复 8# yycs001 的帖子
我的意思是比如 createVertex 就是使calcEdgeValues和calcEdgeColorValues得出来的顶点存储在vert数组中,createTriangle就是使calcEdgeValues和calcEdgeColorValues得出来的面片存储在face数组中,至于createTriangle中的index0 index1 index2 我觉得应该有一个检索表存在。
站长推荐 /2
Powered byMatLab替代软件Scilab
  Scilab(Scientific Laboratory)是一个为工程和科学应用量身定做的强大计算环境,由一系列数值计算的科学软件包组成。最初(1990年)是INRIA和ENPC的研究者开发,1994年开始在网上自由分发,现在国外已经广泛应用于教育和工业环境中。它拥有成百可以与许多程序语言(例如:C、Fortran...) 交互的数学函数、精巧高级的数据结构(例如:链表、多项式、有理函数、线性系统...)、高水平的程序设计语言和解释器。另外,Scilab完全是一个开放的系统,你可以利用重载技术定义新的数据结构。Scilab的一个重要特征是它具有丰富的工具箱,目前的最新版本(2.7.2)可用的有:* 2-D 和 3-D 图形及动画* 线性代数, 稀疏矩阵* 多项式和有理函数* 模拟: ODE 求解(ODEPACK) 和 DAE 求解(DASSL)* Scicos: 一个动力系统建模器和模拟器* 经典鲁棒控制, LMI 优化* 微分和非微分优化* 信号处理* Metanet: 图形和网络* 使用PVM的并行Scilab* 统计学* 与计算机代数系统(Maple, MuPAD)的接口* Tck/Tk接口当然还有许许多多其它的工具箱, Scilab可以运行在包括Linux在内的绝大部分UNIX系统下,当然在Windows 9X/NT/2000/XP 下也有相应的运行版本。它的源代码、在线帮助和英文使用手册都免费提供下载。Scialb的安装Scialb的安装: SCIALB的安装程序、说明文档、应用例子以及一些最新更新消息等可以从(不包括原代码)。这个版本包括部分静态链接。对于源程序版本:展开和安装(包括)SCIALB需要大约130M的磁盘空间。用户需要X Windows(X11R4,X11R5或X11R6)、C编译器和FORTRAN编译器(例如f2c或g77)以及用于Windows系统的 Visual C++。安装SCILAB时,可以运行其安装文件SCILAB26.exe自动安装;也可以将磁盘文件解压缩后,直接复制到你的目录下。卸载SCILAB 时,对于自动安装的文件,通过卸载命令下载;对于以直接复制方式安装的SCILAB,直接删除所复制的文件即可。下面我具体介绍在RedHat90上的安装,建议源码安装!确认你已经下载scilab2.7的源码包scilab-2.7.src.tar.gz,如果没有可以这里下载。解压缩源码包: tar -zxvf scilab-2.7.src.tar.gz进入源码包文件夹安装:cd /usr/local/etc/scilab/scilab2.7./configure --prefix=/usr/localmake all注意上面是我的安装命令,你可以参考源码目录下的README_UNIX文件;prefix是指定要安装的目录,默认是prefix=/usr这时在终端输入scilab就可启动它了。下图是新增模拟工具箱SCIOS的Demo 。相关下载SCILAB版权协议(中文译本);SCILAB部分函数指令表;参考文献; 注:这些文件为.PDF(Adobe Portable Document Format)文件格式,可以用Acrobat Reader软件打开阅读。该软件为自由软件,可以从ADOBE的网站下载后安装。ADOBE的网站的下载页面:http: ///products/acrobat/readstep.html 。相 关 网 站官方网站:中法实验室(LIAMA)镜页:开放源码网站:GNU组织网站:自由软件版权选择参考网站:自由软件版权选择参考网站:自由软件目录查询网站共创软件联盟网站:清华大学阿卡网站:Mupad网站:科学、工程自由软件库网站:
好文,顶一下
文章真差,踩一下
------分隔线----------------------------
把开源带在你的身边-精美linux小纪念品
初级应用->
高级应用-> |
编程开发->

我要回帖

更多关于 matlab isosurface 的文章

 

随机推荐