From Łukasz Graczykowski
(Difference between revisions)
|
|
Line 29: |
Line 29: |
| { | | { |
| if(x[0]>0 && x[1]>0) | | if(x[0]>0 && x[1]>0) |
- | return params[0]*x[0]*y[0]; | + | return params[0]*x[0]*x[1]; |
| return; | | return; |
| } | | } |
Revision as of 09:48, 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 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 fcn(doyble *x, double *params)
{
if(x[0]>0 && x[1]>0)
return params[0]*x[0]*x[1];
return;
}
...
double xmin = 0;
double xmax = 10;
double ymin = 0;
double xmax = 10;
int nparams = 1;
TF2 * fun1 = new TF2("fun1",fcn,xmin,xmax,ymin,ymax,nparams);
Wynik
Wykresy:
Output:
Wspolczynnik normujacy c=6