首页 > 其他分享 >无涯教程-MATLAB - Octave

无涯教程-MATLAB - Octave

时间:2024-01-20 21:31:35浏览次数:34  
标签:disp cos 函数 示例 无涯 MATLAB Octave

GNU Octave是像MATLAB这样的高级编程语言,它与MATLAB大部分兼容。它也用于数值计算。

Octave与MATLAB具有以下共同特征-

  • 矩阵是基本数据类型
  • 它具有对复数的内置支持
  • 它具有内置的数学函数和库
  • 它支持用户定义的函数

GNU Octave也是可免费重新发行的软件,您可以根据自由软件基金会发布的GNU通用公共许可(GPL)的条款重新分发和/或修改它。

MATLAB vs Octave

大多数MATLAB程序都在Octave中运行,但是某些Octave程序可能无法在MATLAB中运行,因为Octave允许某些MATLAB不能使用的语法。

例如,MATLAB仅支持单引号,但是Octave支持单引号和双引号来定义字符串。

相容范例

本教程中介绍的几乎所有示例都与MATLAB以及Octave兼容。让我们尝试下面的示例在MATLAB和Octave中产生相同输出而无需任何语法更改-

本示例为函数g=xe -(x 2 + y 2 )创建3D表面贴图。创建一个脚本文件并输入以下代码-

[x,y]=meshgrid(-2:.2:2);
g=x .* exp(-x.^2 - y.^2);
surf(x, y, g)
print -deps graph.eps

运行文件时,MATLAB显示以下3-D映射-

3-D Map in Matlab

不兼容例子

尽管MATLAB的所有核心函数都可以在Octave中使用,但是有些函数(例如,差分和积分演算)在两种语言中都不完全匹配。 本教程尝试提供两种示例,它们的语法有所不同。

考虑下面的示例,其中MATLAB和Octave使用不同的函数来获取曲线的面积:-4≤x≤9的f(x)= x 2 cos(x)。以下是MATLAB版本代码的-

f=x^2*cos(x);
ezplot(f, [-4,9])
a=int(f, -4, 9)
disp('Area: '), disp(double(a));

运行文件时,MATLAB绘制图形-

Definite Integral

显示以下输出

a =
8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9)
 
Area: 
   0.3326

但是要在Octave中给出相同曲线的面积,您将必须使用 symbolic 包,如下所示-

pkg load symbolic
symbols

x=sym("x");
f=inline("x^2*cos(x)");

ezplot(f, [-4,9])
print -deps graph.eps

[a, ierror, nfneval]=quad(f, -4, 9);
display('Area: '), disp(double(a));

参考链接

https://www.learnfk.com/matlab/matlab-gnu-octave.html

标签:disp,cos,函数,示例,无涯,MATLAB,Octave
From: https://blog.51cto.com/u_14033984/9346189

相关文章

  • Matlab-pcolor绘制二维色温图并修改温度条颜色
    figure(3)pcolor(time,yData',data1.ConVel')shadinginterp;colorbar;color_1=[0,0,1];color_2=[1,1,1];color_3=[1,0,0];num12=45;num23=25;R_mat=[linspace(color_1(1),color_2(1),num12),linspace(color_2(1),color_3(1),num23)];G_mat=[linspace(col......
  • 无涯教程-MATLAB - 变换(Transforms)
    MATLAB提供了用于处理变换的命令,例如Laplace和Fourier变换,转换在科学和工程中用作简化分析并从另一个角度查看数据的工具。例如,傅立叶变换允许我们将表示为时间函数的信号转换为频率函数,拉普拉斯变换使我们能够将微分方程转换为代数方程。MATLAB提供了laplace,傅立叶和fft命......
  • 无涯教程-MATLAB - 多项式(Polynomials)
    MATLAB将多项式表示为行向量,其中包含按降序排序的系数。例如,方程P(x)=x4+7x3-5x+9可以表示为-p=[170-59];判断多项式polyval函数用于以指定值判断多项式。例如,要判断我们先前的多项式p,在x=4处,键入-p=[170-59];polyval(p,4)MATLAB执行上述语句并返......
  • 无涯教程-MATLAB - 代数(Algebra)
    到目前为止,我们已经看到所有示例都可以在MATLAB及其GNU(也称为Octave)中运行,但是对于求解基本的代数方程,MATLAB和Octave几乎没有什么不同,因此我们将尝试在单独的部分中介绍MATLAB和Octave。我们还将讨论代数表达式的分解和简化。MATLAB中代数方程solve函数用于求解代数方程,......
  • 无涯教程-MATLAB - 微积分(Calculus)
    MATLAB提供了多种方法来解决微分和积分问题,求解任意程度的微分方程式以及计算极限,最重要的是,您可以轻松求解复杂函数的图,并通过求解原始函数及其导数来检查图上的最大值,最小值。本章将讨论微积分的问题,在本章中,我们将讨论预演算的概念,即计算函数的极限并验证极限的性质。计算极......
  • 无涯教程-MATLAB - 绘图(Plotting)
    要绘制函数图,您需要执行以下步骤-通过为变量x指定值的范围定义x,为此函数绘制定义函数y=f(x)以plot(x,y)以下示例将演示该概念。让我们用简单的函数y=x绘制x的值范围(从0到100),增量为5。创建一个脚本文件并输入以下代码-x=[0:5:100];y=x;plot(x,y)运行文件时,MAT......
  • 无涯教程-MATLAB - 数据输出
    MATLAB中的数据导出意味着写入文件,MATLAB允许您在另一个读取ASCII文件的应用程序中使用数据,为此,MATLAB提供了几种数据导出选项。有两种方法可以将数字数组导出为定界的ASCII数据文件-使用save函数并指定-ascii限定符使用dlmwrite函数使用保存函数的语法是-savemy_data.......
  • 无涯教程-MATLAB - 字符串(Strings)
    在MATLAB中创建字符串非常简单,实际上,我们已经使用了很多次。例如,您在命令提示符下键入以下内容-my_string='LearnfkPoint'MATLAB将执行上述语句并返回以下输出-my_string=LearnfkPointMATLAB将所有变量视为数组,而字符串则视为字符数组,让我们使用whos命令检查上面创建的变......
  • 无涯教程-MATLAB - 数字(Numbers)
    MATLAB支持各种数字类,包括有符号和无符号整数以及单精度和双精度浮点数,默认情况下,MATLAB将所有数值存储为双精度浮点数。您可以选择将任何数字或数字数组存储为整数或单精度数字,所有数值类型都支持基本数组运算和数学运算。数据类型MATLAB提供以下函数以转换为各种数值数据类......
  • 无涯教程-MATLAB - 冒号表示法
    colon(:)是MATLAB中最有用的运算符之一,它用于创建向量,下标数组和指定迭代次数。如果要创建包含1到10的整数的行向量,请编写-1:10MATLAB执行该语句并返回包含1到10的整数的行向量-ans=......