Simulink filter using frequency response transfer function

Hi,
My main problem is this: I'm building a fiber optical communication system using simulink.
As a source, I use a bernoulli generator, then this signal runs to a low pass filter and the exit is the signal equivalent to a signal that comes off a led, so the emission part is done.
The problems begins at the transmission channel. I want to do a filter that simulates the dispersion effect in the fiber (only chromatic dispersion), but I don't know how. I only have a transfer functions like exp(-j*alpha*f.^2) and I don't know what to do with this. What's the right procedure to implement this kind of t.f. in a analog filter at the simulink?
Any help is welcome.
Kind regards

 采纳的回答

Here's a start:
beta = alpha/(2*pi)^2;
omega = 2*pi*f;
phi = -beta*omega.^2;
groupDelay = -2*beta*omega;
figure;
plot(f,groupDelay);
Fs = 2*max(f);
N = length(f);
spec = fdesign.arbgrpdelay(N,f,groupDelay,Fs);
chan = design(spec,'iirlpnorm','MaxPoleRadius',0.95);
fvtool(chan,'Analysis','grpdelay');

更多回答(1 个)

First let me thank you for answering, but I remain with some doubts.
Here the alpha that you speak is the attenuation? Because the alpha that I refer is a constant equals to pi^2*beta2*L, where L is the link distance, and beta2 is the group velocity delay.. And yes, I have all the toolbox of the simulink.

1 个评论

Hi,
May I ask how did you simulate the chromatic dispersion in simulink eventually? Thanks!
Best.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Optics 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by