New answers tagged

3

You should be able to set this up as some sort of generalized eigenvalue problem like $$Au=\lambda Bu,$$ where $Au = (du')'+fu$ and $Bu = -(cu')'-eu$. I simplified the derivatives a bit since this formulation is more numerically stable. You should now be able to represent both as tridiagonal matrices using standard finite differences and any generalized ...


1

Assuming it is not too expensive to evaluate the function, I would recommend using the chebfun toolbox (matlab), as shown here: https://www.chebfun.org/docs/guide/guide03.html It builds an approximation of the function using Chebyshev polynomials and then finds the polynomial’s roots using a highly efficient root finder. It will find all roots in one fell ...


2

The usual trick is to add more variables that represent the successive derivatives, as in the equations of motion pf physics written as a set of first order ODE of "2" variables: $$\begin{align}\dot{x}&=v\\ \dot{v}&=a(x,t)\end{align}$$ instead of a second order ODE of 1 variable $$\ddot{x}=a(x,t) \ .$$ The dot represents the time derivative. So, ...


0

I figured that a possible way to pass data relevant to the differential equation or dynamical system one may want to solve, and which is not initial conditions or time span, is to use this format: [t,y] = ode45(@(t,y) ode(t,y,parameter_1,parameter_2,parameter_3,...), time, y0);


Top 50 recent answers are included