Because given awk atan2, it's relatively straightforward to "draw a simple triangle and derive the other inverse trig functions":
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print sin($1)}' |
awk '{print atan2($1,sqrt(1-$1^2))}'
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print cos($1)}' |
awk '{print atan2(sqrt(1-$1^2),$1)}'
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print sin($1)/cos($1)}' |
awk '{print atan2($1,1)}'
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print cos($1)/sin($1)}' |
awk '{print atan2(1,$1)}'
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print 1/cos($1)}' |
awk '{print atan2(sqrt(1-1/$1^2),1/$1)}'
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print 1/sin($1)}' |
awk '{print atan2(1/$1,sqrt(1-1/$1^2))}'
But I still managed to screw up the branch cuts.
Cut for length, repetition, math, and controversial content.
ETA: those last two were not so hot. Again:
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print 1/cos($1)}' |
awk '{print atan2(sqrt($1^2-1),1)}'
echo -1 -.9 -.8 -.7 -.6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 |
tr ' ' '\n' |
awk '{print 1/sin($1)}' |
awk '{print atan2(1,sqrt($1^2-1))}'