Intégration numérique par la méthode de Simpson

Exemple de script PHP

Le bouton permet d'exécuter le script PHP.

<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta name="viewport"
	content="width=device-width, initial-scale=1.0">
<meta name="robots" content="NoIndex,NoFollow">
<title>Intégration numérique par
		la méthode de Simpson</title>
</head>
<body>
<?php
/*
	Données
*/
$a=0;
$b=1;
function f($x){
	return $x*exp($x)/pow ($x+1, 2);
}
$eps=1.0e-6;
/*
	Intégration numérique de la fonction f
	sur l'intervalle [a, b]
	par la méthode de Simpson
*/
echo "<p><b>Intégration numérique de la fonction
		<i>f</i> sur l'intervalle ["
		.$a
		.", "
		.$b
		."] par la méthode de Simpson</b></p>";
$h = ($b-$a)/2;
$s1 = f($a) + f($b);
$s2 = 0;
$s4 = f($a+$h);
$tn = $h*($s1 + 4*$s4)/3;
$zh = 2;
do{
	$ta = $tn;
	$zh = 2*$zh;
	$h = $h/2;
	$s2 = $s2 + $s4;
	$s4 = 0;
	$j = 1;
	do {
		$s4 = $s4 + f($a+$j*$h);
		$j = $j+2;
	} while ($j <= $zh);
	$tn = $h*($s1 + 2*$s2 + 4*$s4)/3;
	echo $tn."<br>";
} while (abs($tn-$ta) > $eps*abs($tn));
echo "<p>Approximation de Simpson = "
		.$tn
		."</p>";

echo "<p>Réponse précise = "
		.((exp(1)-2)/2)
		."</p>";
?>
</body>
</html>

Contact |  Accueil   >   PHP   >   Mathématiques numériques