C/erf
Deklaracja
[edytuj]#include <math.h> double erf (double x); float erff(float x); long double erfl(long double x); double erfc (double x); float erfcf(float x); long double erfcl(long double x); double lgamma (double x); float lgammaf(float x); long double lgammal(long double x); double tgamma (double x); float tgammaf(float x); long double tgammal(long double x);
Argumenty
[edytuj]- x
- argumenty funkcji
Opis
[edytuj]Funkcje z przyrostkami "f" i "l" to inne wersje odpowiedniej funkcji bez przyrostka operujące na innych typach danych. Z tego powodu w poniższym opisie odwołanie do konkretnej funkcji będzie oznaczać odwołanie się do wszystkich 3 wersji.
Funkcje obliczają następujące wartości:
- erf - wartość funkcji błędu w punkcie x, tj.
- ,
- erfc - wartość komplemetnarnej funkcji błędu w punkcie x, tj. , czyli
- ,
- lgamma - wartość logarytmu naturalnego z wartości bezwzględnej wartości funkcji gamma, tj. ,
- tgamma - wartość funkcji gamma w punkcie x, tj.
- .
Wartość zwracana
[edytuj]Wartości odpowiednich funkcji zgodnie z opisem powyżej.
Ponadto, jeżeli wystąpi nadmair funkcja zwraca w wyniku HUGE_VAL z odpowiednim znakiem i ustawia wartość zmeinnej errno na ERANGE. Jeśli wystąpi niedomiar funkcja w wyniku zwraca zero, a to czy do zmiennej errno zostanie zapisana wartość ERANGE zależy od implementacji.
Przykład użycia
[edytuj]W przygotowaniu: Dodać jakiś przykład uzycia. |
Dystrybuanta rozkładu normalnego o wartości oczekiwanej równej zero i wariancji równej jeden 0.5*(1+erf(x/sqrt(2)))
Uwagi
[edytuj]Wszystkie opisane tutaj funkcje zostały wprowadzone dopiero w standardzie C99.
W przypadku użycia funkcji matematycznych może zaistnieć konieczność podania odpowiedneigo argumentu linkerowi, aby ten połączył program z biblioteką matematyczną. Np. na systemach GNU/Linux jest to -lm.