numerical integration and solving for limit

6 次查看(过去 30 天)
hello everyone, this is my first question here.
I'm trying to find the value of x when t equals 1:0.1:10
So I don't know how to solve this problem, for example if the intervals were fixed and I wanted to find t, I would just use the commands
f(x)= (-1./(sqrt((1-x.^2)+(0.01/2)*(1-x.^4))))
a=1;
b=5;
I=int(f(x),a,b);
Can anybody help me?
how do i find the value of b when t is equal to 1:0.1:10.
Thanks for your help.

采纳的回答

Torsten
Torsten 2023-1-19
编辑:Torsten 2023-1-19
Here is the maximum value you can insert for t:
syms x
f = 1/sqrt((1-x^2)+0.01/2*(1-x^4));
vpaintegral(f,x,-1,1)
ans = 
3.12988
And here is the curve of t against x.
You can cheat here: plot x against t and say you solved t = -integral ... for x. :-)
xstart = -1;
xend = 1;
xnum = linspace(xstart,xend,100);
for i=1:numel(xnum)
tnum(i) = double(vpaintegral(f,x,xnum(i),1));
end
plot(xnum,tnum)
  4 个评论
Torsten
Torsten 2023-1-19
Yes, I plotted x against the value of the integral.

请先登录,再进行评论。

更多回答(1 个)

Walter Roberson
Walter Roberson 2023-1-19
your f has x^4 and x^2 but no other powers of x.
Do a change of variables X2=x^2 and integrate with respect to X2. You will get a closed form integral involving arcsin. Transform back from X2 to x. Now you can solve the equation. Just make sure you get the right limits of integration
  2 个评论
Walter Roberson
Walter Roberson 2023-1-20
The problem with this approach turns out to be that you would need x^2 to be negative to get at some of the values, which is a problem because that gets you into complex-valued x.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Mathematics 的更多信息

产品


版本

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by