- make a function, or function handle of A
- define an objective function (the equation that should be zero. You can use Matlabs "integral" function.
- you need solve solve the objective function. You can use fsolve, or alternatively look an algorithm using Newton's method on file exhange (for example this link might work: https://uk.mathworks.com/matlabcentral/fileexchange/28227-newton-s-method)
Find the value from the integral equation
1 回表示 (過去 30 日間)
古いコメントを表示
I have the function A(e) as:
A=(cos(4*w)*cos(4*w)+1)/(1+exp(w-m0);
where the w is the variable and and m0 is the unknown value which should to be obtained by:
int(A,e,-20,20)-2=0.
I need to obtain the m0 parameter by solving the above equation.
1 件のコメント
Sargondjani
2023 年 2 月 7 日
I'm just going to give hints:
This should get you started.
回答 (2 件)
Torsten
2023 年 2 月 7 日
fun = @(w,m0) (cos(4*w).*cos(4*w)+1)./(1+exp(w-m0));
m0sol = fsolve(@(m0)integral(@(w)fun(w,m0),-20,20)-2,1)
integral(@(w)fun(w,m0sol),-20,20)-2
Dyuman Joshi
2023 年 2 月 7 日
編集済み: Dyuman Joshi
2023 年 2 月 7 日
You can solve it symbollically (This requires symbolic toolbox)
syms w m0
A=(cos(4*w)*cos(4*w)+1)/(1+exp(w-m0));
eq=int(A,w,-20,20)-2==0;
val=vpasolve(eq)
%Verification
syms y(x)
y(x)=(cos(4*x)*cos(4*x)+1)/(1+exp(x-val));
inty=int(y,x,-20,20)
%As we can see here, we don't get the numeric value of the integral
%so we use vpa to approximate the value
vpa(inty)
参考
カテゴリ
Help Center および File Exchange で Symbolic Math Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!