Subversion Repositories wimsdev

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
20 reyssat 1
!if $wims_read_parm!=slib_header
2
!goto proc
3
!endif
4161 bpr 4
 
20 reyssat 5
slib_parms=4\
6
,[data]\
7
,N\
8
,n\
9
,k
10
 
11
slib_author=Bernadette PERRIN-RIOU
12
 
13
!exit
14
 
15
:proc
16
 
17
!distribute  item $wims_read_parm into slib_data,slib_N,slib_n,slib_K
18
 
19
slib_out=
20
slib_data=!declosing $slib_data
21
 
22
slib_cnt= !itemcnt $slib_data
23
slib_b= $[binomial($slib_N,$slib_n)^(-1)]
24
slib_min= $[max(0,$slib_b+$slib_K-$slib_N)]
25
slib_max= $[min($slib_n,$slib_N)]
26
!if $slib_max<$slib_min
27
slib_out=0
28
!exit
29
!endif
30
slib_PP=!values binomial($slib_k,x)*binomial($slib_N-$slib_K,$slib_n-x)*$slib_b for x = $slib_min to $slib_max
31
!for slib_i in $slib_data
32
slib_P=0
33
 
34
!for slib_k= 1 to to $[$slib_max -$slib_min+1]
35
slib_a=!item $slib_k of $slib_PP
36
slib_P=$[$slib_P+$slib_a]
37
!if $slib_P>= $slib_i
38
slib_out=!append item  $slib_k to $slib_out
39
!break
40
!endif
41
!next slib_k
42
!next slib_i
43
slib_out=!trim $slib_out