知道方程式和很多x值 怎样求对应的很多个y值 用matlab编程
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/05 08:32:35
知道方程式和很多x值 怎样求对应的很多个y值 用matlab编程
函数是f(x)=a0 + a1*cos(x*w) + b1*sin(x*w) +
a2*cos(2*x*w) + b2*sin(2*x*w) + a3*cos(3*x*w) + b3*sin(3*x*w) +
a4*cos(4*x*w) + b4*sin(4*x*w) + a5*cos(5*x*w) + b5*sin(5*x*w) +
a6*cos(6*x*w) + b6*sin(6*x*w) + a7*cos(7*x*w) + b7*sin(7*x*w) +
a8*cos(8*x*w) + b8*sin(8*x*w)
函数是f(x)=a0 + a1*cos(x*w) + b1*sin(x*w) +
a2*cos(2*x*w) + b2*sin(2*x*w) + a3*cos(3*x*w) + b3*sin(3*x*w) +
a4*cos(4*x*w) + b4*sin(4*x*w) + a5*cos(5*x*w) + b5*sin(5*x*w) +
a6*cos(6*x*w) + b6*sin(6*x*w) + a7*cos(7*x*w) + b7*sin(7*x*w) +
a8*cos(8*x*w) + b8*sin(8*x*w)
%{
楼主的函数:
f(x) = a0 + a1*cos(x*w) + b1*sin(x*w) +
a2*cos(2*x*w) + b2*sin(2*x*w) + a3*cos(3*x*w) + b3*sin(3*x*w) +
a4*cos(4*x*w) + b4*sin(4*x*w) + a5*cos(5*x*w) + b5*sin(5*x*w) +
a6*cos(6*x*w) + b6*sin(6*x*w) + a7*cos(7*x*w) + b7*sin(7*x*w) +
a8*cos(8*x*w) + b8*sin(8*x*w)
%}
% 楼主做的是8阶Fourier级数展开.
a = rand(1,9); % a是9个常数构成的向量,楼主在此替换自己的a值;
b = rand(1,8); % b是8个常数构成的向量,楼主在此替换自己的b值;
w = rand; % w是个常数,楼主在此替换自己的w值;
f = @(x)a(1) + ...
a(2)*cos(x*w) + b(1)*sin(x*w) + ...
a(3)*cos(2*x*w) + b(2)*sin(2*x*w) + ...
a(4)*cos(3*x*w) + b(3)*sin(3*x*w) + ...
a(5)*cos(4*x*w) + b(4)*sin(4*x*w) + ...
a(6)*cos(5*x*w) + b(5)*sin(5*x*w) + ...
a(7)*cos(6*x*w) + b(6)*sin(6*x*w) + ...
a(8)*cos(7*x*w) + b(7)*sin(7*x*w) + ...
a(9)*cos(8*x*w) + b(8)*sin(8*x*w);
x = rand(32,1);% 楼主在此替换自己的x值;
y = f(x);
或者 更一般地,有
%{
楼主的函数:
f(x) = a0 + a1*cos(x*w) + b1*sin(x*w) +
a2*cos(2*x*w) + b2*sin(2*x*w) + a3*cos(3*x*w) + b3*sin(3*x*w) +
a4*cos(4*x*w) + b4*sin(4*x*w) + a5*cos(5*x*w) + b5*sin(5*x*w) +
a6*cos(6*x*w) + b6*sin(6*x*w) + a7*cos(7*x*w) + b7*sin(7*x*w) +
a8*cos(8*x*w) + b8*sin(8*x*w)
%}
% 楼主做的是8阶Fourier级数展开.
function y = funfourier(x)
n = 9; % Fourier级数展开阶数;
a = rand(1,n); % a是n个常数构成的向量,楼主在此替换自己的a值;
b = rand(1,n); % b是n个常数构成的向量,楼主在此替换自己的b值;
w = rand; % w是个常数,楼主在此替换自己的w值;
s = 0;
for k = 1:n
s = s + a(k)*cos((k-1)*w*x) + b(k)*sin((k-1)*w*x);
end
y = s;
楼主的函数:
f(x) = a0 + a1*cos(x*w) + b1*sin(x*w) +
a2*cos(2*x*w) + b2*sin(2*x*w) + a3*cos(3*x*w) + b3*sin(3*x*w) +
a4*cos(4*x*w) + b4*sin(4*x*w) + a5*cos(5*x*w) + b5*sin(5*x*w) +
a6*cos(6*x*w) + b6*sin(6*x*w) + a7*cos(7*x*w) + b7*sin(7*x*w) +
a8*cos(8*x*w) + b8*sin(8*x*w)
%}
% 楼主做的是8阶Fourier级数展开.
a = rand(1,9); % a是9个常数构成的向量,楼主在此替换自己的a值;
b = rand(1,8); % b是8个常数构成的向量,楼主在此替换自己的b值;
w = rand; % w是个常数,楼主在此替换自己的w值;
f = @(x)a(1) + ...
a(2)*cos(x*w) + b(1)*sin(x*w) + ...
a(3)*cos(2*x*w) + b(2)*sin(2*x*w) + ...
a(4)*cos(3*x*w) + b(3)*sin(3*x*w) + ...
a(5)*cos(4*x*w) + b(4)*sin(4*x*w) + ...
a(6)*cos(5*x*w) + b(5)*sin(5*x*w) + ...
a(7)*cos(6*x*w) + b(6)*sin(6*x*w) + ...
a(8)*cos(7*x*w) + b(7)*sin(7*x*w) + ...
a(9)*cos(8*x*w) + b(8)*sin(8*x*w);
x = rand(32,1);% 楼主在此替换自己的x值;
y = f(x);
或者 更一般地,有
%{
楼主的函数:
f(x) = a0 + a1*cos(x*w) + b1*sin(x*w) +
a2*cos(2*x*w) + b2*sin(2*x*w) + a3*cos(3*x*w) + b3*sin(3*x*w) +
a4*cos(4*x*w) + b4*sin(4*x*w) + a5*cos(5*x*w) + b5*sin(5*x*w) +
a6*cos(6*x*w) + b6*sin(6*x*w) + a7*cos(7*x*w) + b7*sin(7*x*w) +
a8*cos(8*x*w) + b8*sin(8*x*w)
%}
% 楼主做的是8阶Fourier级数展开.
function y = funfourier(x)
n = 9; % Fourier级数展开阶数;
a = rand(1,n); % a是n个常数构成的向量,楼主在此替换自己的a值;
b = rand(1,n); % b是n个常数构成的向量,楼主在此替换自己的b值;
w = rand; % w是个常数,楼主在此替换自己的w值;
s = 0;
for k = 1:n
s = s + a(k)*cos((k-1)*w*x) + b(k)*sin((k-1)*w*x);
end
y = s;
知道方程式和很多x值 怎样求对应的很多个y值 用matlab编程
matlab 找出x所对应的最大值y,有一组x,每一个x对应很多y值
matlab编程,计算多值的y=e^x,
求大神用Matlab编程这个方程式,
matlab 已知函数y值和函数,求对应自变量x值.
matlab中用solve函数求方程解,结果是个表达式,然后我带入参数的值,用subs求的结果怎么有很多个?
MATLAB中 以知x,y的值,怎样求相关函数f(x,y)?
知道输入X和输出Y的一些离散值,怎样用matlab求传递函数或差分方程呢?
y=sinx从x=0的曲线长度为15,则对应的该区间为多少,怎么用MATLAB编程
matlab如何求已知自变量x值,求对应函数y值
知道特征值怎么用MATLAB求它对应的特征向量
求用matlab编程求函数f(x,y)=x^2+xy(1