python
#python
Вопрос:
Я пытаюсь написать программу, которая будет имитировать фотон, испускаемый из этого спектра излучения
Если я выполню этот код миллион раз, результирующие энергии фотонов должны быть в состоянии воспроизвести указанный график, но каждый из них должен быть случайным. Это не обязательно должно быть очень точным, это просто для приближения. Я пишу это на python.
Комментарии:
1. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.
Ответ №1:
Сначала вам нужно дискретизировать распределение. Например, вместо выбора из непрерывного интервала [0, 60.5), вы будете выбирать из дискретного набора значений [0, 0.01, 0.02, ..., 60.49]
. (Форма вашего распределения покажет вам, насколько точным должно быть каждое значение.)
Далее вам нужно связать вес с каждым значением. Это просто значение y при заданной координате x.
Наконец, используйте random.choices
для выбора x
значения в соответствии с весами, выбранными выше.