我是Matlab的新手.在Python中,可以方便地交换元素.
x,y = 5,10
x,y = y,x
Matlab(或Octave/Scilab)中有类似的东西吗?否则,在不使用临时变量的情况下交换元素的最佳方法是什么?
我试图绘制两点之间的一条线:a(xa,ya)和b(xb,yb).我怎么能在Scilab中做到这一点?
在此先感谢您的帮助
我正在学习SciLab,我需要从MATLAB中找出用于运行用户定义函数的等价物.
我已经习惯了MATLAB,当你输入时foo(27),它会foo.m在当前目录中查找脚本,然后在MATLAB路径中查找脚本,如果找到一个,它会使用参数27调用该函数.
什么相当于SciLab?它似乎不想在当前目录中查找相应的.sci文件.
我有一组度量值,我想近似一下。我知道我可以用4次多项式来做到这一点,但我不知道如何使用Scilab找到它的五个系数。
现在,我必须使用Open office calc的用户友好功能。因此,为了继续仅使用Scilab,我想知道是否存在内置函数,或者我们是否可以使用简单的脚本。
我想在scilab中绘制Limacon,我需要处理以下方程式:

我知道,r>0和l>0
编译以下代码时,在第5行出现此错误:
行/列尺寸不一致。
如果设置t为特定数字,则最终会得到干净的曲线,其中没有任何功能。
我试图改变r和l到其它号码,但这并不做任何事情。有人知道我在做什么错吗?
r=1;
l=1;
t=linspace(0,2,10);
x = 2 * r * (cos(t))^2 + l * cos(t);
y = 2 * r * cos(t) * sin(t) + l * sin(t);
plot (x,y);
Run Code Online (Sandbox Code Playgroud) 在Scilab中创建一个包含换行符的简单字符串.
看起来很简单,但Scilab似乎只通过printf样式函数解释转义序列和msprintf/ sprintf在换行符中将字符串拆分为字符串向量!
我能看到实现这一目标的唯一方法是实际将换行符写入文件并再次读回来.当然有一种更简单的方法可以做到这一点!
我有一个音频文件,我用大胆分析,光谱看起来像:

我想和scilab一样,所以我运行这段代码:
[y,Fs] = wavread('fileName.wav');
Y_0 = abs(fft(y(1,:),-1));
plot(fftshift(Y_0));
Run Code Online (Sandbox Code Playgroud)
结果是:

我也尝试过这个:
plot(10*log10(fftshift(Y_0)));
Run Code Online (Sandbox Code Playgroud)
结果不同但仍然不同于大胆,任何想法怎么做?在此先感谢您的帮助!
我在Octave,Scilab和Matlab提示符下测试以下命令.
>> A = rand(10000,10000);
>> B = rand(10000,1);
>> tic,A\B;, toc
Run Code Online (Sandbox Code Playgroud)
时间分别为40,15.8和15.7秒.为了比较,Mathematica的表现是
In[7]:= A = RandomReal[{0, 1}, {10000, 10000}];
In[9]:= B = RandomReal[{0, 1}, 10000];
In[10]:= Timing[LinearSolve[A, B];]
Out[10]= {14.125, Null}
Run Code Online (Sandbox Code Playgroud)
这是否表明Octave不如线性方程领域的其他软件那么强大?