Solving complex integro-differential equation

5 次查看(过去 30 天)
I want to solve the following integro-differential equation: , with the conditon c(0)=1, and plot its real part, that should look like a decaying exponential. I want to be able to choose the value of Omega. This is what I have tried so far but Matlab says "Warning: Unable to find symbolic solution". The line c1(t) = subs(c1(t),t,t/om) is for the x axis to be in dimensionless units (Omega*t)
clearvars
close all
omega = 0.3;
syms t om tau c1(t)
f(t) = exp(1i*om*(t-tau));
Fx = -int(f,tau,[-inf,inf]);
ode = diff(c1,t) == c1(t)/2*Fx;
cond = c1(0) == 1;
c1(t) = dsolve (ode);
c1(t) = subs(c1(t),t,t/om);
c1(t) = subs(c1(t),om,omega);
fplot ((real(c1(t))).^2,[0,10])
  8 个评论
Walter Roberson
Walter Roberson 2020-11-13
If it is a convolution there should be an f(tau)*f(t-tau) and that would make a big difference in the integral. You accidentally rewrote an integral that just might be convergent into an one that is not for real-valued omega.
Jose Aroca
Jose Aroca 2020-11-13
My original problem is , where is as described above. I have already solved this previously using a Laplace transform, but for this special case c is now only dependent on t, not tau (c(t)) so I am supposed to be able to plug it out of the integral and then .

请先登录,再进行评论。

采纳的回答

Bruno Luong
Bruno Luong 2020-11-13
编辑:Bruno Luong 2020-11-13
For omega with imag(omega) < 0, the solution of the integro-differential eqt
(dc/dt)(t) = -c(t)/2 * integral_0^inf exp(i*omega*(t-tau)) dtau
has analytic form and is
c(t) = c0 * exp( exp(i*omega*t) / (2*omega^2) )
where c0 is an arbitrary constant.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by