How to use event solver to compute numerical solution to impulsively forced van der pol oscillator?

1 回表示 (過去 30 日間)
I want to use the event solver to find numerical solution to the van der pol equation with impulsive forcing on the right hand side.
I was told that I could use event solver to incorporate impulsive force on the system by first integrating using ode45 and by stopping the integration at time t when i want impulse force to exert and looping it over for multiple n.
How should I write a code on matlab if I want it to compute this for me? Should I start with unforced van der pol system and add the integration step then use the event solver? Or is there any other way to incorporate dirac delta function so that there won't be any problems in the integration process?

回答 (1 件)

Vaibhav Awale
Vaibhav Awale 2016 年 1 月 13 日
Hi,
One method I can think of is to approximate the impulse using a "heaviside" function and using that as an input to ode45 function. I am attaching a sample 'odeuse.m" script and "vdp10.m" function. I have approximated the impulse function using the below command:
>> u = 10*(heaviside(ut-10) - heaviside(ut-10.1));
You can adjust the peak of impulse and time period appropriately such that the integral over [-Inf, Inf] is 1. In this case the approximated impulse occurs at t = 10s.
Regards,
Vaibhav

カテゴリ

Help Center および File ExchangeOrdinary Differential Equations についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by