matlab中Error:Function definitions are not permitted at the prompt or in scripts.如何应对.我想计算一个积分{[1-(1-cos(x))/(2ε)]^c)*COS(mx)}/2π从a到-a积分其中ε>0m=0或者1(这个条件应该如何表达?)a=a=arccos(1-2ε)c=1.5

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 15:06:44

matlab中Error:Function definitions are not permitted at the prompt or in scripts.如何应对.我想计算一个积分{[1-(1-cos(x))/(2ε)]^c)*COS(mx)}/2π从a到-a积分其中ε>0m=0或者1(这个条件应该如何表达?)a=a=arccos(1-2ε)c=1.5
matlab中Error:Function definitions are not permitted at the prompt or in scripts.如何应对.
我想计算一个积分
{[1-(1-cos(x))/(2ε)]^c)*COS(mx)}/2π
从a到-a积分
其中ε>0
m=0或者1(这个条件应该如何表达?)
a=a=arccos(1-2ε)
c=1.5
ε=0.6
我写的code是
c=1.5
xi=0.6
m=0
a=acos(1-2*xi)
function w=pianxinfuhe([1-(1-cos(x))/(2*xi)]^c)*(cos(m*x))
Im=quadl(pianxinfuhe,a,-a)/(2*pi)
但是出现错误,

matlab中Error:Function definitions are not permitted at the prompt or in scripts.如何应对.我想计算一个积分{[1-(1-cos(x))/(2ε)]^c)*COS(mx)}/2π从a到-a积分其中ε>0m=0或者1(这个条件应该如何表达?)a=a=arccos(1-2ε)c=1.5
首先写symbol function的时候.* , ./, .^ 一定要写对,你的代码里是错的
其次使用symbol function不能这样定义,你的程序可以直接这样写:
c = 1.5
xi = 0.6
m = 0
a = acos(1-2*xi)
w = @(x) ((1-(1-cos(x))./(2.*xi)).^c).*(cos(m.*x));
Im = quadl(w,a,-a)/(2*pi);
如果非要用function,你要新建一个m文件pianxinfuhe.m
里面这样写
function w = pianxinfuhe (x)
c = 1.5
xi = 0.6
m = 0
a = acos(1-2*xi)
w = ((1-(1-cos(x))./(2.*xi)).^c).*(cos(m.*x));
然后在外面窗口,执行如下语句:
xi = 0.6
a = acos(1-2*xi)
lm = quadl(@pianxinfuhe, a, -a)/(2*pi);