Subversion Repositories wimsdev

Rev

Rev 4330 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4330 Rev 13586
Line 1... Line 1...
1
!if $wims_read_parm!=slib_header
1
!if $wims_read_parm!=slib_header
2
!goto proc
2
  !goto proc
3
!endif
3
!endif
4
 
4
 
5
slib_parms=3\
5
slib_parms=3\
6
,[data]\
6
,[data]\
7
1,p\
7
1,p\
Line 15... Line 15...
15
 
15
 
16
!distribute  item $wims_read_parm into slib_data,slib_p,slib_N
16
!distribute  item $wims_read_parm into slib_data,slib_p,slib_N
17
 
17
 
18
!default slib_N=1000
18
!default slib_N=1000
19
!if  $slib_p<=0
19
!if  $slib_p<=0
20
slib_out=0
20
  slib_out=0
21
!exit
21
  !exit
22
!endif
22
!endif
23
slib_out=
23
slib_out=
24
slib_data=!declosing $slib_data
24
slib_data=!declosing $slib_data
25
 
25
 
26
slib_cnt= !itemcnt $slib_data
26
slib_cnt= !itemcnt $slib_data
27
!for slib_i =1 to $slib_cnt
27
!for slib_i =1 to $slib_cnt
28
slib_di=!item $slib_i of $slib_data
28
  slib_di=!item $slib_i of $slib_data
29
slib_P=0
29
  slib_P=0
30
slib_a=$[exp(-$slib_p)]
30
  slib_a=$[exp(-$slib_p)]
31
!for slib_k=0 to $slib_N
31
  !for slib_k=0 to $slib_N
32
slib_P=$[$slib_P+$slib_a]
32
    slib_P=$[$slib_P+$slib_a]
33
!if $slib_P>= $slib_di
33
    !if $slib_P>= $slib_di
34
slib_out=!append item  $slib_k to $slib_out
34
      slib_out=!append item  $slib_k to $slib_out
35
!break
35
      !break
36
!endif
36
    !endif
37
slib_a=$[$slib_p*$slib_a/($slib_k+1)]
37
    slib_a=$[$slib_p*$slib_a/($slib_k+1)]
38
!next slib_k
38
  !next slib_k
39
!next slib_i
39
!next slib_i
40
 
40
 
41
slib_out=!trim $slib_out
41
slib_out=!trim $slib_out