CakeFest 2024: The Official CakePHP Conference

atan

(PHP 4, PHP 5, PHP 7, PHP 8)

atan逆正接(アークタンジェント)

説明

atan(float $num): float

num のアークタンジェントをラジアンで返します。 atan()tan() の逆関数です。 つまり、atan() の定義域にある num の全ての値に対して、$num == tan(atan($num)) が成立します。

パラメータ

num

処理する引数。

戻り値

num のアークタンジェントをラジアンで返します。

参考

  • tan() - 正接(タンジェント)
  • atanh() - 逆双曲線正接(アークハイパボリックタンジェント)
  • asin() - 逆正弦(アークサイン)
  • acos() - 逆余弦(アークコサイン)

add a note

User Contributed Notes 4 notes

up
11
Anonymous
9 years ago
Contrary to the current description, it should hold y == tan(atan(y)) for ALL y.
However, x == atan(tan(x)) only holds for those x which are in the range of atan, which are those x with -pi/2 < x < pi/2.

Of course, those equalities are limited by precision. On my machine
tan(atan(1000)) returns 1000.0000000001.
atan(tan(0)) returns 0 (correct).
atan(tan(M_PI)) returns -1.2246467991474E-16 instead of 0.
up
1
darren_wheatley at hotmail dot com
20 years ago
Arc Tan curve manipulation.

I used this formula to help with increasing and then diminishing return for y given an increasing x for a game.

Ie: Food production (output) is y. Food research is x.

The more research you put into x the more you produce, however after a certain point you get less reward.

y = atan(x - pi()) + pi()/2;

The + pi()/2 moves it up the y axis so you'd add more if you want it to start higher.

The x - pi() moves it to the right so you'd minus more to move it more.

If you want stretched along the y axis change it to 2 * atan( ...... )

Dunno how useful it is... but it's there.

Daz
up
0
joelperr at kiwi-interactif dot com
18 years ago
to obtain the direction of the line, you are better to use the <? atan2((y2-y1)/(x2-x1)) ?> function, since the regular atan function will only return arguments in the half-plane, ie. if y2-y1 and x2-x1 are negative, atan will give you an angle measurement less than 90 degrees, while it really should be between 180 and 270
up
-8
Ts.Saltan
7 years ago
arcctg function

function actg($arg){
return acos($arg/(sqrt(1 + $arg * $arg)));
}
To Top