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.
0 个评论
采纳的回答
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)
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 个评论
更多回答(1 个)
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
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.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!