Gaussian White Noise Input into ode solver?

17 views (last 30 days)
Mario
Mario on 26 Mar 2013
Commented: Kwin on 12 Dec 2018
Hey all,
Here is the jist of it: I want to input Band-limited Guassian White Noise into a nonlinear system of ordinary differential equations, but want the white noise signal preserved so that I can plot it against the final solution. Any ideas? The full story is below:
So I have this function:
function vprime = nagumo(t,v)
vprime=[v(1)-(1/3)*(v(1))^3-v(2);
0.08*(v(1)+0.7-0.8*v(2))];
end
I call this function by setting:
tspan=[0 100];
x0=[0 0];
[t,x]=ode45(@nagumo, tspan, x);
This is a pretty simple ode calculation. However, where I get confused is when I'm trying to do the same thing as above but input Band-limited Guassian White Noise into the system such that the new equation would look like this:
function vprime = nagumo(t,v)
vprime=[v(1)-(1/3)*(v(1))^3-v(2)+WHITENOISE;
0.08*(v(1)+0.7-0.8*v(2))];
end
I am able to input white noise by simply adding wgn(1,1,0) and generating a response but have no way of saving that inputted white noise signal so that I can plot the output (what the ode solves) against the inputting white noise. Any help as to how I can do that?
  2 Comments
EL890
EL890 on 27 Mar 2018
Hi Mario,
I am currently encountering a similar issue with adding white noise to a nonlinear model in Matlab. Were you able to resolve this?
Kwin
Kwin on 12 Dec 2018
You could generate the noise in advance and interpolate, with something like zero- or first-order-hold. I think ode solvers would prefer foh over zoh since it is continuous. This will result into band-limited noise, so by choosing the interpolation interval appropriately you can assure that certain frequencies get excited.

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!