Subversion Repositories wimsdev

Rev

Rev 7349 | 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,3];[3,1,9]\
[1,2,3;3,1,9]
slib_require=pari
!exit

:proc
slib_out=
!readproc slib/stat/dataproc $wims_read_parm

!if $slib_weight=$empty or $slib_data=$empty
  !exit
!endif
slib_x=$slib_data
slib_y=$slib_weight
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_vary=!sum (y-($slib_meany))^2 for y in $slib_y
slib_vary=$[$slib_vary]

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=$[($slib_varx)/$slib_cnt],$[($slib_covar)/$slib_cnt];$[($slib_covar)/$slib_cnt],$[($slib_vary)/$slib_cnt]
slib_out=!append line $[($slib_varx)/($slib_cnt-1)],$[($slib_covar)/($slib_cnt-1)];$[($slib_covar)/($slib_cnt-1)],$[($slib_vary)/($slib_cnt-1)] to  $slib_out