Re: Re: Adding Vectors -- Newbie help please
- To: mathgroup at smc.vnet.net
- Subject: [mg52041] Re: [mg52023] Re: Adding Vectors -- Newbie help please
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Mon, 8 Nov 2004 03:13:24 -0500 (EST)
- Reply-to: hanlonr at cox.net
- Sender: owner-wri-mathgroup at wolfram.com
Define a function to add polar forms
rect[{r_, theta_}] :=
Module[{t=theta Degree},r{Cos[t],Sin[t]}];
polar[{x_,y_}] :=
{Sqrt[x^2+y^2],ArcTan[x,y]/Degree}
addPolar[p__] := polar[Plus@@(rect/@{p})];
v1:={220,225}; v2:={100,16};
addPolar[v1,v2]//N
{141.127,-114.908}
v3={60,30};
addPolar[v1,v2,v3]//N
{98.2845,-94.3623}
Bob Hanlon
>
> From: motz art <music at heart.com>
To: mathgroup at smc.vnet.net
> Date: 2004/11/07 Sun AM 01:04:10 EST
> To: mathgroup at smc.vnet.net
> Subject: [mg52041] [mg52023] Re: Adding Vectors -- Newbie help please
>
> Ok; but I was hoping that there is a simpler way than the
> following method to add two ac voltage vectors (for example):
>
> (220V, 225 degrees)
> (100V, 16 degrees)
>
> Clear[r, x, y, Theta, rect, polar]
>
> rect[r_,Theta_] := { r Cos[Theta Pi/180] , r Sin[Theta Pi/180]}
> polar[x_, y_] := {Sqrt[x^2 + y^2], ArcTan[x, y]180/Pi}
>
> (* Input vectors here *)
> v1 := {220, 225};
> v2 := {100, 16};
>
> r1:= rect[v1[[1]], v1[[2]] ] // N;
> r2:= rect[v2[[1]], v2[[2]] ] // N;
> rt := p1 + p2
>
> polar[rt[[1]], rt[[2]]] // N
>
> This just seems so cumbersome, especially when compared to a
> scientific calculator.
>
>
>
> On Sat, 6 Nov 2004 07:36:05 +0000 (UTC), David Bailey
> <dave at Remove_Thisdbailey.co.uk> wrote:
>
> >motz art wrote:
> >> Mathematica v5: How can I input vectors in polar form and
> >> rectangular form?
> >>
> >> Example:
> >>
> >> a:= (r1, theta1) + (r2, theta2) Polar form.
> >>
> >> b:= (re1 , j* im1) + (re2, j*im2) Rectangular form
> >>
> >> I know this should be pretty basic, but I haven't found examples
> >> of this kind of input.
> >>
> >> I would guess it would be something like:
> >>
> >> Polar[magnitude, phase]
> >> Rectangular[Real, Imaginary]
> >>
> >> but, apparently not. (This is for electronics engineering.)
> >>
> >> Thanks for any help.
> >>
> >>
> >>
> >>
> >>
> >You can easily write a function to convert from polar to coordinate form:
> >
> >FromPolar[r_, theta_] := {r Cos[theta], r Sin[theta]}
> >
> >Note that this assumes your angles are measured in radians. Once all
> >your vectors are in coordinate form you can add/subtract then directly:
> >
> >{1,2}+(3,4}
> >
> >produces
> >
> >{4,6}
> >
> >Regards,
> >
> >David Bailey
>
>