Filter löschen
Filter löschen

Solving complex integro-differential equation

2 Ansichten (letzte 30 Tage)
Jose Aroca
Jose Aroca am 13 Nov. 2020
Bearbeitet: Bruno Luong am 13 Nov. 2020
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 Kommentare
Walter Roberson
Walter Roberson am 13 Nov. 2020
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 am 13 Nov. 2020
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 .

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Bruno Luong
Bruno Luong am 13 Nov. 2020
Bearbeitet: Bruno Luong am 13 Nov. 2020
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.

Weitere Antworten (0)

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by