>> From: "A. van der Meer" "meerawj"
The following session shows a serious bug in the procedure
ArcLength.
> restart; with(VectorCalculus):
#
Warning, the assigned names <,> and <|> now have a global binding
Warning, these protected names have been redefined and unprotected: *,
+, ., Vector, diff, int, limit, series
> v := VectorField( <vx(x,y),vy(x,y)>, cartesian[x,y] );
_ _
v := vx(x, y) e + vy(x, y) e
x y
> k := <X(t),Y(t)>;
k := X(t) e + Y(t) e
x y
> LineInt( v, Path( k, t=a..b ) );
b
/
| /d \ /d \
| vx(X(t), Y(t)) |-- X(t)| + vy(X(t), Y(t)) |-- Y(t)| dt
| \dt / \dt /
/
a
> ArcLength( k, t=a..b );
b
/
| //d \2 /d \2\1/2
| ||-- X(t)| + |-- Y(t)| | dt
| \\dt / \dt / /
/
a
# Perfect.
# But when I calculate the lineintegral again I get:
> LineInt( v, Path( k, t=a..b ) );
b
/ / 2 \
| d d |d |
| vx(-- X(t), -- Y(t)) |--- X(t)|
| dt dt | 2 |
/ \dt /
a
/ 2 \
d d |d |
+ vy(-- X(t), -- Y(t)) |--- Y(t)| dt
dt dt | 2 |
\dt /
# The call of ArcLength seems to have changed the value of k.
> k;
/d \ /d \
|-- X(t)| e + |-- Y(t)| e
\dt / x \dt / y
>
A. van der Meer
University of Twente
Dept. of Applied Mathematics
P.O.Box 217 7500AE Enschede
tel 053 489 4293
room WB-N232
|