Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question about channel estimation #429

Open
lhupalo opened this issue May 2, 2024 · 1 comment
Open

Question about channel estimation #429

lhupalo opened this issue May 2, 2024 · 1 comment

Comments

@lhupalo
Copy link

lhupalo commented May 2, 2024

Hi there,

First of all, I would like to thank the contributors of Sionna for their amazing work! It's such a powerful tool for wireless simualtions!

I'm having some issues related to channel estimation (to be honest, I think that they're not issues, but misunderstanding of my part). I've built a scenario on blender with 1 BS w/ an antenna array of 16 elements and 1 UE w/ 1 antenna element only. Then I perform a batch of 32 simulations for a given UE position (x, y, z) on space. But each of the 32 positions has slightly different values, like they're floating around a point in space. In other words, I'm collecting one sample of a and tau for 32 slightly different positions on space. So, I have shapes:

Shape of the path gains:  (32, 1, 1, 1, 16, 40, 14)
Shape of the delays: (32, 1, 1, 1, 16, 40)

From this stage onwards, I've built an OFDM resource grid and used the cir_to_ofdm_channel method with and without the "normalize=True" flag.

Here's the deal: when I get the normalized channel frequency responses, all seems to work well on the estimation:
image

But when I use the non-normalized channel frequency responses, the estimator seems not to be able to treat the extremely low values of h_freq (order of 10^-6):
image

Obs.: I'm considering the same OFDM symbol on the plots.

I'm using the following scheme to estimate the channel:
ls_est = LSChannelEstimator(rg, interpolation_type="lin_time_avg")

Does anyone have some guidance in this context to help me, please?

Kindly,
Luiz

@SebastianCa
Copy link
Collaborator

Hi @lhupalo,

It might be that float32 quantization becomes a limiting factor for such small values or at least adds a significant amount of quantization noise. Have you tried using float64 (or complex128, respectively) instead? Does the problem also occur with nearest neighbour interpolation?

A general remark: this issue seems related to #420. In Sionna, we typically assume the existence of power control or link adaptation that ensures reasonable received power. However, this is managed by higher layer protocols and is not part of Sionna. For example, defining an effective SNR for your setup would be challenging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants