Unexpected error
function dFdx=funode(x,F)
global Lamda
global K1
global P
dFdx=[F(2) ; -K1*P+F(1)*Lamda^2];
function res=myfunbc(Fa,Fb)
global P
res=[Fa(1) ; Fb(1)-P];
solinit=bvpinit(linspace(0,l,2),[1 0]);
sol = bvp4c(@funode,@myfunbc,solinit);
x = linspace(0,l);
F = deval(sol,x);
After that i have an error The derivative function ODEFUN should return a column vector of length 2. why?

 Respuesta aceptada

James Tursa
James Tursa el 29 de Sept. de 2017
Editada: James Tursa el 29 de Sept. de 2017

0 votos

Make it a column vector as requested:
dFdx=[F(2) ; -K1*P+F(1)*Lamda^2];

11 comentarios

Nadim Mhanna
Nadim Mhanna el 29 de Sept. de 2017
still the same error
James Tursa
James Tursa el 29 de Sept. de 2017
What about the other function:
res=[Fa(1) ; Fb(1)-P];
Nadim Mhanna
Nadim Mhanna el 29 de Sept. de 2017
Editada: Nadim Mhanna el 29 de Sept. de 2017
i did corrected both but didn't work
Steven Lord
Steven Lord el 29 de Sept. de 2017
What is the size of each of the variables K1, P, and Lamda?
Nadim Mhanna
Nadim Mhanna el 29 de Sept. de 2017
Editada: Nadim Mhanna el 29 de Sept. de 2017
They are constants i.e. k1=5 Lamda=13 P=252
Walter Roberson
Walter Roberson el 29 de Sept. de 2017
Where is the value of P coming from in your lines
function res=myfunbc(Fa,Fb)
res=[Fa(1) Fb(1)-P];
You are not using the form of "function" that would allow P to be a shared variable.
Nadim Mhanna
Nadim Mhanna el 30 de Sept. de 2017
I did it by entering global P
Nadim Mhanna
Nadim Mhanna el 30 de Sept. de 2017
For all the variables I put the global value that i did assign but still not working
Walter Roberson
Walter Roberson el 30 de Sept. de 2017
Editada: Walter Roberson el 30 de Sept. de 2017
When you use a global variable, it is not uncommon for the global variable to turn out to be empty at the time it is used.
Nadim Mhanna
Nadim Mhanna el 30 de Sept. de 2017
okay got it Thanks all
Jan
Jan el 30 de Sept. de 2017
@Nadim Mhanna: Please do not use flags to mark a "best answer". Flagging is thought to inform admins and editors, that a contribution needs attention, because it violates the terms of use, e.g. by rudeness.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Programming en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 29 de Sept. de 2017

Comentada:

Jan
el 30 de Sept. de 2017

Community Treasure Hunt

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

Start Hunting!

Translated by