integro-differential equation?
조회 수: 45 (최근 30일)
이전 댓글 표시
I have a problem which I will try to describe in details. Please try to help me, because the exam is coming :) The task is to find the solution of the differential equation as follows:
A*d2v/dt2+B*dv/dt+C*v-P(t)=0
P(t)=integral(fun(t,z)dz)
So I have the integral function implemented into the diff equation, where the integration is not by t-time but some different parameter in this case z-height.
I know, I am not so experienced programmer and MATLAB user but please give me some advice how to write the script. If you need some more info about the nature of that mysterious functions ask me.
댓글 수: 0
답변 (2개)
Roger Stafford
2016년 6월 27일
You should solve this using one of the ‘ode’ numerical differential equation functions for a second order equation in the ordinary way, with the exception that the function P(t) must be computed using matlab’s ‘integral’ function, which in turn uses the ‘fun’ function as its integrand. That means it will probably take a considerably longer time for execution because of the repeated full integration times. (I assume you know the limits of integration in P.)
You will of course have to furnish the ‘ode’ function the initial values of v and dv/dt at the initial value of t.
댓글 수: 2
Torsten
2016년 6월 27일
If you have a vector for P(t) at different time instances in advance (it seems P(t) does not depend on v in your case), take a look at the example "ODE with Time-Dependent Terms" under
to see how to deal with it.
Best wishes
Torsten.
Claudio Gelmi
2017년 1월 30일
Take a look at this MATLAB solver:
"IDSOLVER: A general purpose solver for nth-order integro-differential equations": http://dx.doi.org/10.1016/j.cpc.2013.09.008
Best wishes,
Claudio
댓글 수: 1
bloodtalon
2017년 6월 16일
Just a link like this isn't helping. Could you actually give some instructions on how to use it and/or some examples, preferably of the one in the question?
참고 항목
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!