File: odephase

package info (click to toggle)
wims 2%3A4.29a%2Bdfsg1-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 185,704 kB
  • sloc: xml: 366,687; javascript: 120,570; ansic: 62,341; java: 62,170; sh: 7,744; perl: 3,937; yacc: 3,217; cpp: 1,915; lex: 1,805; makefile: 1,084; lisp: 914; pascal: 601; python: 520; php: 318; asm: 7
file content (97 lines) | stat: -rw-r--r-- 2,524 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
!if $wims_read_parm!=slib_header
  !goto proc
!endif
slib_author=Bernadette, Perrin-Riou

slib_parms=9\
,f1\
,f2\
-2,xmin\
2,xmax\
-2,ymin\
2,ymax\
red,color\
0,size of the arrow\
,option: html, url\

slib_example= x+2-y, x^2-y,-2,2,-2,2,green,8,html\
x+y,x-y,,,,,,,html\
x+y,x-y
!exit

:proc
slib_out=

!distribute items $wims_read_parm into slib_f1, slib_f2,slib_XMIN,slib_XMAX,slib_YMIN,slib_YMAX,slib_color,slib_ARROW_WIDTH
slib_option=$($wims_read_parm[-1])
!default slib_LIM = 20
!default slib_NTEST = 50
!default slib_MINDIV = 2
!default slib_MAXCOUNT = 50
!default slib_XDIV = 25
!default slib_YDIV = 25
!default slib_zoom = 2.0
!default slib_XMIN = -$slib_zoom
!default slib_YMIN = -$slib_zoom
!default slib_XMAX = $slib_zoom
!default slib_YMAX = $slib_zoom
!default slib_ARROW_LEN = 3
!default slib_ARROW_WIDTH = 0
!default slib_color=red

!readproc slib/analysis/phase.gp
slib_prog =$program_gp
slib_image = !exec pari color=$slib_color ;\
dx(x,y) = $slib_f1;\
dy(x,y) = $slib_f2;\
LIM = $slib_LIM; NTEST = $slib_NTEST; MINDIV = $slib_MINDIV; MAXCOUNT = $slib_MAXCOUNT;\
XDIV = $slib_XDIV; YDIV = $slib_YDIV; XMIN = $slib_XMIN; YMIN = $slib_YMIN; XMAX = $slib_XMAX;\
YMAX = $slib_YMAX; ARROW_LEN = $slib_ARROW_LEN; ARROW_WIDTH = $slib_ARROW_WIDTH ;\
$slib_prog ; print([img,ARROW]);

slib_image = !declosing $slib_image
!distribute items $slib_image into slib_image, slib_ARROW
slib_ARROW = !exec pari mattranspose($slib_ARROW)
slib_image = !declosing $slib_image
slib_img = !trim $slib_image
slib_img = !nonempty lines $slib_img
slib_img = !declosing $slib_img

slib_img2 =
slib_img_cnt =!itemcnt $slib_img
!for slib_i = 2 to $slib_img_cnt
  slib_im = !item $slib_i of $slib_img
  slib_im = !exec pari mattranspose($slib_im)
  slib_im =!declosing $slib_im
  slib_im = polyline $slib_color, $slib_im
  slib_img2 = !append line $slib_im to $slib_img2
!next slib_i

slib_img = !translate internal ; to $\
$ in $slib_img2
slib_ARROW = !translate internal ; to $\
$ in $slib_ARROW
slib_ARROW = !replace internal arrow, by arrow $    in $slib_ARROW

slib_out = $slib_img

!if $slib_ARROW_WIDTH != 0
  slib_out =$slib_out\
  $slib_ARROW
!endif
slib_out=xrange $slib_XMIN, $slib_XMAX\
yrange $slib_YMIN, $slib_YMAX\
hline 0,0,black\
vline 0,0,black\
$slib_out

!if url iswordof $slib_option or html iswordof $slib_option
  insdraw_size=200,200
  !insdraw $slib_out
  slib_out=$ins_url
  !if html iswordof $slib_option
    slib_out=<img src="$ins_url" alt="">
  !else
    slib_out=$slib_out,$insdraw_size
  !endif
!endif