Temat: perl i funkcje trygonometryczne

Witam, mam skrypt perl który robi mi pewne rzeczy, do których potrzebne mu są funkcje trygonometryczne (sin cos atan), czy da się to jakość zainstalować na openwrt (zainstalowałem już wszystkie pakiety z "perl" w nazwie, niestety nie ma czegoś takiego jak CPAN i możliwość instalowania pakietów (m.in Math:Trig)

mam TP-LINK TL-MR3220 i Gargoyle PL 1.5.9.9 (bfb6d5f).

Jakieś pomysły?

2

Odp: perl i funkcje trygonometryczne

A tam nie ma. perlbase-math zainstaluj.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez diunida 2013-05-01 21:36:16)

Odp: perl i funkcje trygonometryczne

dobra, mam cos i sin, ale potrzebuję jeszcze atan, jest gdzieś ??
chyba że nazywa się jakoś inaczej (w odróżnieniu od perla na "dużego" linuksa

Undefined subroutine &main::atan called at ./test line 30.

nie przyjmuje też wpisu:
use Math::Trig;

4

Odp: perl i funkcje trygonometryczne

Szukaj gdzie jest...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: perl i funkcje trygonometryczne

funkcja atan jest w pliku /usr/lib/perl5/5.10/Math/Complex.pm
ale dalej nie liczy:
Undefined subroutine &main::atan called at ./test line 30.

6

Odp: perl i funkcje trygonometryczne

atan2 tam jest.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: perl i funkcje trygonometryczne

jest, ale jak go użyć, i co zwraca, potrzebuje 2 argumentów, wyczytałem że Y/X,
sprawdziłem, nada mi się, ale muszę pozmieniać trochę w skrypcie (z powodu tych 2 argumentów)

dlaczego atan nie działa ?? sad

8

Odp: perl i funkcje trygonometryczne

W Math/Complex.pm go nie ma. Gdzie on jest normalnie w perlu?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: perl i funkcje trygonometryczne

jest w Math/Complex.pm i w normalnym perlu i w openwrt, w normalnym w linii 1033 w openwrt 698, oczywiście zależy to od wersji:
sub atan {
<------>my ($z) = @_;
<------>return CORE::atan2($z, 1) unless ref $z;
<------>my ($x, $y) = ref $z ? @{$z->_cartesian} : ($z, 0);
<------>return 0 if $x == 0 && $y == 0;
<------>_divbyzero "atan(i)"  if ( $z == i);
<------>_logofzero "atan(-i)" if (-$z == i); # -i is a bad file test...
<------>my $log = &log((i + $z) / (i - $z));
<------>return _ip2 * $log;
}

10

Odp: perl i funkcje trygonometryczne

mimo że funkcja atan jest, to nie działa, do atan2 będę musiał przerobić spory kawałek skryptu.

11

Odp: perl i funkcje trygonometryczne

Odpowiadam sobie, atan i inne funkcje są, problemem było to że nie wszystkie "kawałki" perla były zainstalowane, po instalacji brakujących części, wszystko chodzi cacuś.

Dzięki Cezary za pomoc, bez ciebie było by dużo dłużej.

12

Odp: perl i funkcje trygonometryczne

To jeszcze napisz czego brakowało.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: perl i funkcje trygonometryczne

Mam to (ale instalowałem jeszcze Device::SerialPort):
AutoLoader.pm
Carp.pm
Config.pm
Config_heavy.pl
DynaLoader.pm
Errno.pm
Exporter.pm
Fcntl.pm
IO.pm
POSIX.pm
SelectSaver.pm
Symbol.pm
Tie
XSLoader.pm
constant.pm
integer.pm
lib.pm
locale.pm
overload.pm
strict.pm
subs.pm
timelocal.pl
vars.pm
warnings.pm