{ vector.i vpowers(var s: scalar; var v: vector); v[n]:=s^n vnorm(var v: vector; var r,x: scalar); x:=||v||_r sval(var v: vector; var r,x,y: scalar); y:=v(x) vzero(var v: vector); v:=0 vsub(var v1,v2: vector): boolean; v1 subset v2 vball(var r,s: scalar; var v: vector); v:= ball of radius r in B_s vpositive(var v: vector); cut negative part of v venlarge(var v: vector); v-analogue of senlarge vsum(var v1,v2,v3: vector); v3:=v1+v2 vadd(var v1,v2: vector); v2:=v1+v2 vdiff(var v1,v2,v3: vector); v3:=v1-v2 pscale(d2: integer; var s: scalar; var v1,v2: vector); vscale for polynomials vscale(var s: scalar; var v1,v2: vector); v2:=v1(s.), s>0. pexp(d2: integer; var s: scalar; var v: vector); polynomial part of vexp vexp(var s: scalar; v: vector); v:=exp(s.) vsprod(var s: scalar; var v1,v2: vector); v2:=s*v1 pder(d2: integer; var v1,v2: vector); polynomial part of vder vder(var s: scalar; var v1,v2: vector); v2:=v1' pprod(d2: integer; var v1,v2,v3: vector); polynomial part of vprod vprod(var t1,t2: scalar; var v1,v2,v3: vector); v3:=v1*v2 vsqr(var t: scalar; var v1,v2: vector); v2:=v1*v1 vdquot(var r: scalar; var v1,v2: vector); v2(x):=[v1(x)-v1(0)]/x ptrans(d2: integer; var sd: scalar; var v1,v2: vector); polynomial part of vtrans vtrans(d2: integer; var s,sd: scalar; var v1,v2: vector); v2:=v1(sd+.) vread(f: string; var r: scalar; var v: vector); read v from file named f vwrite(f: string; var v: vector); write v to file named f pconv(d2: integer; var vc,v1,v2: vector); polynomial part of vconv vconv(d2: integer; var c: scalar; var vk,v1,v2: vector); v2:=convolution(Gauss_c,v1) vconvinit(var c,r: scalar; var vk: vector); make bound vk for vconv Notes: Call vconvinit before using vconv. Arguments d2 are for integers 0..vdim Make sure that vdim