Subversion Repositories wimsdev

Rev

Rev 20 | Rev 4330 | Go to most recent revision | Details | Compare with Previous | 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=3\
6
  1,m\
7
  ,[p1,p2,..pj]\
8
  ,[v1,v2,..vj]
9
slib_author=S. Lemaire and Bernadette Perrin-Riou
10
 
11
slib_comment= P(X=v_i)=p_i
12
 
13
slib_example= 5,[0.5,0.5],[3,7]\
14
5,[1/3,1/3,1/3],[pile,face,tranche]
15
 
16
!exit
17
 
18
:proc
19
 
20
!distribute item $wims_read_parm into slib_m, slib_p,slib_v
21
 
22
slib_out=$empty
23
!default slib_m=1
24
slib_p=!declosing $slib_p
25
slib_v=!declosing $slib_v
26
slib_t=!itemcnt $slib_p
27
slib_s=!item 1 of $slib_p
28
slib_q=$slib_s
29
 
30
!for slib_i=2 to $[$slib_t -1]
31
  slib_a = !item $slib_i of $slib_p
32
  slib_s=$[$slib_s + $slib_a]
33
  slib_q=!append item $slib_s to $slib_q
34
!next slib_i
35
slib_q=!append item 1 to $slib_q
36
slib_U=!random 0,1 repeat $slib_m
37
 
38
!for slib_i=1 to $slib_m
39
 slib_pr=!item $slib_i of $slib_U
40
 slib_j=1
41
:debut
42
 slib_a=!item $slib_j  of $slib_q
43
 !if $slib_pr >= $slib_a
44
  !advance slib_j
45
  !goto debut
46
 !endif
47
 
48
slib_r= !item $slib_j of $slib_v
49
slib_out=!append item $slib_r to $slib_out
50
!next slib_i
51
 
52
slib_out =!trim $slib_out