Subversion Repositories wimsdev

Rev

Rev 7692 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
20 reyssat 1
!if $wims_read_parm!=slib_header
13586 bpr 2
  !goto proc
20 reyssat 3
!endif
4161 bpr 4
 
20 reyssat 5
slib_parms=2\
6
  1,m\
7
  1,lambda
4330 bpr 8
slib_author=Sophie, Lemaire; Bernadette, Perrin-Riou
20 reyssat 9
 
10
slib_example= 5,2.5
3265 bpr 11
slib_require=octave
20 reyssat 12
!exit
13
 
14
:proc
15
 
16
!distribute item $wims_read_parm into slib_data, slib_lambda
17
 
18
slib_out=$empty
19
!default slib_m=1
20
!default slib_lambda=1
21
 
22
!!slib_ex=$[exp(-$slib_lambda)]
23
!!slib_q=$slib_ex
24
!!
25
!!
26
!!slib_U=!random 0,1 repeat $slib_m
27
!!
28
!!!for slib_i=1 to $slib_m
29
!! slib_V=!item $slib_i of $slib_U
30
!! slib_q=$slib_ex
31
!! slib_p=$slib_ex
32
!! slib_j=0
33
!!
34
!!!while $slib_V >= $slib_q
35
!!  !advance slib_j
36
!!  slib_p=$[$slib_p*$slib_a/$slib_j]
37
!!  slib_q=$[$slib_q+$slib_p]
38
!!!endwhile
7692 bpr 39
!!
20 reyssat 40
!!slib_out=!append item $slib_j to $slib_out
41
!!!next slib_i
42
 
43
 
44
slib_data=!declosing $slib_data
4328 bpr 45
slib_cnt=!itemcnt $slib_data
20 reyssat 46
!if $slib_cnt=1
47
	slib_data=1,$slib_data
4330 bpr 48
!endif
49
!!deprecated syntax
4328 bpr 50
!!slib_out=!exec octave poisson_rnd($slib_lambda,$slib_data)
4435 bpr 51
slib_out=!exec octave poissrnd($slib_lambda,$slib_data)
20 reyssat 52
 
4328 bpr 53
slib_out=!trim $slib_out
54
slib_out=!replace internal $\
55
$ by ; in $slib_out
20 reyssat 56
slib_out=!words2items $slib_out