PHPの数値計算ライブラリmathPHPを使う(3)数値積分を行う。台形則、シンプソンの公式、シンプソン3/8の公式、ブールの公式が使える。
今回は数値積分。これは簡単にこんな感じで。PHP、unicodeが変数名に使えるので$∫f⟮x⟯dxとかできる。
<?php
require_once __DIR__ . '/vendor/autoload.php';
use MathPHP\NumericalAnalysis\NumericalIntegration;
$f⟮x⟯ = function ($x) {
return 4 / (1 + $x * $x);
};
$∫f⟮x⟯dx = NumericalIntegration\TrapezoidalRule::approximate($f⟮x⟯, 0, 1, 101);
echo "Trapezoidal: ".$∫f⟮x⟯dx."\n";
$∫f⟮x⟯dx = NumericalIntegration\SimpsonsRule::approximate($f⟮x⟯, 0, 1, 101);
echo "Simpson : ".$∫f⟮x⟯dx."\n";
$∫f⟮x⟯dx = NumericalIntegration\SimpsonsRule::approximate($f⟮x⟯, 0, 1, 101);
echo "Simpson3/8 : ".$∫f⟮x⟯dx."\n";
$∫f⟮x⟯dx = NumericalIntegration\BoolesRule::approximate($f⟮x⟯, 0, 1, 101);
echo "Boole : ".$∫f⟮x⟯dx."\n";
|
結果はこうなった。
« UnityでVisual C#用の数値計算ライブラリMath.NET numericsを使う(1) まずはNuGetForUnityを使ってインストール。2Dゲーム画面に連立方程式を解いた結果を表示。 | トップページ | 「トライロバレット」(佐藤究さん)を読んだ。すごかった。三葉虫に魅せられた高校生がいじめの標的にされ、一方、戦争帰りの金物屋の店主は高校の上を軍用ヘリが飛んでいるという幻聴に悩まされ…一体これがどうつながるのか?と思ったら帯通り「少年は、変身した。」ヒーローに。 »
「パソコン・インターネット」カテゴリの記事
「学問・資格」カテゴリの記事
「日記・コラム・つぶやき」カテゴリの記事
« UnityでVisual C#用の数値計算ライブラリMath.NET numericsを使う(1) まずはNuGetForUnityを使ってインストール。2Dゲーム画面に連立方程式を解いた結果を表示。 | トップページ | 「トライロバレット」(佐藤究さん)を読んだ。すごかった。三葉虫に魅せられた高校生がいじめの標的にされ、一方、戦争帰りの金物屋の店主は高校の上を軍用ヘリが飛んでいるという幻聴に悩まされ…一体これがどうつながるのか?と思ったら帯通り「少年は、変身した。」ヒーローに。 »


コメント