Simulating multipath channel

I'm trying to simulate a multipath channel to see how it would affect my signal. So considering my channel is LTI, I can model it as an FIR filter. I've been reading Telecommunication Breakdown and looking at some examples and there's one thing I don't quite understand in page 183 (Chapter 9: Stuff happens, Section 9.4: Other Impairments: "More What Ifs")

if cdi < 0.5, % channel ISI
mc=[1 0 0 ] ; % distortion−free channel
elseif cdi<1.5 , % mild multipath channel
mc=[1 zeros (1 ,M) 0.28 zeros (1, 2.3*M) 0.11 ] ;
el se % harsh multipath channel
mc=[1 zeros (1, M) 0.28 zeros (1, 1.8*M) 0.44 ] ;
end


So cdi is a parameter to choose between distortion-free, mild or harsh multipath channel and mc is the resulting FIR filter. What I don't understand is:

1. What's the point on inserting zeros in between?
2. How does that make it mild or harsh?

Would you mind explaining that to me? Thanks

• Multipath channels are often modeled as FIR, but your logical step "LTI->can be modeled by FIR" is wrong. Could be an IIR, too. And physically, that's often closer to reality, but the FIR approximation happens to be good enough. – Marcus Müller Oct 29 '19 at 21:05
• Re 2: There's no "point" to that. That's the channel model they're using. It follows from their modelling of the physical channel. – Marcus Müller Oct 29 '19 at 21:08

1. You put zeros in between to show delay between the channel taps. I don't know what $$M$$ is in your code but suppose $$M=10$$ and say your sample rate is 10 MHz. Then you can interpret mc = [1 zeros(1, M) 0.28 zeros(1, 2.3*M) 0.11];  as you get the first multipath component with zero delay (gain = 1), then 10 zeros later (which is equal to 1 microsecond) you get another multipath component (gain = 0.28), and finally after another 2.8 microseconds you receive the last multipath component (gain = 0.11).