From Łukasz Graczykowski
(Difference between revisions)
|
|
(10 intermediate revisions not shown) |
Line 20: |
Line 20: |
| * Skrypt powienien być napisany w taki sposób aby wykonywał obliczenia dla dowolnego m i n. | | * Skrypt powienien być napisany w taki sposób aby wykonywał obliczenia dla dowolnego m i n. |
| * Należy oznaczyć i podpisać wszystkie osie. | | * Należy oznaczyć i podpisać wszystkie osie. |
- | * Funkcję rozkladu gestosci (obiekt TF2) tworzymy poprzez wykorzystanie funkcji jak poniżej (odpowiednio zdefiniowanej dla wszystkich wartości x i y): | + | * Funkcję rozkladu gestosci (obiekt TF2) tworzymy poprzez wykorzystanie konstruktora zawierającego wskaźnik na funkcję (odpowiednio zdefiniowanej dla wszystkich wartości x i y): |
| + | double fcn(double *x, double *params) |
| | | |
- | double density(double *x, double *params) | + | TF2(const char* name, void* fcn, Double_t xmin = 0, Double_t xmax = 1, Double_t ymin = 0, Double_t ymax = 1, Int_t npar = 0) |
| + | |
| + | Przykład: |
| + | double function(double *x, double *params) |
| + | { |
| + | if(x[0]>=0 && x[1]>=0) |
| + | return params[0]*x[0]*x[1]; |
| + | return 0; |
| + | } |
| + | ... |
| + | double xmin = 0; |
| + | double xmax = 10; |
| + | double ymin = 0; |
| + | double xmax = 10; |
| + | int nparams = 1; |
| + | TF2 * fun1 = new TF2("fun1",function,xmin,xmax,ymin,ymax,nparams); |
| | | |
| == Wynik == | | == Wynik == |
Latest revision as of 13:03, 5 March 2012
Zadanie
Dana jest gęstość prawdopodobieństwa:
Należy dla parametrów m=1 i n=2:
- wyznaczyć stałą c w taki sposób aby rozkład gęstości był unormowany (1pkt)
- narysować gęstość prawdopodobieństwa f(x,y) (1pkt)
- wyznaczyć i narysować dystrybuante F(x,y) (1pkt)
- wyznaczyć i narysować gęstość brzegową g(x) (1pkt)
- wyznaczyć i narysować gęstość brzegową h(y) (1pkt)
Uwagi
- Wszystkie wielkości (stałą c, dystrybuantę, gęstości brzegowe) wyznaczamy numerycznie np. wykorzystując metodę
Integral
.
- Skrypt powienien być napisany w taki sposób aby wykonywał obliczenia dla dowolnego m i n.
- Należy oznaczyć i podpisać wszystkie osie.
- Funkcję rozkladu gestosci (obiekt TF2) tworzymy poprzez wykorzystanie konstruktora zawierającego wskaźnik na funkcję (odpowiednio zdefiniowanej dla wszystkich wartości x i y):
double fcn(double *x, double *params)
TF2(const char* name, void* fcn, Double_t xmin = 0, Double_t xmax = 1, Double_t ymin = 0, Double_t ymax = 1, Int_t npar = 0)
Przykład:
double function(double *x, double *params)
{
if(x[0]>=0 && x[1]>=0)
return params[0]*x[0]*x[1];
return 0;
}
...
double xmin = 0;
double xmax = 10;
double ymin = 0;
double xmax = 10;
int nparams = 1;
TF2 * fun1 = new TF2("fun1",function,xmin,xmax,ymin,ymax,nparams);
Wynik
Wykresy:
Output:
Wspolczynnik normujacy c=6