Subversion Repositories wimsdev

Rev

Rev 4330 | Blame | Compare with Previous | Last modification | View Log | RSS feed

!if $wims_read_parm!=slib_header
  !goto proc
!endif

slib_parms=1\
 ,[datax;datay] or [datax],[datay]
slib_author=Sophie, Lemaire; Bernadette, Perrin-Riou

slib_example =[1,2,-4],[1,5,6]\
[1,2,-4;1,5,6]
slib_require=pari
!exit

:proc
slib_out=

!readproc slib/stat/dataproc $wims_read_parm
slib_x=$slib_x
slib_y=$slib_y
!if $slib_y=$empty or $slib_x=$empty
  !exit
!endif
slib_cnt=!itemcnt $slib_x
slib_cnty=!itemcnt $slib_y
!if $slib_cnt<>$slib_cnty
  !exit
!endif

slib_meanx=!sum x for x in $slib_x
slib_meanx=$[($slib_meanx)/$slib_cnt]
slib_meany=!sum y for y in $slib_y
slib_meany=$[($slib_meany)/$slib_cnt]

slib_varx=!sum (x-($slib_meanx))^2 for x in $slib_x
!!slib_varx=$[$slib_varx/$slib_cnt]

slib_vary=!sum (y-($slib_meany))^2 for y in $slib_y
!!slib_vary=$[$slib_vary/$slib_cnt]

slib_covar=!exec pari print(sum(slib_t=1,$slib_cnt,([$slib_x][slib_t]-($slib_meanx))*([$slib_y][slib_t]-($slib_meany))));

slib_out=$[sqrt(($slib_varx)/($slib_vary))],$[$slib_covar/sqrt($slib_varx*($slib_vary))];$[$slib_covar/sqrt(($slib_varx)*($slib_vary))],$[sqrt(($slib_vary)/($slib_varx))]