1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Statistické simulace v Pythonu

Connected

cvičení

Integrace jednoduché funkce

Toto je jednoduchá úloha, která tě seznámí s konceptem Monte Carlo integrace.

Budeme vyhodnocovat jednoduchý integrál \( \int_0^1 x e^{x} dx\). Přesný výsledek je \(1\), ale simulace nám dá přibližné řešení – výsledek by se tedy měl hodnotě \(1\) blížit. Jak jsme viděli ve videu, postup je přímočarý. Pro funkci jedné proměnné \(f(x)\):

  1. Zjisti meze osy x \((x_{min}, x_{max})\) a osy y \((\max(f(x)), \min(\min(f(x)), 0))\).
  2. Vygeneruj určitý počet rovnoměrně rozložených bodů v tomto obdélníku.
  3. Vynásob plochu obdélníku (\((\max(f(x) - \min(f(x))\times(x_{max}-x_{min})\)) podílem bodů, které leží pod \(f(x)\).

Po dokončení budeš mít k dispozici nástroj pro výpočet určitých integrálů pomocí Monte Carlo integrace.

Pokyny

100 XP
  • Ve funkci sim_integrate() vygeneruj rovnoměrně rozložená náhodná čísla mezi xmin a xmax a přiřaď je do x.
  • Vygeneruj rovnoměrně rozložená náhodná čísla mezi \(\min(\min(f(x)), 0)\) a \(\max(f(x))\) a přiřaď je do y.
  • Vrať podíl bodů, které jsou menší než \(f(x)\), vynásobený plochou obdélníku (\((\max(f(x) - \min(f(x))\times(x_{max}-x_{min})\)).
  • Nakonec pomocí lambda funkce definuj func jako \(x e^{x}\).