how to use multiple variable in fsolve and plot the corresponding result

1 visualización (últimos 30 días)
jayash
jayash el 20 de Feb. de 2015
Comentada: jayash el 20 de Feb. de 2015
I want to plot between 'n0' and 'U'. First I have to get 'n0' in terms of 'U' (for which I used fsolve)
eq = @(q) 2*(1 - cos(2*Pi*q));
hq =@(q) ((eq)^2 + 2*U*n0*(eq))^(1/2);
ha = @(q) (((eq) + (U*n0))/hq) - 1;
a = -0.5;
b = 0.5;
v = @(U,n0) quad(ha,a,b);
vv = @(U,n0) n0+(0.5*v)-1;
options = optimset('Display', 'iter');
n = @(U) fsolve(vv,n0,0.1);
U = 0:0.1:20;
plot(U,n(U))
How can I do this? Thanks.

Respuestas (2)

Torsten
Torsten el 20 de Feb. de 2015
Please write down the equation you are trying to solve in a mathematical notation.
Maybe then someone can help you to solve your problem.
Nobody has the time to put the pieces of your above puzzle-code together.
Best wishes
Torsten.

Torsten
Torsten el 20 de Feb. de 2015
Your integral does not exist since the denominator is 0 at q=0 and hw proportional to q in a neighborhood of q=0.
Best wishes
Torsten.
  1 comentario
jayash
jayash el 20 de Feb. de 2015
Do you any method to overcome this singularity, I mean is there any way to exclude "'\hbar\omega = 0" ?

Iniciar sesión para comentar.

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by