MultiLink Scenario adaptation for 3 users

Hello VCCS team,

I am trying to adapt multiLink scenario for 3 users with different numerologies (15, 30 and 60kHz) use case. I am trying to do SINR analysis of the system and calculate longterm average SINR for each user. I have to find MSE of channel estimation so I could use it as one of the factors to calculate average SINR.

When I change scStr.simulation.channelEstimationMethod from Approximate-Perfect to PilotAided and leave all the other parametres as default I get the error: “Operands to the logical and (&&) and or (||) operators must be convertible to logical scalar values.”. If I change pilot pattern from Diamond to LTE Downlink and Uplink, I get the error: “Number of assigned pilot symbols is not devisible by orthogonal pilot sequence length!”

  1. Is there a reason why diamond pilot pattern can’t be used with pilot aided estimation?
  2. Is there a way to adjust number of assigned pilot symbols giver by default parameters in scenario so that LTE downlink and uplink pilot patter can be used?
  3. Where can I find a parameter that gives me the exact value of MSE of channel estimation?

Best regards,
Džana Pivač

Dear Džana,

  1. Which version of Matlab are you using? I ran the multiLink scenario with scStr.simulation.channelEstimationMethod = ‘PilotAided’ and I did not run in an error.

  2. The LTE downlink and uplink patterns are already implemented in the LL simulator. For the diamond pilot pattern, you can change the pattern by adapting the following parameters:

  • scStr.simulation.pilotSpacingFrequency
  • scStr.simulation.pilotSpacingTime
  1. The channel estimation MSE is stored in uplinkResults.userResults{1, iUE}.channelMSE

Best,
Mariam

1 Like

Dear Mariam,

thank you very much for your reply. I haven’t yet figured out resolution for the first error with using PilotAided estimation. I am using Matlab2021a and LL Simulator v1.2. I’ve tried running PilotAided estimation with other scenarios and it works perfectly fine, but I still get the same error with multiLink scenario.

Best regards,
Džana

For more details, I am getting error “Operands to the logical and (&&) and or (||) operators must be convertible to logical scalar values.” in the 1567th line in the file SimulationParameters.m.

Unfortunately, we are not able to reproduce this issue. Please use the link below to download the scenario I tested, and let me know if you are still experiencing the same problem.

Best,
Mariam

1 Like

Dear Mariam,

I used the scenario that you tested and I was still experiencing the same error. I saw that the error that I was experiencing is not directly connected to my scenario, so I tried commenting the problematic line in SimulationParameters.m. Now it works perfectly fine and I am able to get the right channel estimation MSE.

Best regards,
Džana

Dear Mariam,

I’ve successfully created MultiLink scenario for 3 users (3 BS, 3 UE, 3 links created). Everyone of those users is using different numerology (15kHz, 30kHz and 60kHz). Now, I need to find average SINR for each of those users. I’ve seen that feedback.m provides more information on calculating CQI from SINR, but I am not sure how to exclude the information about SINR for each user. If I run this scenario while enabling feedback, in uplinkResults.userResults.SNR I can see SNR values for each user but I still can’t figure out how to display SINR values.

Thank you for your time and best regards,
Džana

I am surprised you are experiencing this issue, but it works fine for me. Could you please tell me which line in SimulationParameters.m is causing this error?

Best,
Mariam

1 Like

The average SINR is calculated in the function in the Feedback object. If you are interested in the average SINR, I recommend using the effective SINR (effSNR). To include the SINR in the results, you have to do the following:

  • add the SINR as a property of the Feedback object
  • extend the function getResults in the Link object
  • extend the results objects

The effective SINR is the average SINR over all scheduled subcarriers, i.e., over one frame. Therefore, you would get an SINR for each frame. If you would like to have an average SINR over all frames, you would have to do the following

  • save the channel
  • calculate the SINR for all frame
  • use an averager (MIESM or EESM) to get an average SINR over all frames

Please note INI is not considered in the SINR calculation.

Best,
Mariam

1 Like

Dear Mariam,

the error that I am referring to is caused in the line 1567 in SimulationParameters.m.

Best,
Džana