Location : Home > Languages > Perl > Package Title : Math::FresnelZone |
![]() |
Math::FresnelZone - 所与の距離と周波数におけるフレネル帯半径(Fresnel Zone Radius)を計算
use Math::FresnelZone; use Math::FresnelZone qw(fresnel fresnelMi fresnelKm);
引数は以下の通り:
fresnel()
my $fresnel_zone_radius_in_meters = fresnel(); # 周波数 2.4 GHz で1kmの距離におけるフレネル帯半径 my $fzr_in_meters = fresnel(5); # 周波数 2.4 GHz で5kmの距離におけるフレネル帯半径[m] my $fzr_in_meters = fresnel(5,4.8); # 周波数 4.8 GHz で5kmの距離におけるフレネル帯半径[m] my $fzr_in_feet = fresnel(3,9.6,1); # 周波数 9.6 GHz で3マイルの距離におけるフレネル帯半径[ft]
キロメートルで入力した場合、結果はメートルで返す。(以下の3つの呼び出しは独立の結果を返す。)
fresnel($Km,$GHz); fresnelKm($Km,$GHz); # fresnelKm() に関する情報を参照のこと。 fresnel($Km,$GHz,0);
マイルで入力した場合(3つめの引数がTrueの場合)、結果はフィートで返す。(以下の2つの呼び出しは独立の結果を返す。)
fresnel($Mi,$GHz,1); fresnelMi($Mi,$GHz); # fresnelMi() に関する情報を参照のこと。
fresnelKm()
キロメートル/メートルで処理したいときに簡単にする関数。最初の2つの引数のみでよい:距離はキロメートル、周波数はギガヘルツ。
my $fzr_in_meters = fresnelKm($Km,$GHz);
fresnelMi()
マイル/フィートで処理したいときに簡単にする関数。最初の2つの引数のみでよい:距離はマイル、周波数はギガヘルツ。
my $fzr_in_feet = fresnelMi($Mi,$GHz);
EXPORT
デフォルトではない。概要で述べた3関数はエキスポート可能である。
VARIABLES
以下の変数は、公式の入力及びユーザへの出力を変更するためにキロメートル/メートルの代わりにマイル/フィートを用いることができる。
$Math::FresnelZone::KILOMETERS_IN_A_MILE (デフォルトは 1.609344) $Math::FresnelZone::FEET_IN_A_METER (デフォルトは 3.280839)
必要であれば、精度を変更してもよい。
フレネル帯(fresnel zone)についてさらに詳しく知りたければ Augustin Jean Fresnel という名前の後に formula/zone をつけてググればよい。
フレネル氏(1788-1827)は光の波動理論を研究したフランスの物理学者で、灯台で用いられる偏光レンズ(すなわちフレネルレンズ "Fresnel lens")を発明した。
"Fresnel Zone" というフレーズでググれば、フレネル帯とは何かについての興味深い用語解説を見つけることができるだろう。
以下に記すリンクはフレネル帯とその公式を図示したものである。http://drmuey.com/images/fresnelzone.jpg
Daniel Muey, http://drmuey.com/cpan_contact.pl
Copyright 2004 by Daniel Muey
本ライブラリはフリーソフトであり、Perl 本体と同条件で修正/再配布してもよい。
![]() |
Updated : 2006/07/02 |