This is nice! I would be great to have a more
general version, and also to use it automatically
in cases where these expressions are likely to
occur.
For instance, I've seen some cases show up with the
form sin(f(atan(b))), where f is a function
and b is a number. At least some simple ones
can be done with solve() in the same way as
below.
--John
On 10/02/2013 05:03 PM, Aleksas Domarkas wrote:
> see:
> http://www.math.utexas.edu/pipermail/maxima/2013/034149.html
>
> Jaime Vilatte:
> Sure, but the question is:
> is there a simple process to realize that sin(atan(37/55)/3)=1/sqrt(26)
> and cos(atan(37/55)/3)=5/sqrt(26)?
> Can that process be implemented in Maxima?
>
> Example. Compute sin(atan(37/55)/3), cos(atan(37/55)/3).
>
> (%i1) r:x=sin(atan(37/55)/3);
> (%o1) x=sin(atan(37/55)/3)
> (%i2) asin(%);
> (%o2) asin(x)=atan(37/55)/3
> (%i3) %*3;
> (%o3) 3*asin(x)=atan(37/55)
> (%i4) sin(%);
> (%o4) sin(3*asin(x))=37/(13*sqrt(26))
> (%i5) trigexpand(%);
> (%o5) 3*x*(1-x^2)-x^3=37/(13*sqrt(26))
> (%i6) s:solve([%], [x]);
> (%o6)
[x=-(5*sqrt(78)+sqrt(26))/52,x=(5*sqrt(78)-sqrt(26))/52,x=1/sqrt(26)]
> (%i7) sublist(s,lambda([e],is(abs(rhs(r-e))<10^-10)));
> (%o7) [x=1/sqrt(26)]
>
> (%i8) r:x=cos(atan(37/55)/3);
> (%o8) x=cos(atan(37/55)/3)
> (%i9) acos(%);
> (%o9) acos(x)=atan(37/55)/3
> (%i10) %*3;
> (%o10) 3*acos(x)=atan(37/55)
> (%i11) cos(%);
> (%o11) cos(3*acos(x))=55/(13*sqrt(26))
> (%i12) trigexpand(%);
> (%o12) x^3-3*x*(1-x^2)=55/(13*sqrt(26))
> (%i13) s:solve([%], [x]);
> (%o13)
[x=-(sqrt(78)+5*sqrt(26))/52,x=(sqrt(78)-5*sqrt(26))/52,x=5/sqrt(26)]
> (%i14) sublist(s,lambda([e],is(abs(rhs(r-e))<10^-10)));
> (%o14) [x=5/sqrt(26)]
>
> best
>
> Aleksas D
>
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima