这个积分式子怎么用matlab画出来

这个积分式子怎么用matlab画出E和r之间的图像关系?
具体的代码怎么写

img

你没给r的区间,我假设是[-0.1,0.1],matlab代码如下:

clc
clear
r0 = -0.1:0.001:0.1;                      
fun = @(y,r) (3*y.^2+6*y)./sqrt(y.^2-r.^2);     
E = zeros(1,length(r0));              
for k=1:length(r0)
    E(k) = integral(@(x) fun(x,r0(k)),0.1,0.2,'ArrayValued',true);                   
end
plot(r0,E,'linewidth',1)
xlabel('r')
ylabel('E')

运行结果:

img


有用希望点一下采纳,谢谢

我想知道如何用Matlab画出E和r之间的图像关系,具体的代码该怎么写?

可以使用Matlab的积分函数integral来求解积分式子,然后再将结果作为r的函数,结合theta(角度)绘制极坐标图像。具体代码如下:

syms r theta E = @(r) r^2sin(theta); % E(r) 的定义 integralE = integral(E, theta, 0, pi); % 对 E(r)r^2sin(theta) 进行积分 rFunc = @(r) r^2cos(theta)integralE; % 将积分后的结果作为r的函数 thetaData = 0:0.1:2pi; % 指定theta的取值范围 rData = rFunc(1:0.1:10); % 计算对应theta的r值 polarplot(thetaData, rData) % 绘制极坐标图像

其中,使用了Matlab的符号计算功能来定义E(r)和进行积分,使用匿名函数定义r的函数rFunc,指定了theta的取值范围和对应的r值,并用polarplot来绘制极坐标图像。