Can someone explain to me how bvp4c works?

1 view (last 30 days)
Nick
Nick on 20 Feb 2013
Hi there,
I'm currently working on a bvp4c file which looks at solving the values of natural frequencies for the first 4 modes of a rotating beam (i.e. helicopter rotor blade). I am however having trouble with the bvp4c tool as it seems to not always tend to the correct mode. I've essentially set up the code to run in the usual way, I have the ode function in the form:
function dydx = odefun(x,y,lambda)
% variables used in equation below also defined here
dydx = [...
a ;...
b ;...
f(a,lambda);...
f(b,lambda)];
end
And the boundary conditions are sufficient to find the unknowns.
The objective of the code is to find the correct value of lambda which satisfies the boundary conditions and the equations of motion (i.e. odefun).
The value used for lambda for each mode is that calculated using a finite element model and so can be assumed to be very accurate and therefore a good initial guess.
My question is, how does bvp4c actually go about finding a solution? My tutor has told me that I should be able to visualize it by manually inputting an array of lambda values around one calculated by the finite element code and then in each case plotting these against the sum of the sol.y values squared (calculated for each lambda value). Apparently if the lambda values are plotted on the x axis and the sol.y values on the y, there should be a trough around a group of lambda values for which the sum of sol.y squared tends towards zero. Something similar to this:
In this case the lambda value which satisfies the equations would be 50.
Is this what should happen or am I going about this in completely the wrong way? If not can anyone explain a manual way in which I can visualize the process or point me towards something which might help explain it?
Many thanks,
Nick

Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!