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

I wonder if this tool supports link-level simulation under turbulence? #3

Open
goodgoodlearn opened this issue Jan 18, 2024 · 1 comment

Comments

@goodgoodlearn
Copy link

I mean, simulate sending bit stream and receiving bit stream and calculate bit error rate.

@ojdf
Copy link
Owner

ojdf commented Feb 6, 2024

Hi @goodgoodlearn, this is currently supported (experimentally) in the fast.comms.Modulator class. The usage would be something like this

import fast

modulation_scheme = "QAM" # see fast.comms.define_constellation for possible modulation schemes 
EsN0 = 10 # signal to noise per symbol

sim = fast.Fast("params_file.py")
sim.run()
# simulation will run and produce output 

mod = fast.comms.Modulator(sim.result.power, modulation_scheme,  EsN0)
mod.run()

print(mod.sep)

This would print out the symbol error probability for random bits given the channel characterised with the Fast simulation. I am also working on providing custom binary data (see the data kwarg to the Modulator class), if that is something you are interested in we can have a more detailed look.

Thanks
Ollie

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