Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
evalhf - ハードウェア浮動小数で評価する
使い方
evalhf(expr)
パラメータ
expr - 数値的に評価したい対象
説明
evalhf はシステムのハードウェア浮動小数上で数値的に評価します。評価は 2 倍長精度で行います。
evalhf は複素数引数または複素数の値を返すような特別な関数については、evalf を呼び出すことがあります。
evalhf の引数は 1 つの値であるか、datatype=float[8] または complex[8] で与えられる hfarray または rtable、または手続きである必要があります。evalf とは対照的に記号を解として返すことはできません。
evalhf によって評価される引数として標準関数 (例として sin や arctan) および Maple で定義した関数 (詳しくは evalhf/procedure を参照ください) などの関数を使うことができます。evalhf によって評価できる関数について詳しくは evalhf/procedure を参照ください。
evalhf は引数をハードウェア浮動小数に変換して解を計算し、その解を Maple 浮動小数で返します。故に、ユーザは evalhf で制限されたハードウェア浮動小数を扱うことはありません。
evalhf を呼び出し計算する利点は桁上がりの変換をしなくてもよいことです。
evalhf が datatype=float[8] または datatype=complex[8] の hfarray または rtable を返すとき、各要素にアクセスするまで、Maple 浮動小数に変換されません。アクセスされた時のみ変換されます。datatype=float[8] または complex[8] で与えられる hfarray または rtable を使うと、evalhf の呼び出しによるコストがほとんどなくデータを扱うことができます。
Maple で数値による計算のスピードを増すためや、ハードウェア浮動小数で計算を行うときに evalhf を指定します。
Digits を evalhf(Digits) (32-bit アーティテクチャでは約 15 ) の整数部分に指定すると、evalf と evalhf はほぼ同様の結果を出します。
例
evalhf(sin(exp(gamma+2)+ln(cos(Catalan))));
A := Matrix(3, 2, (i, j) -> i + j*I, datatype = complex[8]);
evalhf(map(sin, A));
f := proc(n) if n<2 then n else (n+1)*f(n-1)/n end if end proc: evalhf(f(100)+f(10)+f(1));
g := proc(x) x^5*ln(x)/(1+x^2) end proc: evalhf(g(2));
solutions:=solve(x^3=-3);
map(evalhf,[solutions]);
Digits := trunc( evalhf(Digits) );
evalf(g(2));
参照
evalhf/topic for the topics: procedures, arrays, fortran, constant, var, fcnlist, hfarray, rtable, boolean
Download Help Document