module Infinitesimal:sig..end
Conventions
Vectors are rows of scalars (float or int), of type float array or int array.
A (bidimensional) matrix is a row vector,
each element of which being a row of the matrix.
Matrices are of type float array array or int array array.
Warning
When using local inversion, an exception probably means that some process of local inversion passed through a critical point. The problem may arise during search of zeros or of critical points. In this case, the start point has to be changed, or some method of zero finding should differentiate up to a lower order, or some parameters have to be tuned. Sometimes diminishing the maximum number of steps might avoid the difficulty.
Sources
Most of the data and algorithms have been harvested on the internet.
Among the sites, one may quote wikipedia.org about the derivatives, the ordinary differential equations, the miscellaneous transforms
and http://people.sc.fsu.edu/~jburkardt and ACM algorithms http://www.netlib.org/toms/index.html about integration.
For the differential calculus, much comes from E. Ramis, C. Deschamps, J. Odoux : Cours de mathématiques spéciales tome 5, Masson, Paris 1981 ;
J Lelong_Ferrand, J.-M. Arnaudiès : Cours de mathématiques tome 3, Dunod, Paris.
For elliptic integrals, the definitions follow V. Prasolov, Y. Solovyev : Elliptic functions and elliptic integrals, AMS mathematical monographs, Providence 1997.
For the distributions, the curious reader will find a study of the links with the lambda-calculus in O. P. Misra : Distribution htoery in computer science, SCI TECH publishing, Houston 2002 ;
nevertheless we limit ourselves to the definitions of L. Schwartz : Théorie des distributions, Hermann, Paris 1966.
This module is distributed under the same licence as Ocaml.
La mathématicienne ou le mathématicien trouvera dans ce module des méthodes pour :
Conventions
Les vecteurs sont des lignes de scalaires (float ou int), de type float array ou int array.
Une matrice (bidimensionnelle) est un vecteur ligne
dont chaque élément est une ligne de la matrice.
Les matrices sont de type float array array ou int array array.
Avertissement
En utilisant des inversions locales, une exception signifie probablement qu'un procédé d'inversion locale est passé par un point critique. Le problème peut se produire aussi pendant la recherhe d'un zéro ou d'un point critique. Dans ce cas, il faut changer le point de départ, ou prendre une méthode de recherche de zéro qui dérive moins, ou ajuster divers paramètres. Parfois, diminuer le nombre maximal de pas suffit à contourner la difficulté.
Sources
La plupart des données et algorithmes ont été glanés sur internet.
Parmi les sites, on peut citer wikipedia.org concernant la dérivation, les équations différentielles ordinaires,
les transformées diverses et http://people.sc.fsu.edu/~jburkardt concernant l'intégration.
Pour le calcul différentiel, beaucoup provient de E. Ramis, C. Deschamps, J. Odoux : Cours de mathématiques spéciales tome 5, Masson, Paris 1981 ;
J Lelong_Ferrand, J.-M. Arnaudiès : Cours de mathématiques tome 3, Dunod, Paris .
Pour les intégrales elliptiques, les définitions suivent V. Prasolov, Y. Solovyev : Elliptic functions and elliptic integrals, AMS mathematical monographs, Providence 1997.
Pour les distributions, le lecteur curieux trouvera une étude des liens avec le lambda-calcul dans O. P. Misra : Distribution htoery in computer science, SCI TECH publishing, Houston 2002 ;
néanmoins nous nous limitons aux définitions de L. Schwartz : Théorie des distributions, Hermann, Paris 1966.
Ce module est distribué selon la même licence qu'Ocaml.
include Util
val sqrt_of_2 : floatval sqrt_of_3 : floatval sqrt_of_5 : floatval sqrt_of_6 : floatval sqrt_of_15 : floatval inv_sqrt_of_2 : floatval inv_sqrt_of_3 : floatval pi : floatval halfpi : floatval quarterpi : floatval doublepi : floatval inv_sqrt_pi : floatval inv_doublepi : floatval inv_sqrt_doublepi : floatval log_of_2 : floatval heaviside_step : float -> floatheaviside_step float
val unit_bowl_indic : float array -> floatunit_bowl_indic vector
val bowl_indic : float array -> float -> float array -> floatbowl_indic center radius vector
val float_sign : float -> floatfloat_sign float
val int_sign : int -> intint_sign float
val low_stirling : float -> floatlow_stirling real
val up_stirling : float -> floatup_stirling real
val stirling_bis : float -> floatstirling_bis
val half_unit_circle : float -> floathalf_unit_circle float
val gauss_bell : float -> floatgauss_bell float
val sin_inv : float -> floatsin_inv float
val sinc : float -> floatsinc float
val nsinc : float -> floatnsinc float
val real_float_solve_degree_2 : float -> float -> float -> float arrayreal_float_solve_degree_2 a b cGives the two solutions of
a x ^ 2 + b x + c = 0.
Donne les deux solutions x de a x ^ 2 + b x + c = 0.
val unit_circle : float -> float arrayunit_circle angle
val ellipse : float -> float -> float -> float arrayellipse a b t
val hyperbola : float -> float -> float -> float arrayhyperbola a b t
val polar_curve : (float -> float) -> float -> float arraypolar_curve function angle
val polar_curve_bis : (float -> float) -> float -> float arraypolar_curve_bis function angle
val rotating_frame : (float -> float array) -> float -> float arrayrotating_frame function angle
val cycloid : float -> float -> float -> float arraycycloid rotating_radius drawing_radius time
val trochoid : float -> float -> float -> float -> float -> float -> float -> float arraytrochoid big_radius signed_rotating_radius time
val epicycloid : float -> float -> float -> float arrayepicycloid big_radius signed_rotating_radius time
val cardioid : float -> float arraycardioid time
val nephroid : float -> float arraynephroid time
val hypocycloid_3 : float -> float arrayhypocycloid_3 time
val astroid : float -> float arrayastroid time
val conic : float -> float -> float -> float arrayconic excentricity parameter time
val tractrix : float -> float -> float arraytractrix parameter time
val helicoid : float -> float -> float -> float arrayhelicoid radius step float
val spherical_loxodromy : float -> float -> float -> float arrayspherical_loxodromy radius parameter angle
val revolution_surface : (float -> float) -> float array -> float arrayrevolution_surface function parameters
val pseudo_sphere : float array -> float arraypseudo_sphere parameters
val cyl_coord_unit_sphere : float array -> float arraycyl_coord_unit_sphere parameters
val sph_coord_unit_sphere : float array -> float arraysph_coord_unit_sphere parameters
val cyl_coord_ellipsoid : float -> float -> float -> float array -> float arraycyl_coord_ellipsoid a b c parameters
val sph_coord_ellipsoid : float -> float -> float -> float array -> float arraysph_coord_ellipsoid a b c parameters
val graph_ellipsoid : float -> float -> float -> float array -> floatgraph_ellipsoid a b c parameters
val ln : float -> float arrayln float
val log_bin : float -> floatlog_bin float
f(0) = 0 ; f(0.5) = 0.5 ; |x| >= 1 ===> f( x ) = 0.
Les quatre fonctions régularisantes qui suivent sont paires.
Leurs dérivées s'annulent en zéro jusqu'à l'ordre égal au nombre du nom moins un.
Elles sont plates en x=1.
Elles satisfont aux trois conditions précédentes.
val float_decay_16 : float -> floatfloat_decay_16 real
val float_decay_8 : float -> floatfloat_decay_8 real
val float_decay_4 : float -> floatfloat_decay_4 real
val float_decay_2 : float -> floatfloat_decay_2 real
val regular_truncature_right : (float -> float) -> float -> float -> float -> floatregular_truncature_right function cliff beach real
val regular_truncature_left : (float -> float) -> float -> float -> float -> floatregular_truncature_left function cliff beach real
val partition_of_1_table : (float -> float) -> float -> float -> float -> float -> float -> floatpartition_of_1_table function left_foot left_cliff right_cliff right_foot
val partition_of_1_gap : (float -> float) -> float -> float -> float -> float -> float -> floatpartition_of_1_gap function left_cliff left_bottom right_bottom right_cliff
val float_polynomial_1 : float array -> float -> floatfloat_polynomial_1 coefficients real
val float_polynomial_2 : float array array -> float -> float -> floatfloat_polynomial_2 coefficients x yThe coefficients are given in a matrix. The columns match the increasing powers of the second varaible y, the rows match the increasing powers of the first variable x.
Les coefficients sont stockés dans une matrice. Les colonnes correspondent aux puissances croissantes de la deuxième variable y,
les lignes aux puissances croissantes de la première variable x.
val float_rational_1 : float array -> float array -> float -> floatfloat_rational_1 coefficients_up coefficients_down real
val float_rational_2 : float array array -> float array array -> float -> float -> floatfloat_rational_2 coefficients_up coefficients_down realThe coefficients of the dividend and of the divisor are given by matrices as in the case of polynomials in two variables.
Les coefficients du numérateur et du dénominateur sont donnés dans des matrices comme pour les polynômes à deux variables.
val float_approx_deriv : float -> (float -> float) -> float -> floatfloat_approx_deriv step function float
val float_richardson_binary_deriv : int -> float -> (float -> float) -> float -> floatfloat_richardson_binary_deriv degree step function float
val compensated_float_richardson_binary_deriv : int -> float -> (float -> float) -> float -> floatcompensated_float_richardson_binary_deriv degree step function float
val float_richardson_deriv : float -> int -> float -> (float -> float) -> float -> floatfloat_richardson_deriv radix degree step function real
val compensated_float_richardson_deriv : (float array -> 'a) ->
float -> int -> float -> (float -> float) -> float -> 'acompensated_float_richardson_deriv accelerator radix degree step function floatA convergence accelerator for real sequences must be provided, like for instance
Matrix.float_approx.
Il faut fournir un accélérateur de convergence de suites réelles, comme par exemple Matrix.float_approx.
val vector_speed : ((float -> float) -> float -> 'a) ->
(float -> float array) -> float -> 'a arrayvector_speed methode function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val matrix_speed : ((float -> float) -> float -> 'a) ->
(float -> float array array) -> float -> 'a array arraymatrix_speed methode function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val acceleration : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float arrayacceleration methode function floatThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val matrix_acceleration : ((float -> float) -> float -> float) ->
(float -> float array array) -> float -> float array arraymatrix_acceleration methode function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val partial : int -> float array -> float -> float arraypartial index vector floatThis function replaces the coordinate number
i by the variable x inside of the vector v.
Cette fonction remplace la coordonnée numéro i par la variable x dans le vecteur v.
val matrix_partial : int -> int -> float array array -> float -> unitmatrix_partial index vector float
val gradient : ((float -> float) -> float -> 'a) ->
(float array -> float) -> float array -> 'a arraygradient methode function vectorThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val tlm : ((float -> float) -> float -> 'a) ->
(float array -> float array) -> float array -> 'a array arraytlm methode function vectorThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val div : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatdiv methode function vectorThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val det_jac : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatdet_jac methode function vectorThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val rot_curl : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> float arrayrot_curl methode function vectorThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val hess : ((float -> float) -> float -> float) ->
(float array -> float) -> float array -> float array arrayhess methode function vectorThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_jet : ((float -> float) -> float -> float) ->
int -> (float -> float) -> float -> float arrayfloat_jet methode order functionThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_poly_coeff : ((float -> float) -> float -> float) ->
int -> (float -> float) -> float -> float arrayfloat_poly_coeff methode order functionThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_jet : ((float -> float) -> float -> float) ->
int -> (float -> float array) -> float -> float array arrayvector_jet methode order function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val matrix_jet : ((float -> float) -> float -> float) ->
int -> (float -> float array array) -> float -> float array array arraymatrix_jet methode order function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val graph_curvature : ((float -> float) -> float -> float) -> (float -> float) -> float -> floatgraph_curvature methode function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val curvature_2 : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> floatcurvature_2 methode function realThe fonction must take its values in R^2. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction doit être à valeurs dans R^2.
val developpee_2 : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float arraydeveloppee_2 methode function realThe fonction must take its values in R^2. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction doit être à valeurs dans R^2.
val parallel_arc_2 : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float -> float arrayparallel_arc_2 methode function realThe fonction must take its values in R^2. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction doit être à valeurs dans R^2.
val curvature : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> floatcurvature methode function realThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val serret_frenet_3 : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float array arrayserret_frenet_3 methode function realThe fonction must take its values in R^3. The (unidimensional) derivating method must contain the parameters, including the step. The output gives the (curvature;torsion) vector, then the tangent vector, then the normal vector, then the binormal vector.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction doit être à valeurs dans R^3. La sortie comporte le vecteur (courbure;torsion),
puis le vecteur tangent, puis le vecteur normal, puis le vecteur binormal.
val curvature_center_3 : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float arraycurvature_center_3 methode function realThe fonction must take its values in R^3. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction prend ses valeurs dans R^3.
val parallel_arc_3 : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float -> float arrayparallel_arc_3 methode function parameter realThe fonction must take its values in R^3. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction prend ses valeurs dans R^3.
val serret_frenet : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float array array arrayserret_frenet methode function realThe (unidimensional) derivating method must contain the parameters, including the step. The output gives the multi-curvature vector in a one-row matrix, then the Serret-Frenet frame presented row-by-row, then the product of all the curvatures in a matrix reduced to a scalar.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La sortie comporte le vecteur multicourbure dans une matrice uniligne, puis le repère de Serret-Frenet ligne par ligne,
puis le produit de toutes les courbures dans une matrice réduite à un scalaire.
val curvature_center : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float arraycurvature_center methode function realThe fonction must take its values in R^2. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction doit être à valeurs dans R^2.
val parallel_arc : ((float -> float) -> float -> float) ->
(float -> float array) -> float -> float -> float arrayparallel_arc methode function parameter realThe fonction must take its values in R^2. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La fonction doit être à valeurs dans R^2.
val fond_form_I : ((float -> float) -> float -> float) ->
(float array -> float array) ->
float array -> float array -> float array -> floatfond_form_I methode function position vector1 vector2
val surface_normal_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> float arraysurface_normal_3 methode f positionThe function must take its varaiables in R^2 and its values in R^3.
La fonction doit aller de R^2 dans R^3.
val surface_area_element_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_area_element_3 methode f positionThe function must take its varaiables in R^2 and its values in R^3.
La fonction doit aller de R^2 dans R^3.
val surface_area_vector_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> float arraysurface_area_vector_3 methode f positionThe function must take its varaiables in R^2 and its values in R^3.
La fonction doit aller de R^2 dans R^3.
val surface_weingarten_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> float array arraysurface_weingarten_3 methode f positionThe function must take its varaiables in R^2 and its values in R^3.
La fonction doit aller de R^2 dans R^3.
val surface_fond_form_II_3 : ((float -> float) -> float -> float) ->
(float array -> float array) ->
float array -> float array -> float array -> floatsurface_fond_form_II_3 methode function position vector1 vector2
val surface_principal_curvatures_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> float arraysurface_principal_curvatures_3 methode function position
val surface_principal_curvatures_3_bis : float ->
int ->
((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> float arraysurface_principal_curvatures_3_bis threshold max_steps methode function position
val surface_ombilic_deviation_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_ombilic_deviation_3 methode function position
val surface_ombilic_deviation_3_bis : float ->
int ->
((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_ombilic_deviation_3_bis threshold max_steps methode function position
val surface_mean_curvature_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_mean_curvature_3 methode function position
val surface_mean_curvature_3_bis : float ->
int ->
((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_mean_curvature_3_bis threshold max_steps methode function position
val surface_gauss_curvature_3 : ((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_gauss_curvature_3 methode function position
val surface_gauss_curvature_3_bis : float ->
int ->
((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> floatsurface_gauss_curvature_3_bis threshold max_steps methode function position
val graph_surface_3 : (float array -> float) -> float array -> float arraygraph_surface_3 function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val graph_principal_curvatures_3 : ((float -> float) -> float -> float) ->
(float array -> float) -> float array -> float arraygraph_principal_curvatures_3 function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val graph_principal_curvatures_3_bis : float ->
int ->
((float -> float) -> float -> float) ->
(float array -> float) -> float array -> float arraygraph_principal_curvatures_3_bis threshold max_steps function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val graph_mean_curvature_3 : ((float -> float) -> float -> float) ->
(float array -> float) -> float array -> floatgraph_mean_curvature_3 function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val graph_mean_curvature_3_bis : ((float -> float) -> float -> float) ->
float -> int -> (float array -> float) -> float array -> floatgraph_mean_curvature_3_bis threshold max_steps function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val graph_gauss_curvature_3 : ((float -> float) -> float -> float) ->
(float array -> float) -> float array -> floatgraph_gauss_curvature_3 function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val graph_gauss_curvature_3_bis : float ->
int ->
((float -> float) -> float -> float) ->
(float array -> float) -> float array -> floatgraph_gauss_curvature_3_bis threshold max_steps function positionThe function must take its variables in R^2 and its values in R.
La fonction doit aller de R^2 dans R.
val float_discrete_diff : float -> float array -> float arrayfloat_discrete_diff scale vector
val float_discrete_richardson_binary_diff : int -> float -> float array -> float arrayfloat_discrete_richardson_binary_diff degree scale vectorThe maximum degree taken into account is two.
Le degré plafonne à 2.
val float_discrete_richardson_diff : int -> float -> float array -> float arrayfloat_discrete_richardson_diff radix scale vectorThe degree is equal to one.
Le degré vaut 1.
val mean_float_discrete_diff : float -> float array -> float arraymean_float_discrete_diff scale vector
val mean_float_discrete_richardson_binary_diff : float -> float array -> float arraymean_float_discrete_richardson_binary_diff scale vectorThe degree is equal to 1.
Le degré vaut 1.
val discrete_trans_vector_speed : (float -> float array -> float array) ->
float -> float array array -> float array arraydiscrete_trans_vector_speed methode scale position_matrixThe data must be presented by coordinates.
Les données doivent être présentées coordonnées par coordonnées.
val discrete_vector_speed : (float -> float array -> float array) ->
float -> float array array -> float array arraydiscrete_vector_speed methode scale position_matrix
val discrete_trans_acceleration : (float -> float array -> float array) ->
float -> float array array -> float array arraydiscrete_trans_acceleration methode scale position_matrixThe data must be presented by coordinates.
Les données doivent être présentées coordonnées par coordonnées.
val discrete_acceleration : (float -> float array -> float array) ->
float -> float array array -> float array arraydiscrete_acceleration methode scale position_matrix
val discrete_trans_jet : (float -> float array -> float array) ->
int -> float -> float array array -> float array array arraydiscrete_trans_jet methode order scale position_matrixThe data must be presented by coordinates.
Les données doivent être présentées coordonnées par coordonnées.
val discrete_jet : (float -> float array -> float array) ->
int -> float -> float array array -> float array array arraydiscrete_jet methode order scale position_matrix
val discrete_graph_curvature : (float -> float array -> float array) -> float -> float array -> float arraydiscrete_graph_curvature methode scale vector
val discrete_trans_curvature_2 : (float -> float array -> float array) ->
float -> float array array -> float arraydiscrete_trans_curvature_2 methode scale position_matrixThe data must be presented by coordinates.
Les données doivent être présentées coordonnées par coordonnées.
val discrete_curvature_2 : (float -> float array -> float array) ->
float -> float array array -> float arraydiscrete_curvature_2 methode scale position_matrix
val discrete_curvature : (float -> float array -> float array) ->
float -> float array array -> float arraydiscrete_curvature methode scale position_matrix
val discrete_trans_curvature : (float -> float array -> float array) ->
float -> float array array -> float arraydiscrete_trans_curvature methode scale position_matrixThe data must be presented by coordinates.
Les données doivent être présentées coordonnées par coordonnées.
val discrete_trans_serret_frenet : (float -> float array -> float array) ->
float -> float array array -> float array array array arraydiscrete_trans_serret_frenet methode scale position_matrixThe samples at the input must be presented by coordinates. The output gives the samples of the multi-curvature vector, then the samples of the Serret-Frenet frame, then the samples of the product of all the curvatures.
Les échantillons doivent être entrés coordonnée par coordonnée.
La sortie comporte les échantillons du vecteur multicourbure, puis les échantillons du repère de Serret-Frenet,
puis les échantillons du produit de toutes les courbures.
val discrete_serret_frenet : (float -> float array -> float array) ->
float -> float array array -> float array array array arraydiscrete_serret_frenet methode scale position_matrixThe output gives the samples of the multi-curvature vector, then the samples of the Serret-Frenet frame, then the samples of the product of all the curvatures.
La sortie comporte les échantillons du vecteur multicourbure, puis les échantillons du repère de Serret-Frenet,
puis les échantillons du produit de toutes les courbures.
val discrete_partial_diff_x : (float array -> 'a) -> float array array -> 'a arraydiscrete_partial_diff_x methode matrixThe column numbers of the matrix correspond to the abscissae. The method
methode is that of one_dimensional discrete derivation.
Les numéros de colonnes de la matrice représentent les abscisses. La méthode methode est celle de dérivation discrète unidimensionnelle.
val discrete_partial_diff_y : (float array -> float array) -> float array array -> float array arraydiscrete_partial_diff_y methode matrixThe column numbers of the matrix correspond to the abscissae. The method
methode is that of one_dimensional discrete derivation.
Les numéros de colonnes de la matrice représentent les abscisses. La méthode methode est celle de dérivation discrète unidimensionnelle.
val discrete_area_element : (float array -> float array) -> float array array -> float array arraydiscrete_area_element methode matrixThe column numbers of the matrix correspond to the abscissae. The method
methode is that of one_dimensional discrete derivation.
Les numéros de colonnes de la matrice représentent les abscisses. La méthode methode est celle de dérivation discrète unidimensionnelle.
val discrete_gauss_curvature : (float array -> float array) -> float array array -> float array arraydiscrete_gauss_curvature methode matrixThe column numbers of the matrix correspond to the abscissae. The method
methode is that of one_dimensional discrete derivation.
Les numéros de colonnes de la matrice représentent les abscisses. La méthode methode est celle de dérivation discrète unidimensionnelle.
val discrete_mean_curvature : (float array -> float array) -> float array array -> float array arraydiscrete_mean_curvature methode matrixThe column numbers of the matrix correspond to the abscissae. The method
methode is that of one_dimensional discrete derivation.
Les numéros de colonnes de la matrice représentent les abscisses. La méthode methode est celle de dérivation discrète unidimensionnelle.
val discrete_principal_curvatures : (float array -> float array) -> float array array -> float array array arraydiscrete_principal_curvatures methode matrixThe column numbers of the matrix correspond to the abscissae. The method
methode is that of one_dimensional discrete derivation.
Les numéros de colonnes de la matrice représentent les abscisses. La méthode methode est celle de dérivation discrète unidimensionnelle.
val float_linear_interpol : float array -> float -> floatfloat_linear_interpol vector real
val float_regular_stair_interpol : (float -> float) -> float array -> float -> floatfloat_regular_stair_interpol function vector real
val float_medium_interpol : (float -> float) -> float array -> float -> floatfloat_medium_interpol function vector real
val float_fit_interpol : (float -> float array -> float array) ->
(float -> float) -> float -> float array -> float -> floatfloat_fit_interpol methode function parameter vector realThe absolute value of the
parameter
conditions the importance of the differentiable stair interpolation against the importance of the linear
interpolation. The method methode is that of differentiation, and must preserve the size of the sample.
La valeur absolue du paramètre parameter dose l'importance de l'interpolation en escalier dérivable
contre l'importance de l'interpolation linéaire.
La méthode methode est celle de dérivation, et doit préserver la taille de l'échantillon.
val float_tune_interpol : (float -> float array -> float array) ->
(float -> float) -> float array -> float -> floatfloat_tune_interpol methode function vector realThe parameter
scale is
used in the discrete differential method methode.
It may be used here in order to tune the smoothing effect. In case of doubt, use 1.0.
The parameter is used for the interpolation float_fit_interpol applied to the
derivative. A value of 0.1 seems convenient.
Le paramètre scale est utilisé dans la méthode methode de différentiation discrète.
Il peut servir à doser l'effet de régularisation ici. Dans le doute, prendre 1.0.
Le paramètre parameter sert pour l'interpolation float_fit_interpol
appliquée à la dérivée. Une valeur de 0.1 paraît raisonnable.
val vector_trans_interpol : (float array -> float -> float) -> float array array -> float -> float arrayvector_trans_interpol methode vector_sampleThe data must be presented by coordinates.
Les données doivent être présentées coordonnées par coordonnées.
val vector_interpol : (float array -> float -> float) -> float array array -> float -> float arrayvector_interpol methode vector_sample
val matrix_trans_interpol : (float array -> float -> float) ->
float array array array -> float -> float array arraymatrix_trans_interpol methode matrix_sampleThe data must be presented by coefficients.
Les données doivent être présentées coefficients par coefficients.
val matrix_interpol : (float array -> float -> float) ->
float array array array -> float -> float array arraymatrix_interpol methode matrix_sample
Les interpolations à plusieurs variables qui suivent sont polymorphes.
val interpol_2 : ('a array -> float -> 'a) -> 'a array array -> float -> float -> 'ainterpol_2 methode matrix abscissa ordinateThe row numbers correspond to the ordinates and the column numbers correspond to the abscissae. The method
methode is that of the chosen interpolation.
Les numéros de lignes correspondent aux ordonnées et les numéros de colonnes aux abscisses.
La méthode methode est la méthode d'interpolation choisie.
val interpol_3 : ('a array -> float -> 'a) ->
'a array array array -> float -> float -> float -> 'ainterpol_3 methode matrix abscissa ordinateThe row numbers correspond to the altitudes and the following numbers correspond to the ordinates then the abscissae. The method
methode is that of the chosen interpolation.
Les numéros de lignes correspondent aux cotes et les numéros suivants aux ordonnées puis abscisses.
La méthode methode est la méthode d'interpolation choisie.
val interpol : (float array -> float -> float) ->
Spec_math.Matrix.float_or_array -> float array -> floatinterpol methode multi_vector abscissa ordinateThe row numbers correspond to the last coordinate and the following numbers correspond to the coordinates in reverse order. The method
methode is that of the chosen interpolation.
Les numéros de lignes correspondent à la dernière coordonnée et les numéros suivants aux coordonnées en ordre inverse.
La méthode methode est la méthode d'interpolation choisie.
val float_zero_secant : int -> (float -> float) -> float -> floatfloat_zero_secant maxstep function startThis method may work for a root of order one.
Cette méthode peut fonctionner pour une racine d'ordre un.
val float_zero_newton : ((float -> float) -> float -> float) ->
int -> (float -> float) -> float -> floatfloat_zero_newton methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_zero_halley : ((float -> float) -> float -> float) ->
int -> (float -> float) -> float -> floatfloat_zero_halley methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_zero_householder : ((float -> float) -> float -> float) ->
int -> int -> (float -> float) -> float -> floatfloat_zero_householder methode order maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_zero_pot_pourri : ((float -> float) -> float -> float) ->
int -> int -> (float -> float) -> float -> floatfloat_zero_pot_pourri methode maxorder maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_zero_pot_pourri_alea : ((float -> float) -> float -> float) ->
int -> int -> (float -> float) -> float -> floatfloat_zero_pot_pourri_alea methode maxorder maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val float_zero_general : ((float -> float) -> float -> float) ->
int -> int -> (float -> float) -> float -> floatfloat_zero_general methode maxorder maxstep function startThe idea of the auxiliary function comes from the HP journal of december 1979 about the HP34C calculator. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
L'idée de la fonction auxiliaire provient du journal HP de décembre 1979 concernant la calculette HP34C.
val float_zero_general_alea : ((float -> float) -> float -> float) ->
int -> int -> (float -> float) -> float -> floatfloat_zero_general_alea methode maxorder maxstep function startThe idea of the auxiliary function comes from the HP journal of december 1979 about the HP34C calculator. The (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
L'idée de la fonction auxiliaire provient du journal HP de décembre 1979 concernant la calculette HP34C.
val vector_float_zero_secant : int -> (float array -> float) -> float array -> float arrayvector_float_zero_secant maxstep function startThis method may work for a root of order one.
Cette méthode peut fonctionner pour une racine d'ordre un.
val desc_grad_zero : ((float -> float) -> float -> float) ->
int -> (float array -> float) -> float array -> float arraydesc_grad_zero methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_float_halley_zero : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float) -> float array -> float arrayvector_float_halley_zero methode_reduc methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The parameter
n is the maximum number of steps for the pseudo-inverse of symmetric matrices.
The reduction method methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
La paramètre n est le nombre maximal de pas pour le pseudo-inverse des matrices symétriques.
val vector_float_zero_general : ((float -> float) -> float -> float) ->
int -> (float array -> float) -> float array -> float arrayvector_float_zero_general methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_float_zero_general_alea : ((float -> float) -> float -> float) ->
int -> (float array -> float) -> float array -> float arrayvector_float_zero_general_alea methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_float_zero_general_2 : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float) -> float array -> float arrayvector_float_zero_general_2 methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The reduction method
methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_float_zero_general_2_alea : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float) -> float array -> float arrayvector_float_zero_general_2_alea methode_reduc methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The reduction method
methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_zero_newton : ((float -> float) -> float -> float) ->
int -> (float array -> float array) -> float array -> float arrayvector_zero_newton methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_zero_general : ((float -> float) -> float -> float) ->
int -> (float array -> float array) -> float array -> float arrayvector_zero_general methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_zero_general_alea : ((float -> float) -> float -> float) ->
int -> (float array -> float array) -> float array -> float arrayvector_zero_general_alea methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_zero_general_2 : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float array) -> float array -> float arrayvector_zero_general_2 methode_reduc methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The reduction method
methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_zero_general_2_alea : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float array) -> float array -> float arrayvector_zero_general_2_alea methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The reduction method
methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_matrix_zero_general : ((float -> float) -> float -> float) ->
int -> (float array -> float array array) -> float array -> float arrayvector_matrix_zero_general methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_matrix_zero_general_alea : ((float -> float) -> float -> float) ->
int -> (float array -> float array array) -> float array -> float arrayvector_matrix_zero_general_alea methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_matrix_zero_general_2 : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float array array) -> float array -> float arrayvector_matrix_zero_general_2 methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The reduction method
methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val vector_matrix_zero_general_2_alea : (float array array -> float array array array) ->
((float -> float) -> float -> float) ->
int -> (float array -> float array array) -> float array -> float arrayvector_matrix_zero_general_2_alea methode maxstep function startThe (unidimensional) derivating method must contain the parameters, including the step. The reduction method
methode_reduc applies to real symmetric matrices.
La méthode de réduction methode_reduc s'applique aux matrices symétriques réelles.
La méthode de dérivation (unidimensionnelle) doit contenir les paramètres, y compris le pas.
val matrix_zero : ((float array -> float array array) -> float array -> float array) ->
(float array array -> float array array) ->
float array array -> float array arraymatrix_zero methode function startThe zeroing method (of a function which associates a matrix to a vector) must contain all the parameters.
La méthode d'annulation (d'une fonction qui à un vecteur associe une matrice) doit contenir tous les paramètres.
val matrix_vector_zero : ((float array -> float array) -> float array -> float array) ->
(float array array -> float array) -> float array array -> float array arraymatrix_vector_zero methode function startThe zeroing method (of a function which associates a vector to a vector) must contain all the parameters.
La méthode d'annulation (d'une fonction qui à un vecteur associe un vecteur) doit contenir tous les paramètres.
val matrix_float_zero : ((float array -> float) -> float array -> float array) ->
(float array array -> float) -> float array array -> float array arraymatrix_float_zero methode function startThe zeroing method (of a function which associates a real to a vector) must contain all the parameters.
La méthode d'annulation (d'une fonction qui à un vecteur associe un réel) doit contenir tous les paramètres.
float_regular_stair_interpol and of the other methods of interpolation which use it.
En cas de recherche de zéros sur des données discrètes via l'interpolation,
se méfier de l'interpolation par escalier dérivable float_regular_stair_interpol et
des autres méthodes d'interpolation qui l'utilisent.
val float_int_rect : int -> (float -> float) -> float -> float -> floatfloat_int_rect nintervals function a b
val float_int_incr_rect : float -> int -> (float -> float) -> float -> float -> floatfloat_int_incr_rect ratio nintervals function a bThe step increases exponentially from
a to b. The ratio ratio is the decreasing ratio, situated strictly between 0 and 1.
Le pas croît exponentiellement de a vers b. Le taux ratio est le taux de décroissance,
compris strictement entre 0 et 1.
val float_int_decr_rect : float -> int -> (float -> float) -> float -> float -> floatfloat_int_decr_rect ratio nintervals function a bThe step decreases exponentially from
a to b. The ratio ratio is the decreasing ratio, situated strictly between 0 and 1.
Le pas décroît exponentiellement de a vers b. Le taux ratio est le taux de décroissance,
compris strictement entre 0 et 1.
val float_int_trapez : int -> (float -> float) -> float -> float -> floatfloat_int_trapez nintervals function a b
val float_int_incr_trapez : float -> int -> (float -> float) -> float -> float -> floatfloat_int_incr_trapez ratio nintervals function a bThe step increases exponentially from
a to b. The ratio ratio is the decreasing ratio, situated strictly between 0 and 1.
Le pas croît exponentiellement de a vers b. Le taux ratio est le taux de décroissance,
compris strictement entre 0 et 1.
val float_int_decr_trapez : float -> int -> (float -> float) -> float -> float -> floatfloat_int_decr_trapez ratio nintervals function a bThe step decreases exponentially from
a to b. The ratio ratio is the decreasing ratio, situated strictly between 0 and 1.
Le pas décroît exponentiellement de a vers b. Le taux ratio est le taux de décroissance,
compris strictement entre 0 et 1.
val float_int_simpson : int -> (float -> float) -> float -> float -> floatfloat_int_simpson nintervals function a b
val float_int_romberg : int -> int -> (float -> float) -> float -> float -> floatfloat_int_romberg order degree function a b
val float_int : int -> int -> (float -> float) -> float -> float -> floatfloat_int order degree function a b
val float_int_monte_carlo : int -> (float -> float) -> float -> float -> floatfloat_int_monte_carlo nsamples function a b
val float_romberg_step_trapez : (float -> float) -> float -> float -> floatfloat_romberg_step_trapez function a b
val float_int_romberg_trapez_adapt : float -> (float -> float) -> float -> float -> floatfloat_int_romberg_trapez_adapt tolerance function a b
val float_int_romberg_trapez_bounded : int -> float -> (float -> float) -> float -> float -> floatfloat_int_romberg_trapez_bounded maxstages tolerance function a b
val float_romberg_step_simpson : (float -> float) -> float -> float -> floatfloat_romberg_step_simpson function a b
val float_int_romberg_simpson_adapt : float -> (float -> float) -> float -> float -> floatfloat_int_romberg_simpson_adapt tolerance function a b
val float_int_romberg_simpson_bounded : int -> float -> (float -> float) -> float -> float -> floatfloat_int_romberg_simpson_bounded maxstages tolerance function a b
val float_romberg_step_3_8 : (float -> float) -> float -> float -> floatfloat_romberg_step_3_8 function a b
val float_int_romberg_3_8_adapt : float -> (float -> float) -> float -> float -> floatfloat_int_romberg_3_8_adapt tolerance function a b
val float_int_romberg_3_8_bounded : int -> float -> (float -> float) -> float -> float -> floatfloat_int_romberg_3_8_bounded maxstages tolerance function a b
val float_romberg_step_milne : (float -> float) -> float -> float -> floatfloat_romberg_step_milne function a b
val float_int_romberg_milne_adapt : float -> (float -> float) -> float -> float -> floatfloat_int_romberg_milne_adapt tolerance function a b
val float_int_romberg_milne_bounded : int -> float -> (float -> float) -> float -> float -> floatfloat_int_romberg_milne_bounded maxstages tolerance function a b
float_simple_step_gauss_kronrod_generic
and to define float_romberg_step_gauss_kronrod.
Les vecteurs ci-dessous sont des coefficients pour float_simple_step_gauss_kronrod_generic
et définissant float_romberg_step_gauss_kronrod.
val gauss_abscissae_7_bis : float arrayval gauss_weights_7_bis : float arrayval kronrod_abscissae_15_bis : float arrayval kronrod_weights_15_bis : float arrayval gauss_weights_7 : float arrayval gauss_abscissae_7 : float arrayval kronrod_abscissae_15 : float arrayval kronrod_weights_15 : float arrayval gauss_kronrod_abscissae_7 : float arrayval gauss_kronrod_weights_7 : float arrayval gauss_kronrod_weights_5to7 : float arrayval gauss_kronrod_abscissae_9 : float arrayval gauss_kronrod_weights_9 : float arrayval gauss_kronrod_weights_7to9 : float arrayval gauss_kronrod_abscissae_15 : float arrayval gauss_kronrod_weights_15 : float arrayval gauss_kronrod_abscissae_21 : float arrayval gauss_kronrod_weights_21 : float arrayval gauss_kronrod_weights_11to21 : float arrayval gauss_kronrod_abscissae_31 : float arrayval gauss_kronrod_weights_31 : float arrayval gauss_kronrod_abscissae_41 : float arrayval gauss_kronrod_weights_41 : float arrayval float_romberg_step_gauss_kronrod : (float -> float) -> float -> float -> float arrayfloat_romberg_step_gauss_kronrod function a bThe data come from the source code of
scilab,
which quotes quadpack.
Les données proviennent du cose source de scilab, qui cite quadpack.
val float_simple_step_gauss_kronrod_generic : float array -> float array -> (float -> float) -> float -> float -> floatfloat_simple_step_gauss_kronrod_generic abscissae weights function a b
val float_simple_step_gauss_kronrod : (float -> float) -> float -> float -> floatfloat_simple_step_gauss_kronrod function a b
val float_int_romberg_gauss_kronrod_adapt : float -> (float -> float) -> float -> float -> floatfloat_int_romberg_gauss_kronrod_adapt tolerance function a b
val float_int_romberg_gauss_kronrod_bounded : int -> float -> (float -> float) -> float -> float -> floatfloat_int_romberg_gauss_kronrod_bounded maxstages tolerance function a b
val float_int_tanh : int -> (float -> float) -> float -> float -> floatfloat_int_tanh nintervals function a b
val float_int_tanh_sinh : int -> (float -> float) -> float -> float -> floatfloat_int_tanh_sinh parameter function a b
float_weighted_int_0_1 method of integration.
Les vecteurs suivants servent à calculer la méthode d'intégration float_weighted_int_0_1.
val adams_bashforth_1_w : float arrayval adams_bashforth_2_w : float arrayval adams_bashforth_3_w : float arrayval adams_bashforth_4_w : float arrayval adams_bashforth_5_w : float arrayval adams_bashforth_6_w : float arrayval adams_bashforth_7_w : float arrayval adams_bashforth_8_w : float arrayval adams_bashforth_9_w : float arrayval adams_bashforth_10_w : float arrayval adams_bashforth_12_w : float arrayval adams_bashforth_14_w : float arrayval adams_bashforth_16_w : float arrayval adams_bashforth_18_w : float arrayval adams_bashforth_20_w : float arrayval adams_bashforth_m : float array arrayval adams_bashforth_x : int -> float arrayval adams_moulton_x : int -> float arrayval adams_moulton_1_w : float arrayval adams_moulton_2_w : float arrayval adams_moulton_3_w : float arrayval adams_moulton_4_w : float arrayval adams_moulton_5_w : float arrayval adams_moulton_6_w : float arrayval adams_moulton_7_w : float arrayval adams_moulton_8_w : float arrayval adams_moulton_9_w : float arrayval adams_moulton_10_w : float arrayval adams_moulton_12_w : float arrayval adams_moulton_14_w : float arrayval adams_moulton_16_w : float arrayval adams_moulton_18_w : float arrayval adams_moulton_20_w : float arrayval gauss_legendre_0_1_1_x : float arrayval gauss_legendre_0_1_1_w : float arrayval gauss_legendre_0_1_2_x : float array| 0.2113248654 ; 0.7886751346 |val gauss_legendre_0_1_2_w : float arrayval gauss_legendre_0_1_3_x : float array| 0.1127016654 ; 0.5 ; 0.887298334 |val gauss_legendre_0_1_3_w : float arrayval gauss_legendre_0_1_4_x : float arrayval gauss_legendre_0_1_4_w : float arrayval gauss_legendre_0_1_5_x : float arrayval gauss_legendre_0_1_5_w : float arrayval gauss_legendre_0_1_6_x : float arrayval gauss_legendre_0_1_6_w : float arrayval gauss_legendre_0_1_7_x : float arrayval gauss_legendre_0_1_7_w : float arrayval gauss_legendre_0_1_8_x : float arrayval gauss_legendre_0_1_8_w : float arrayval float_weighted_int_0_1 : float array -> float array -> (float -> float) -> floatfloat_weighted_int_0_1 abscissae weights functionThe standard abscissae are spread over the interval [0 ; 1].
Les abscisses normalisées sont réparties sur l'interavlle [0 ; 1].
float_weighted_int_minus1_1 method of integration.
Les vecteurs suivants servent à calculer la méthode d'intégration float_weighted_int_minus1_1.
val clenshaw_curtis_1_x : float arrayval clenshaw_curtis_1_w : float arrayval clenshaw_curtis_2_x : float arrayval clenshaw_curtis_2_w : float arrayval clenshaw_curtis_3_x : float arrayval clenshaw_curtis_3_w : float arrayval clenshaw_curtis_4_x : float arrayval clenshaw_curtis_4_w : float arrayval clenshaw_curtis_x_5_x : float arrayval clenshaw_curtis_5_w : float arrayval clenshaw_curtis_6_x : float arrayval clenshaw_curtis_6_w : float arrayval clenshaw_curtis_7_x : float arrayval clenshaw_curtis_7_w : float arrayval clenshaw_curtis_8_x : float arrayval clenshaw_curtis_8_w : float arrayval clenshaw_curtis_9_x : float arrayval clenshaw_curtis_9_w : float arrayval clenshaw_curtis_10_x : float arrayval clenshaw_curtis_10_w : float arrayval clenshaw_curtis_11_x : float arrayval clenshaw_curtis_11_w : float arrayval clenshaw_curtis_12_x : float arrayval clenshaw_curtis_12_w : float arrayval clenshaw_curtis_13_x : float arrayval clenshaw_curtis_13_w : float arrayval clenshaw_curtis_14_x : float arrayval clenshaw_curtis_14_w : float arrayval clenshaw_curtis_15_x : float arrayval clenshaw_curtis_15_w : float arrayval clenshaw_curtis_16_x : float arrayval clenshaw_curtis_16_w : float arrayval clenshaw_curtis_17_x : float arrayval clenshaw_curtis_17_w : float arrayval clenshaw_curtis_33_x : float arrayval clenshaw_curtis_33_w : float arrayval clenshaw_curtis_65_x : float arrayval clenshaw_curtis_65_w : float arrayval clenshaw_curtis_129_x : float arrayval clenshaw_curtis_129_w : float arrayval gauss_legendre_1_x : float arrayval gauss_legendre_1_w : float arrayval gauss_legendre_2_x : float arrayval gauss_legendre_2_w : float arrayval gauss_legendre_3_x : float arrayval gauss_legendre_3_w : float arrayval gauss_legendre_4_x : float arrayval gauss_legendre_4_w : float arrayval gauss_legendre_5_x : float arrayval gauss_legendre_5_w : float arrayval gauss_legendre_6_x : float arrayval gauss_legendre_6_w : float arrayval gauss_legendre_7_x : float arrayval gauss_legendre_7_w : float arrayval gauss_legendre_8_x : float arrayval gauss_legendre_8_w : float arrayval gauss_legendre_9_x : float arrayval gauss_legendre_9_w : float arrayval gauss_legendre_10_x : float arrayval gauss_legendre_10_w : float arrayval gauss_legendre_11_x : float arrayval gauss_legendre_11_w : float arrayval gauss_legendre_12_x : float arrayval gauss_legendre_12_w : float arrayval gauss_legendre_13_x : float arrayval gauss_legendre_13_w : float arrayval gauss_legendre_14_x : float arrayval gauss_legendre_14_w : float arrayval gauss_legendre_15_x : float arrayval gauss_legendre_15_w : float arrayval gauss_legendre_16_x : float arrayval gauss_legendre_16_w : float arrayval gauss_legendre_17_x : float arrayval gauss_legendre_17_w : float arrayval gauss_legendre_18_x : float arrayval gauss_legendre_18_w : float arrayval gauss_legendre_19_x : float arrayval gauss_legendre_19_w : float arrayval gauss_legendre_20_x : float arrayval gauss_legendre_20_w : float arrayval gauss_legendre_21_x : float arrayval gauss_legendre_21_w : float arrayval gauss_legendre_22_x : float arrayval gauss_legendre_22_w : float arrayval gauss_legendre_23_x : float arrayval gauss_legendre_23_w : float arrayval gauss_legendre_24_x : float arrayval gauss_legendre_24_w : float arrayval gauss_legendre_25_x : float arrayval gauss_legendre_25_w : float arrayval gauss_legendre_26_x : float arrayval gauss_legendre_26_w : float arrayval gauss_legendre_27_x : float arrayval gauss_legendre_27_w : float arrayval gauss_legendre_28_x : float arrayval gauss_legendre_28_w : float arrayval gauss_legendre_29_x : float arrayval gauss_legendre_29_w : float arrayval gauss_legendre_30_x : float arrayval gauss_legendre_30_w : float arrayval gauss_legendre_31_x : float arrayval gauss_legendre_31_w : float arrayval gauss_legendre_32_x : float arrayval gauss_legendre_32_w : float arrayval gauss_legendre_33_x : float arrayval gauss_legendre_33_w : float arrayval gauss_legendre_63_x : float arrayval gauss_legendre_63_w : float arrayval gauss_legendre_64_x : float arrayval gauss_legendre_64_w : float arrayval gauss_legendre_65_x : float arrayval gauss_legendre_65_w : float arrayval gauss_legendre_127_x : float arrayval gauss_legendre_127_w : float arrayval gauss_legendre_128_x : float arrayval gauss_legendre_128_w : float arrayval gauss_legendre_129_x : float arrayval gauss_legendre_129_w : float arrayval gauss_legendre_255_x : float arrayval gauss_legendre_255_w : float arrayval gauss_legendre_256_x : float arrayval gauss_legendre_256_w : float arrayval gauss_legendre_257_x : float arrayval gauss_legendre_257_w : float arrayval gauss_patterson_1_x : float arrayval gauss_patterson_1_w : float arrayval gauss_patterson_3_x : float arrayval gauss_patterson_3_w : float arrayval gauss_patterson_7_x : float arrayval gauss_patterson_7_w : float arrayval gauss_patterson_15_x : float arrayval gauss_patterson_15_w : float arrayval gauss_patterson_31_x : float arrayval gauss_patterson_31_w : float arrayval gauss_patterson_63_x : float arrayval gauss_patterson_63_w : float arrayval gauss_patterson_127_x : float arrayval gauss_patterson_127_w : float arrayval gauss_patterson_255_x : float arrayval gauss_patterson_255_w : float arrayval lobatto_2_x : float arrayval lobatto_2_w : float arrayval lobatto_3_x : float arrayval lobatto_3_w : float arrayval lobatto_4_x : float arrayval lobatto_4_w : float arrayval lobatto_5_x : float arrayval lobatto_5_w : float arrayval lobatto_6_x : float arrayval lobatto_6_w : float arrayval lobatto_7_x : float arrayval lobatto_7_w : float arrayval lobatto_8_x : float arrayval lobatto_8_w : float arrayval lobatto_9_x : float arrayval lobatto_9_w : float arrayval lobatto_9_x : float arrayval lobatto_10_w : float arrayval lobatto_11_x : float arrayval lobatto_11_w : float arrayval lobatto_12_x : float arrayval lobatto_12_w : float arrayval lobatto_13_x : float arrayval lobatto_13_w : float arrayval lobatto_14_x : float arrayval lobatto_14_w : float arrayval lobatto_15_x : float arrayval lobatto_15_w : float arrayval lobatto_16_x : float arrayval lobatto_16_w : float arrayval lobatto_17_x : float arrayval lobatto_17_w : float arrayval lobatto_18_x : float arrayval lobatto_18_w : float arrayval lobatto_19_x : float arrayval lobatto_19_w : float arrayval lobatto_20_x : float arrayval lobatto_20_w : float arrayval newton_cotes_1_x : float arrayval newton_cotes_1_w : float arrayval newton_cotes_2_w : float arrayval newton_cotes_2_x : float arrayval newton_cotes_3_w : float arrayval newton_cotes_3_x : float arrayval newton_cotes_4_w : float arrayval newton_cotes_4_x : float arrayval newton_cotes_5_w : float arrayval newton_cotes_5_x : float arrayval newton_cotes_6_w : float arrayval newton_cotes_6_x : float arrayval newton_cotes_7_w : float arrayval newton_cotes_7_x : float arrayval newton_cotes_8_w : float arrayval newton_cotes_8_x : float arrayval newton_cotes_9_w : float arrayval newton_cotes_9_x : float arrayval newton_cotes_10_w : float arrayval newton_cotes_10_x : float arrayval newton_cotes_11_w : float arrayval newton_cotes_11_x : float arrayval newton_cotes_12_w : float arrayval newton_cotes_12_x : float arrayval newton_cotes_13_w : float arrayval newton_cotes_13_x : float arrayval newton_cotes_14_w : float arrayval newton_cotes_14_x : float arrayval newton_cotes_15_w : float arrayval newton_cotes_15_x : float arrayval newton_cotes_16_w : float arrayval newton_cotes_16_x : float arrayval newton_cotes_17_w : float arrayval newton_cotes_17_x : float arrayval newton_cotes_18_w : float arrayval newton_cotes_18_x : float arrayval newton_cotes_19_w : float arrayval newton_cotes_19_x : float arrayval newton_cotes_20_w : float arrayval newton_cotes_20_x : float arrayval newton_cotes_21_x : float arrayval newton_cotes_21_w : float arrayval radau_1_x : float arrayval radau_1_w : float arrayval radau_2_x : float arrayval radau_2_w : float arrayval radau_3_x : float arrayval radau_3_w : float arrayval radau_4_x : float arrayval radau_4_w : float arrayval radau_5_x : float arrayval radau_5_w : float arrayval radau_6_x : float arrayval radau_6_w : float arrayval radau_7_x : float arrayval radau_7_w : float arrayval radau_8_x : float arrayval radau_8_w : float arrayval radau_9_x : float arrayval radau_9_w : float arrayval radau_10_x : float arrayval radau_10_w : float arrayval radau_11_x : float arrayval radau_11_w : float arrayval radau_12_x : float arrayval radau_12_w : float arrayval radau_13_x : float arrayval radau_13_w : float arrayval radau_14_x : float arrayval radau_14_w : float arrayval radau_15_x : float arrayval radau_15_w : float arrayval float_weighted_int_minus1_1 : float array -> float array -> (float -> float) -> float -> float -> floatfloat_weighted_int_minus1_1 abscissae weights function a bThe standard abscissae are spread over the interval
-1 ; 1.
The ends of the integration interval must be filled in.
Les abscisses normalisées sont réparties sur l'interavlle -1 ; 1.
Les bornes d'intégration doivent être précisées.
val float_int_dichot_adapt : ((float -> float) -> float -> float -> float) ->
float -> (float -> float) -> float -> float -> floatfloat_int_dichot_adapt methode tolerance function a bThe method must contain the integrating method, included the parameters, as in the following example. The tolerance is the relative error allowed between two steps in order to stop the dichotomy.
float_int_romberg 11 4
La méthode doit contenir la méthode d'intégration, y compris les paramètres,
comme dans l'exemple ci-dessus. La tolérance est l'erreur relative admise entre deux pas pour arrêter la dichotomie.
val float_int_dichot_bounded : int ->
((float -> float) -> float -> float -> float) ->
float -> (float -> float) -> float -> float -> floatfloat_int_dichot_bounded maxstages methode tolerance function a bThe method must contain the integrating method, included the parameters, as in the following example. The tolerance is the relative error allowed between two steps in order to stop the dichotomy.
float_int_romberg 11 4
La méthode doit contenir la méthode d'intégration, y compris les paramètres,
comme dans l'exemple ci-dessus. La tolérance est l'erreur relative admise entre deux pas pour arrêter la dichotomie.
val float_int_multi_adapt : ((float -> float) -> float -> float -> float) ->
int -> float -> (float -> float) -> float -> float -> floatfloat_int_multi_adapt methode nslices tolerance function a bThe method must contain the integrating method, included the parameters, as in the following example. The tolerance is the relative error allowed between two steps in order to stop the slicing.
float_int_romberg 11 4
La méthode doit contenir la méthode d'intégration, y compris les paramètres,
comme dans l'exemple ci-dessus. La tolérance est l'erreur relative admise entre deux pas pour arrêter le tranchage.
val float_int_multi_bounded : int ->
((float -> float) -> float -> float -> float) ->
int -> float -> (float -> float) -> float -> float -> floatfloat_int_multi_bounded maxstages methode nslices tolerance function a bThe method must contain the integrating method, included the parameters, as in the following example. The tolerance is the relative error allowed between two steps in order to stop the slicing.
float_int_romberg 11 4
La méthode doit contenir la méthode d'intégration, y compris les paramètres,
comme dans l'exemple ci-dessus. La tolérance est l'erreur relative admise entre deux pas pour arrêter le tranchage.
val float_int_adapt_trapez_simpson : int -> float -> (float -> float) -> float -> float -> floatfloat_int_adapt_trapez_simpson nintervals tolerance function a bThe tolerance is the maximal relative error for every step whose overshoot triggers an integral over the sub-interval.
La tolérance est l'erreur relative maximale pour chaque pas dont le dépassement
entraîne une intégrale sur le sous-intervalle.
val float_int_adapt : ((float -> float) -> float -> float -> float) ->
int -> float -> (float -> float) -> float -> float -> floatfloat_int_adapt methode nintervals tolerance function a bThe method must contain the integrating method, included the parameters, as in the following example. The tolerance is the maximal relative error for every step whose overshoot triggers an integral over the sub-interval.
float_int_simpson 100
La méthode doit contenir la méthode d'intégration, y compris les paramètres, comme dans l'exemple ci-dessus.
La tolérance est l'erreur relative maximale pour chaque pas dont le dépassement
entraîne une intégrale sur le sous-intervalle.
Les intégrales multiples sont calculées sur des pavés.
val float_int_double : ((float -> float) -> float -> float -> float) ->
(float array -> float) -> float array -> float array -> floatfloat_int_double methode function a b
val float_int_triple : ((float -> float) -> float -> float -> float) ->
(float array -> float) -> float array -> float array -> floatfloat_int_triple methode function a b
val float_int_mult : ((float -> float) -> float -> float -> float) ->
(float array -> float) -> float array -> float array -> floatfloat_int_mult methode function a b
val matrix_float_int_mult : ((float -> float) -> float -> float -> float) ->
(float array array -> float) ->
float array array -> float array array -> floatmatrix_float_int_mult methode function a b
val float_vector_int : ((float -> float) -> float -> float -> float) ->
(float -> float array) -> float -> float -> float arrayfloat_vector_int methode function a b
val float_matrix_int : ((float -> float) -> float -> float -> float) ->
(float -> float array array) -> float -> float -> float array arrayfloat_matrix_int methode function a b
val vector_int_mult : ((float -> float) -> float -> float -> float) ->
(float array -> float array) -> float array -> float array -> float arrayvector_int_mult methode function a b
val vector_matrix_int_mult : ((float -> float) -> float -> float -> float) ->
(float array -> float array array) ->
float array -> float array -> float array arrayvector_matrix_int_mult methode function a b
val matrix_vector_int_mult : ((float -> float) -> float -> float -> float) ->
(float array array -> float array) ->
float array array -> float array array -> float arraymatrix_vector_int_mult methode function a b
val matrix_int_mult : ((float -> float) -> float -> float -> float) ->
(float array array -> float array array) ->
float array array -> float array array -> float array arraymatrix_int_mult methode function a b
val float_int_mult_monte_carlo : int -> (float array -> float) -> float array -> float -> floatfloat_int_mult_monte_carlo samples function center range
val float_compensated_int_mult_monte_carlo : (float array -> 'a) ->
int -> float -> int -> (float array -> float) -> float array -> float -> 'afloat_compensated_int_mult_monte_carlo accelerator samples function center rangeThe
accelerator is appied to real numbers. The factor must be chosen 0 and 1.
L'accélérateur accelerator s'applique aux réels. Le facteur factor doit être choisi entre 0 et 1.
val vector_int_mult_monte_carlo : int -> (float array -> float array) -> float array -> float -> float arrayvector_int_mult_monte_carlo samples function center range
val vector_compensated_int_mult_monte_carlo : (float array array -> 'a) ->
int ->
float -> int -> (float array -> float array) -> float array -> float -> 'avector_compensated_int_mult_monte_carlo accelerator samples function center rangeThe
accelerator is appied to real vectors. The factor must be chosen 0 and 1.
L'accélérateur accelerator s'applique aux vecteurs réels. Le facteur factor doit être choisi entre 0 et 1.
val vector_matrix_int_mult_monte_carlo : int ->
(float array -> float array array) ->
float array -> float -> float array arrayvector_matrix_int_mult_monte_carlo samples function center range
val vector_matrix_compensated_int_mult_monte_carlo : (float array array array -> 'a) ->
int ->
float ->
int -> (float array -> float array array) -> float array -> float -> 'avector_matrix_compensated_int_mult_monte_carlo accelerator samples function center rangeThe
accelerator is appied to real matrices. The factor must be chosen 0 and 1.
L'accélérateur accelerator s'applique aux matrices réelles. Le facteur factor doit être choisi entre 0 et 1.
val surface_int_3 : ((float -> float) -> float -> float) ->
((float array -> float) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float) -> float array -> float array -> 'asurface_int_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a function from R^3 to R. The integration method methode_int calculates a double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une fonction de R^3 dans R.
La méthode d'intégration methode_int calcule une intégrale double.
val surface_int_2_3 : ((float -> float) -> float -> float) ->
((float array -> float) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float) -> float array -> float array -> 'asurface_int_2_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a function from R^2 to R. The integration method methode_int calculates a double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une fonction de R^2 dans R.
La méthode d'intégration methode_int calcule une intégrale double.
val surface_vector_int_3 : ((float -> float) -> float -> float) ->
((float array -> float array) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float array) -> float array -> float array -> 'asurface_vector_int_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a function from R^3 to R^n. The integration method methode_int calculates a vector double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une fonction de R^3 dans R^n.
La méthode d'intégration methode_int calcule une intégrale double à valeurs vectorielles.
val surface_vector_int_2_3 : ((float -> float) -> float -> float) ->
((float array -> float array) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float array) -> float array -> float array -> 'asurface_vector_int_2_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a function from R^2 to R^n. The integration method methode_int calculates a vector double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une fonction de R^2 dans R^n.
La méthode d'intégration methode_int calcule une intégrale double à valeurs vectorielles.
val surface_matrix_int_3 : ((float -> float) -> float -> float) ->
((float array -> float array array) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float array array) -> float array -> float array -> 'asurface_matrix_int_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a function from R^3 to M(n,p,R). The integration method methode_int calculates a matrix double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une fonction de R^3 dans M(n,p,R).
La méthode d'intégration methode_int calcule une intégrale double à valeurs matricielles.
val surface_matrix_int_2_3 : ((float -> float) -> float -> float) ->
((float array -> float array array) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float array array) -> float array -> float array -> 'asurface_matrix_int_2_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a function from R^2 to M(n,p,R). The integration method methode_int calculates a matrix double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une fonction de R^2 dans M(n,p,R).
La méthode d'intégration methode_int calcule une intégrale double à valeurs matricielles.
val surface_vector_flux_3 : ((float -> float) -> float -> float) ->
((float array -> float) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float array) -> float array -> float array -> 'asurface_vector_flux_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a vector field from R^3 to R^3. The integration method methode_int calculates a double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une champ de vecteurs de R^3 dans R^3.
La méthode d'intégration methode_int calcule une intégrale double.
val surface_vector_flux_2_3 : ((float -> float) -> float -> float) ->
((float array -> float) -> float array -> float array -> 'a) ->
(float array -> float array) ->
(float array -> float array) -> float array -> float array -> 'asurface_vector_flux_2_3 methode_diff methode_int f phi a bThe first function
f is a parametrization of the surface from R^2 to R^3,
the second phi is a vector field from R^2 to R^3. The integration method methode_int calculates a double integral.
La première fonction f est un paramétrage de la surface de R^2 dans R^3, la seconde phi est une champ de vecteurs de R^2 dans R^3.
La méthode d'intégration methode_int calcule une intégrale double.
val float_discrete_int_rect : float -> float array -> floatfloat_discrete_int_rect length vector
val float_discrete_int_trapez : float -> float array -> floatfloat_discrete_int_trapez length vector
val float_discrete_int_simpson : float -> float array -> floatfloat_discrete_int_simpson length vector
val float_discrete_int_interpol : (float array -> 'a) ->
('a -> float -> float -> float) -> float -> float array -> floatfloat_discrete_int_interpol methode_interp methode_int length vectorThe integration method
methode_int is aimed at functions and must contain all the parameters. The interpolation
method methode_interpol must contain all the parameters.
La méthode d'intégration methode_int est destinée aux fonctions et doit contenir tous les paramètres.
La méthode d'interpolation methode_interpol doit contenir tous les paramètres.
val vector_discrete_trans_int : (float array -> float) -> float -> float array array -> float arrayvector_discrete_trans_int methode length matrixThe data are given by coordinates.
Les données sont présentées coordonnée par coordonnée.
val vector_discrete_int : (float array -> float) -> float -> float array array -> float arrayvector_discrete_int methode length matrix
val float_discrete_int_double : (float -> float array -> float) ->
float -> float -> float array array -> floatfloat_discrete_int_double methode length_x length_y vectorThe row numbers match the ordinates and the column numbers match the abscissae.
Les numéros de ligne de v correspondent aux ordonnées et les numéros de colonne aux abscisses.
val vector_discrete_int_double : (float array -> float) ->
float -> float -> float array array array -> float arrayvector_discrete_int_double methode length_x length_y vectorThe row numbers match the ordinates and the column numbers match the abscissae.
Les numéros de ligne de v correspondent aux ordonnées et les numéros de colonne aux abscisses.
val float_fourier_coefficient : ((float -> float) -> float -> float -> float) ->
(float -> float) -> int -> float arrayfloat_fourier_coefficient methode function pulsationThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_fourier_coefficient_general : ((float -> float) -> float -> float -> float) ->
float -> float -> (float -> float) -> int -> float arrayfloat_fourier_coefficient_general methode beginning ending function pulsationThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_fourier_series : float array array -> float -> floatfloat_fourier_series coefficients real
val float_fourier_transform : ((float -> float) -> float -> float -> float) ->
float -> float -> (float -> float) -> float -> float arrayfloat_fourier_transform methode beginning ending function pulsationThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_inv_fourier_transform : ((float -> float) -> float -> float -> float) ->
float -> float -> (float -> float array) -> float -> floatfloat_inv_fourier_transform methode beginning ending function pulsationThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_laplace_complex : ((float -> float) -> float -> float -> 'a) ->
float -> (float -> float) -> float array -> 'a arrayfloat_laplace_complex methode ending function parameterThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_laplace_real : ((float -> float) -> float -> float -> 'a) ->
float -> (float -> float) -> float -> 'afloat_laplace_real methode ending function parameterThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_inv_laplace_complex : ((float -> float) -> float -> float -> float) ->
float -> float -> (float array -> float array) -> float -> float arrayfloat_inv_laplace_complex methode abscissa ending function parameterThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
val float_sumudu_real : ((float -> float) -> float -> float -> 'a) ->
float -> (float -> float) -> float -> 'afloat_sumudu_real methode ending function parameterThe method must contain the integrating method, included the parameters.
La méthode doit contenir la méthode d'intégration, y compris les paramètres.
Ces transformées nécessitent une normalisation des variables et paramètres de la part de l'utilisateur.
val discrete_float_causal_z_sequence : float array -> float array -> float array arraydiscrete_float_causal_z_sequence vector complex
val discrete_float_symmetric_z_sequence : float array -> float array -> float array arraydiscrete_float_symmetric_z_sequence vector complex
val discrete_float_causal_z_transform : float array -> float array -> float arraydiscrete_float_causal_z_transform vector complex
val discrete_float_symmetric_z_transform : float array -> float array -> float arraydiscrete_float_symmetric_z_transform vector complex
val discrete_float_causal_fourier_sequence : float array -> float -> float array arraydiscrete_float_causal_fourier_sequence vector pulsation
val discrete_float_causal_fourier_transform : float array -> float -> float arraydiscrete_float_causal_fourier_transform vector pulsationThis transform could be seen as a DTFT : discrete time Fourier transform. The inversion may use
float_inv_fourier_transform.
Cette transformée pourrait se ranger dans la catégorie DTFT.
L'inversion peut utiliser float_inv_fourier_transform.
val discrete_float_symmetric_fourier_sequence : float array -> float -> float array arraydiscrete_float_symmetric_fourier_sequence vector pulsation
val discrete_float_symmetric_fourier_transform : float array -> float -> float arraydiscrete_float_symmetric_fourier_transform vector complexThis transform could be seen as a DTFT : discrete time Fourier transform. The inversion may use
float_inv_fourier_transform.
Cette transformée pourrait se ranger dans la catégorie DTFT.
L'inversion peut utiliser float_inv_fourier_transform.
Toute transformée définie sur des fonctions peut s'appliquer aux données discrètes via l'interpolation.
val discrete_float_transform_int : (float array -> 'a) -> ('a -> int -> 'b) -> float array -> int -> 'bdiscrete_float_transform_int methode_interpol methode_transform vector integer
val discrete_float_transform_real : (float array -> 'a) -> ('a -> float -> 'b) -> float array -> float -> 'bdiscrete_float_transform_real methode_interpol methode_transform vector real
val discrete_float_transform_complex : (float array -> 'a) ->
('a -> float array -> 'b) -> float array -> float array -> 'bdiscrete_float_transform_complex methode_interpol methode_transform vector complex
val float_critical : ('a -> float -> 'b) ->
((float -> float) -> 'a) -> (float -> float) -> float -> 'bfloat_critical methode_zero methode_diff function start
val vector_float_critical : ((float array -> 'a array) -> float array -> 'b) ->
((float -> float) -> float -> 'a) ->
(float array -> float) -> float array -> 'bvector_float_critical methode_zero methode_diff function start
val vector_critical : ((float array -> float) -> float array -> 'a) ->
((float -> float) -> float -> float) ->
(float array -> float array) -> float array -> 'avector_critical methode_zero methode_diff function start
val float_local_inverse : ((float -> float) -> float -> 'a) -> float -> (float -> float) -> float -> 'afloat_local_inverse methode_zero guess function real
val vector_local_inverse : ((float array -> float array) -> float array -> 'a) ->
float array -> (float array -> float array) -> float array -> 'avector_local_inverse methode_zero guess function realAn exception probably means that the local inversion passed through a critical point. In this case, the start point
guess has to be changed, or the method of zero finding
should not use a tangent linear application.
Une exception signifie probablement que l'inversion locale est passée par un point critique.
Dans ce cas, il faut changer le point de départ guess ou prendre une méthode de recherche de zéro
qui n'utilise pas d'application linéaire tangente.
val float_implicit_function : ((float -> float) -> float -> 'a) ->
float -> (float -> float -> float) -> float -> 'afloat_implicit_function methode_zero guess function real
val vector_implicit_function : ((float array -> float array) -> float array -> 'a) ->
float array ->
(float array -> float array -> float array) -> float array -> 'avector_implicit_function methode_zero guess function real
val float_flat_search : ((float -> 'a) -> float -> 'b) ->
((float -> float) -> float -> float -> 'a) ->
(float -> float) -> float -> float -> 'bfloat_flat_search methode_zero methode_int function start lengthIt is question of searching an interval of length
length and upon which the integral
of the absolute value of the function is zero.
The method of zero finding, the method of integration and a start point x have to be stated.
Il s'agit de rechercher un intervalle de longueur length sur lequel
l'intégrale de la valeur absolue de la fonction est nulle.
Il faut préciser la méthode de recherche de zéro, la méthode d'intégration et un point de départ x.
val float_ode_euler : (float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_euler function nsteps value beginning ending
val vector_ode_euler : (float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_euler function nsteps value beginning ending
val matrix_ode_euler : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_euler function nsteps value beginning ending
val float_end_ode_euler : (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_euler function nsteps value beginning ending
val vector_end_ode_euler : (float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_euler function nsteps value beginning ending
val matrix_end_ode_euler : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_euler function nsteps value beginning ending
val float_ode_adams_bashforth_2 : (float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_adams_bashforth_2 function nsteps value beginning ending
val vector_ode_adams_bashforth_2 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_adams_bashforth_2 function nsteps value beginning ending
val matrix_ode_adams_bashforth_2 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_adams_bashforth_2 function nsteps value beginning ending
val float_end_ode_adams_bashforth_2 : (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_adams_bashforth_2 function nsteps value beginning ending
val vector_end_ode_adams_bashforth_2 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_adams_bashforth_2 function nsteps value beginning ending
val matrix_end_ode_adams_bashforth_2 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_adams_bashforth_2 function nsteps value beginning ending
val float_ode_adams_bashforth_3 : (float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_adams_bashforth_3 function nsteps value beginning ending
val vector_ode_adams_bashforth_3 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_adams_bashforth_3 function nsteps value beginning ending
val matrix_ode_adams_bashforth_3 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_adams_bashforth_3 function nsteps value beginning ending
val float_end_ode_adams_bashforth_3 : (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_adams_bashforth_3 function nsteps value beginning ending
val vector_end_ode_adams_bashforth_3 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_adams_bashforth_3 function nsteps value beginning ending
val matrix_end_ode_adams_bashforth_3 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_adams_bashforth_3 function nsteps value beginning ending
val float_ode_adams_bashforth : int ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_adams_bashforth order function nsteps value beginning ending
val vector_ode_adams_bashforth : int ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_adams_bashforth order function nsteps value beginning ending
val matrix_ode_adams_bashforth : int ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_adams_bashforth order function nsteps value beginning ending
val float_end_ode_adams_bashforth : int -> (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_adams_bashforth order function nsteps value beginning ending
val vector_end_ode_adams_bashforth : int ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_adams_bashforth order function nsteps value beginning ending
val matrix_end_ode_adams_bashforth : int ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_adams_bashforth order function nsteps value beginning ending
val float_ode_nystroem_3 : (float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_nystroem_3 function nsteps value beginning ending
val vector_ode_nystroem_3 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_nystroem_3 function nsteps value beginning ending
val matrix_ode_nystroem_3 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_nystroem_3 function nsteps value beginning ending
val float_end_ode_nystroem_3 : (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_nystroem_3 function nsteps value beginning ending
val vector_end_ode_nystroem_3 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_nystroem_3 function nsteps value beginning ending
val matrix_end_ode_nystroem_3 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_nystroem_3 function nsteps value beginning ending
val float_ode_mid_point : (float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_mid_point function nsteps value beginning ending
val vector_ode_mid_point : (float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_mid_point function nsteps value beginning ending
val matrix_ode_mid_point : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_mid_point function nsteps value beginning ending
val float_end_ode_mid_point : (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_mid_point function nsteps value beginning ending
val vector_end_ode_mid_point : (float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_mid_point function nsteps value beginning ending
val matrix_end_ode_mid_point : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_mid_point function nsteps value beginning ending
val float_ode_rk4 : (float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_rk4 function nsteps value beginning ending
val vector_ode_rk4 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_rk4 function nsteps value beginning ending
val matrix_ode_rk4 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_rk4 function nsteps value beginning ending
val float_end_ode_rk4 : (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_rk4 function nsteps value beginning ending
val vector_end_ode_rk4 : (float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_rk4 function nsteps value beginning ending
val matrix_end_ode_rk4 : (float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_rk4 function nsteps value beginning ending
val float_ode_runge_kutta : float array array ->
float array ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_runge_kutta butcher_matrix butcher_vector function nsteps value beginning ending
val vector_ode_runge_kutta : float array array ->
float array ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_runge_kutta butcher_matrix butcher_vector function nsteps value beginning ending
val matrix_ode_runge_kutta : float array array ->
float array ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_runge_kutta butcher_matrix butcher_vector function nsteps value beginning ending
val float_end_ode_runge_kutta : float array array ->
float array ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_runge_kutta butcher_matrix butcher_vector function nsteps value beginning ending
val vector_end_ode_runge_kutta : float array array ->
float array ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_runge_kutta butcher_matrix butcher_vector function nsteps value beginning ending
val matrix_end_ode_runge_kutta : float array array ->
float array ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_runge_kutta butcher_matrix butcher_vector function nsteps value beginning ending
Suivent quelques tableaux de Butcher. Ils ont été glanés sur internet. La matrice carrée doit être triangulaire inférieure au sens strict. Les tableaux des méthodes adaptatives explicites cités plus loin peuvent aussi être exploités.
val euler_a : float array arrayval euler_b : float arrayval mid_point_a : float array arrayval mid_point_b : float arrayval imex_ssp2_2_2_2_a : float array arrayval imex_ssp2_2_2_2_b : float array
La méthode ci-dessus est aussi appelée Lobatto III pour s = 2.
val heun_a : float array arrayval heun_b : float arrayval rk2_runge_a : float array arrayval rk2_runge_b : float arrayval imex_ssp2_3_2_2_a : float array arrayval imex_ssp2_3_2_2_b : float arrayval imex_ssp2_3_3_2_a : float array arrayval imex_ssp2_3_3_2_b : float arrayval imex_ssp3_3_3_2_a : float array arrayval imex_ssp3_3_3_2_b : float arrayval example_a : float array arrayval example_b : float arrayval imex_ssp3_4_3_3_a : float array arrayval imex_ssp3_4_3_3_b : float arrayval rk4_a : float array arrayval rk4_b : float arrayval rk4_3_8_a : float array arrayval rk4_3_8_b : float arrayval hem_4_5_a : float array arrayval hem_4_5_b : float arrayval rk5_kutta_first_a : float array arrayval rk5_kutta_first_b : float arrayval rk5_kutta_second_a : float array arrayval rk5_kutta_second_b : float arrayval rk5_cassity_a : float array arrayval rk5_cassity_b : float arrayval rk6_butcher_a : float array arrayval rk6_butcher_b : float arrayval float_ode_back_euler : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_back_euler methode function nsteps value beginning endingThe method must contain the solving method, included the method of derivation and all the parameters, as in the following example.
y' = f(x,y) float_zero_householder ( float_richardson_deriv 3. 4 1e-3 ) 3 100
La méthode doit contenir la méthode de résolution, y compris la méthode de dérivation et tous les paramètres,
comme dans l'exemple ci-dessus.
val float_end_ode_back_euler : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_back_euler methode function nsteps value beginning endingThe method must contain the solving method, included the method of derivation and all the parameters, as in the following example.
y' = f(x,y) float_zero_householder ( float_richardson_deriv 3. 4 1e-3 ) 3 100
La méthode doit contenir la méthode de résolution, y compris la méthode de dérivation et tous les paramètres,
comme dans l'exemple ci-dessus.
val float_ode_trapezoid : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_trapezoid methode function nsteps value beginning endingThe method must contain the solving method, included the method of derivation and all the parameters, as in the following example.
float_zero_householder ( float_richardson_deriv 3. 4 1e-3 ) 3 100
La méthode doit contenir la méthode de résolution, y compris la méthode de dérivation et tous les paramètres,
comme dans l'exemple ci-dessus.
val float_end_ode_trapezoid : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_trapezoid methode function nsteps value beginning endingThe method must contain the solving method, included the method of derivation and all the parameters, as in the following example.
float_zero_householder ( float_richardson_deriv 3. 4 1e-3 ) 3 100
La méthode doit contenir la méthode de résolution, y compris la méthode de dérivation et tous les paramètres,
comme dans l'exemple ci-dessus.
val float_ode_adams_moulton_2 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_adams_moulton_2 methode function nsteps value beginning ending
val float_end_ode_adams_moulton_2 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_adams_moulton_2 methode function nsteps value beginning ending
val float_ode_milne_simpson_2 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_milne_simpson_2 methode function nsteps value beginning ending
val float_end_ode_milne_simpson_2 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_milne_simpson_2 methode function nsteps value beginning ending
val float_ode_bdf_2 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_bdf_2 methode function nsteps value beginning ending
val float_end_ode_bdf_2 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_bdf_2 methode function nsteps value beginning ending
val float_ode_bdf_3 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_bdf_3 methode function nsteps value beginning ending
val float_end_ode_bdf_3 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_bdf_3 methode function nsteps value beginning ending
val float_ode_bdf_4 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_bdf_4 methode function nsteps value beginning ending
val float_end_ode_bdf_4 : ((float -> float) -> float -> float) ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_bdf_4 methode function nsteps value beginning ending
val float_ode_runge_kutta_impl : ((float -> float) -> float -> float) ->
float array array ->
float array ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_runge_kutta_impl methode butcher_matrix butcher_vector function nsteps value beginning ending
val float_end_ode_runge_kutta_impl : ((float -> float) -> float -> float) ->
float array array ->
float array ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_runge_kutta_impl methode butcher_matrix butcher_vector function nsteps value beginning ending
Suivent quelques tableaux de Butcher. Ils ont été glanés sur internet. La matrice carrée doit être triangulaire inférieure au sens large. (sauf dans le cas particulier de la méthode trapézoïdale). Certains tableaux cités dans les méthodes à résolution multidimansionnelle peuvent donc être utilisés s'ils répondent à la condition.
val backward_euler_a : float array arrayval backward_euler_b : float arrayval rk1_gauss_a : float array arrayval rk1_gauss_b : float arrayval rk2_burrage_a : float array arrayval rk2_burrage_b : float arrayval rk2_radauI_a : float array arrayval rk2_radauI_b : float arrayval rk2_radauII_a : float array arrayval rk2_radauII_b : float arrayval rk2_sdirk_2A_b : float arrayval rk2_sdirk_2A_a : float array arrayval rk2_sdirk_2B_b : float arrayval rk2_sdirk_2B_a : float array arrayval rk2_sdirk_3A_b : float arrayval rk2_sdirk_3A_a : float array arrayval rk3_example_a : float array arrayval rk3_example_b : float arrayval imex_ssp2_2_2_2_impl_a : float array arrayval imex_ssp2_2_2_2_impl_b : float arrayval imex_ssp2_3_2_2_impl_a : float array arrayval imex_ssp2_3_2_2_impl_b : float arrayval imex_ssp2_3_3_2_impl_a : float array arrayval imex_ssp2_3_3_2_impl_b : float arrayval imex_ssp3_3_3_2_impl_a : float array arrayval imex_ssp3_3_3_2_impl_b : float arrayval mod_ext_bdf_a : float array arrayval mod_ext_bdf_b : float arrayval lambda_example_start : floatval lambda_example_polynom : float -> floatval lambda_example : floatval lambda_example_b : float arrayval lambda_example_a : float array arrayval imex : float arrayval imex_ssp3_4_3_3_impl_a : float array arrayval imex_ssp3_4_3_3_impl_b : float arrayval rk5_try_a : float array arrayval rk5_try_b : float arrayval float_ode_runge_kutta_impl_multi : ((float array -> float array) -> float array -> float array) ->
float array array ->
float array ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_runge_kutta_impl_multi methode butcher_matrix butcher_vector function nsteps value beginning ending
val float_end_ode_runge_kutta_impl_multi : ((float array -> float array) -> float array -> float array) ->
float array array ->
float array ->
(float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_runge_kutta_impl_multi methode butcher_matrix butcher_vector function nsteps value beginning ending
Suivent quelques tableaux de Butcher. Ils ont été glanés sur internet.
val trapezoid_a : float array arrayval trapezoid_b : float arrayval rk2_gauss_a : float array arrayval rk2_gauss_b : float arrayval rk2_radauIA_a : float array arrayval rk2_radauIA_b : float arrayval rk2_radauIIA_a : float array arrayval rk2_radauIIA_b : float arrayval rk3_gauss_a : float array arrayval rk3_gauss_b : float arrayval rk3_radauI_a : float array arrayval rk3_radauI_b : float arrayval rk5_radauIA_a : float array arrayval rk5_radauIA_b : float arrayval rk3_radauII_a : float array arrayval rk3_radauII_b : float arrayval rk3_radauIIA_b : float arrayval rk3_radauIIA_a : float array arrayval rk5_radauIIA_a : float array arrayval rk5_radauIIA_a_inv : float array arrayval rk5_radauIIA_b : float arrayval rk9_radauIIA_b : float arrayval rk9_radauIIA_a : float array arrayval rk9_radauIIA_a_inv : float array arrayval rk13_radauIIA_b : float arrayval rk13_radauIIA_a : float array arrayval rk13_radauIIA_a_inv : float array arrayval rk2_lobattoIIIA_a : float array arrayval rk2_lobattoIIIA_b : float arrayval rk4_lobattoIIIA_a : float array arrayval rk4_lobattoIIIA_b : float arrayval rk6_lobattoIIIA_b : float arrayval rk6_lobattoIIIA_a : float array arrayval rk2_lobattoIIIB_a : float array arrayval rk2_lobattoIIIB_b : float arrayval rk4_lobattoIIIB_a : float array arrayval rk4_lobattoIIIB_b : float arrayval rk6_lobattoIIIB_b : float arrayval rk6_lobattoIIIB_a : float array arrayval rk2_lobattoIIIC_a : float array arrayval rk2_lobattoIIIC_b : float arrayval rk4_lobattoIIIC_a : float array arrayval rk4_lobattoIIIC_b : float arrayval rk2_lobattoIIICstar_a : float array arrayval rk2_lobattoIIICstar_b : float arrayval rk4_lobattoIIICstar_a : float array arrayval rk4_lobattoIIICstar_b : float arrayval rk2_lobattoIIID_a : float array arrayval rk2_lobattoIIID_b : float arrayval rk4_lobattoIIID_a : float array arrayval rk4_lobattoIIID_b : float arrayval example_DESIRE_b : float arrayval example_DESIRE_a : float array arrayval float_ode_runge_kutta_simple_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_runge_kutta_simple_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val vector_ode_runge_kutta_simple_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_runge_kutta_simple_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val matrix_ode_runge_kutta_simple_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_runge_kutta_simple_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val float_end_ode_runge_kutta_simple_adapt : float array array ->
float array ->
float array ->
float -> (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_runge_kutta_simple_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val vector_end_ode_runge_kutta_simple_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_runge_kutta_simple_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val matrix_end_ode_runge_kutta_simple_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_runge_kutta_simple_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val float_end_ode_runge_kutta_adapt : float array array ->
float array ->
float array ->
float -> (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_runge_kutta_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val vector_end_ode_runge_kutta_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_runge_kutta_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val matrix_end_ode_runge_kutta_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_runge_kutta_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val float_end_ode_runge_kutta_bounded : int ->
float array array ->
float array ->
float array ->
float -> (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_runge_kutta_bounded maxstages butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val vector_end_ode_runge_kutta_bounded : int ->
float array array ->
float array ->
float array ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_runge_kutta_bounded maxstages butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val matrix_end_ode_runge_kutta_bounded : int ->
float array array ->
float array ->
float array ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_runge_kutta_bounded maxstages butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val float_ode_runge_kutta_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_runge_kutta_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val vector_ode_runge_kutta_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_runge_kutta_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val matrix_ode_runge_kutta_adapt : float array array ->
float array ->
float array ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_runge_kutta_adapt butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val float_ode_runge_kutta_bounded : int ->
float array array ->
float array ->
float array ->
float ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_runge_kutta_bounded maxstages butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val vector_ode_runge_kutta_bounded : int ->
float array array ->
float array ->
float array ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_runge_kutta_bounded maxstages butcher_matrix butcher_vector_fine butcher_vector_raw tolerance function nsteps value beginning ending
val matrix_ode_runge_kutta_bounded : int ->
float array array ->
float array ->
float array ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_runge_kutta_bounded maxstages butcher_matrix butcher_matrix_fine butcher_vector_raw tolerance function nsteps value beginning ending
Suivent quelques tableaux de Butcher. Ils ont été glanés sur internet.
val rk2_a : float array arrayval rk2_b_fine : float arrayval rk2_b_raw : float arrayval rkf_2_3_a : float array arrayval rkf_2_3_b_fine : float arrayval rkf_2_3_b_raw : float arrayval bogacki_shampine_a : float array arrayval bogacki_shampine_b_raw : float arrayval bogacki_shampine_b_fine : float arrayval rk4_bogacki_shampine_a : float array arrayval rk4_bogacki_shampine_b_fine : float arrayval rk4_bogacki_shampine_b_err : float arrayval rk4_bogacki_shampine_b_raw : float arrayval dormand_prince_4_5_a : float array arrayval dormand_prince_4_5_b_raw : float arrayval dormand_prince_4_5_b_fine : float arrayval runge_kutta_fehlberg_a : float array arrayval runge_kutta_fehlberg_b_fine : float arrayval runge_kutta_fehlberg_b_raw : float arrayval cash_karp_a : float array arrayval cash_karp_b_fine : float arrayval cash_karp_b_raw : float arrayval hem_5_3_a : float array arrayval hem_5_3_b_fine : float arrayval hem_5_3_b_raw : float arrayval rk5_4_cash669_first_a : float array arrayval rk5_4_cash669_first_b_fine : float arrayval rk5_4_cash669_first_b_halfdiff : float arrayval rk5_4_cash669_first_b_raw : float arrayval rk6_4_cash669_second_b_fine : float arrayval rk6_4_cash669_second_a : float array arrayval rk6_4_cash669_second_b_halfdiff : float arrayval rk6_4_cash669_second_b_raw : float arrayval rk7_dormand_prince_a : float array arrayval rk7_dormand_prince_b_raw : float arrayval rk7_dormand_prince_b_fine : float arrayval dormand_prince_8_5_3_a : float array arrayval dormand_prince_8_5_3_b_fine : float arrayval dormand_prince_8_5_3_b_err : float arrayval dormand_prince_8_5_3_b_raw : float array
Les méthodes adaptatives qui suivent sont adaptées à n'importe quelle méthode de Runge-Kutta, qu'elle soit implicite ou explicite.
val float_end_ode_adapt : ((float -> float -> float) -> int -> float -> float -> float -> float) ->
float -> (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_adapt methode tolerance function nsteps value beginning endingThe
methode must
give the final value of a solution.
La méthode methode doit donner la valeur finale d'une solution.
val vector_end_ode_adapt : ((float -> float array -> float array) ->
int -> float array -> float -> float -> float array) ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_adapt methode tolerance function nsteps value beginning endingThe
methode must
give the final value of a solution.
La méthode methode doit donner la valeur finale d'une solution.
val matrix_end_ode_adapt : ((float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array) ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_adapt methode tolerance function nsteps value beginning endingThe
methode must
give the final value of a solution.
La méthode methode doit donner la valeur finale d'une solution.
val float_end_ode_bounded : int ->
((float -> float -> float) -> int -> float -> float -> float -> float) ->
float -> (float -> float -> float) -> int -> float -> float -> float -> floatfloat_end_ode_bounded maxstages methode tolerance function nsteps value beginning endingThe
methode must only give the final value
of the solution of the ordinary differential equation.
La méthode methode doit donner seulement la valeur finale de la solution de l'équation différentielle ordinaire.
val vector_end_ode_bounded : int ->
((float -> float array -> float array) ->
int -> float array -> float -> float -> float array) ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float arrayvector_end_ode_bounded maxstages methode tolerance function nsteps value beginning endingThe
methode must only give the final value
of the solution of the ordinary differential equation.
La méthode methode doit donner seulement la valeur finale de la solution de l'équation différentielle ordinaire.
val matrix_end_ode_bounded : int ->
((float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array) ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array arraymatrix_end_ode_bounded maxstages methode tolerance function nsteps value beginning endingThe
methode must only give the final value
of the solution of the ordinary differential equation.
La méthode methode doit donner seulement la valeur finale de la solution de l'équation différentielle ordinaire.
val float_ode_adapt : ((float -> float -> float) -> int -> float -> float -> float -> float array) ->
float ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_adapt methode tolerance function nsteps value beginning ending
val vector_ode_adapt : ((float -> float array -> float array) ->
int -> float array -> float -> float -> float array array) ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_adapt methode tolerance function nsteps value beginning ending
val matrix_ode_adapt : ((float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array array) ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_adapt methode tolerance function nsteps value beginning ending
val float_ode_bounded : int ->
((float -> float -> float) -> int -> float -> float -> float -> float array) ->
float ->
(float -> float -> float) -> int -> float -> float -> float -> float arrayfloat_ode_bounded methode tolerance function nsteps value beginning ending
val vector_ode_bounded : int ->
((float -> float array -> float array) ->
int -> float array -> float -> float -> float array array) ->
float ->
(float -> float array -> float array) ->
int -> float array -> float -> float -> float array arrayvector_ode_bounded methode tolerance function nsteps value beginning ending
val matrix_ode_bounded : int ->
((float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array array) ->
float ->
(float -> float array array -> float array array) ->
int -> float array array -> float -> float -> float array array arraymatrix_ode_bounded methode tolerance function nsteps value beginning ending
val phem_5_6_a : float array arrayval phem_5_6_b_raw : float arrayval phem_5_6_b_fine : float array
Les présentes résolutions fonctionnent s'il est possible d'extraire une fonction implicite pour donner y'.
val float_ode_implicit : ((float -> float -> float) -> int -> float -> float -> float -> 'a) ->
((float -> float) -> float -> float) ->
(float -> float -> float -> float) ->
float -> int -> float -> float -> float -> 'afloat_ode_implicit methode_ode methode_zero function guess nsteps value beginning endingThe ordinary differential equations solving method
methode_ode must apply to explicit equations y' = f(x,y) as in the following example.
The hint guess permits to proceed to an initial seek for y'(beginning).
Beware ! this method is polymorphic and gives at end either a vector or a real, mimicing the behaviour of methode_ode.
float_ode_adapt ( float_ode_runge_kutta_adapt cash_karp_a cash_karp_b_fine cash_karp_b_raw 1e-1 ) 1e-2
La méthode methode_ode de résolution d'équations différentielles ordinaires doit s'appliquer
aux équations explicites y' = f(x,y) comme dans l'exemple ci-dessus.
L'indice guess permet de faire une recherche initiale pour y'(beginning).
Attention ! cette méthode est polymorphe et donne à la fin soit un vecteur soit un réel
calquant le ccomportement de methode_ode.
val vector_ode_implicit : ((float -> float array -> float array) ->
int -> float array -> float -> float -> 'a) ->
((float array -> float array) -> float array -> float array) ->
(float -> float array -> float array -> float array) ->
float array -> int -> float array -> float -> float -> 'avector_ode_implicit methode_ode methode_zero function guess nsteps value beginning endingThe ordinary differential equations solving method
methode_ode must apply to explicit equations y' = f(x,y) as in the following example.
The hint guess permits to proceed to an initial seek for y'(beginning).
Beware ! this method is polymorphic and gives at end either a vector or a real, mimicing the behaviour of methode_ode.
vector_ode_adapt ( vector_ode_runge_kutta_adapt cash_karp_a cash_karp_b_fine cash_karp_b_raw 1e-1 ) 1e-2
La méthode methode_ode de résolution d'équations différentielles ordinaires doit s'appliquer
aux équations explicites y' = f(x,y) comme dans l'exemple ci-dessus.
L'indice guess permet de faire une recherche initiale pour y'(beginning).
Attention ! cette méthode est polymorphe et donne à la fin soit un vecteur soit un réel
calquant le ccomportement de methode_ode.
val gen_dirac_mass : 'a -> ('a -> 'b) -> 'bgen_dirac_mass
val float_dirac_mass : (float -> 'a) -> 'afloat_dirac_mass function
val float_gen_dirac_mass : float -> (float -> 'a) -> 'afloat_gen_dirac_mass position function
val float_dirac_comb : int -> (float -> float) -> floatfloat_dirac_comb size function
val float_vector_dirac_comb : int -> (float -> float array) -> float arrayfloat_vector_dirac_comb size function
val float_matrix_dirac_comb : int -> (float -> float array array) -> float array arrayfloat_matrix_dirac_comb size function
val vector_dirac_mass : int -> (float array -> 'a) -> 'avector_dirac_mass dimension function
val vector_gen_dirac_mass : float array -> (float array -> 'a) -> 'avector_gen_dirac_mass position function
val matrix_dirac_mass : int -> int -> (float array array -> 'a) -> 'amatrix_dirac_mass n_rows n_columns function
val matrix_gen_dirac_mass : float array array -> (float array array -> 'a) -> 'amatrix_gen_dirac_mass position function
val float_dirac_family_bell : float -> float -> floatfloat_dirac_family_bell parameter real
val float_dirac_family_rectangle : float -> float -> floatfloat_dirac_family_rectangle parameter real
val float_dirac_family_triangle : float -> float -> floatfloat_dirac_family_triangle parameter real
val float_distrib_deriv : (('a -> float) -> 'b) -> ('b -> float) -> ('a -> float) -> floatfloat_distrib_deriv
val vector_distrib_deriv : (('a -> float array) -> 'b) ->
('b -> float array) -> ('a -> float array) -> float arrayvector_distrib_deriv
val matrix_distrib_deriv : (('a -> float array array) -> 'b) ->
('b -> float array array) -> ('a -> float array array) -> float array arraymatrix_distrib_deriv
val float_variable_translation : float -> (float -> 'a) -> float -> 'afloat_variable_translation value function real
val vector_float_variable_translation : float array -> (float array -> 'a) -> float array -> 'avector_float_variable_translation value function real
val matrix_float_variable_translation : float array array -> (float array array -> 'a) -> float array array -> 'amatrix_float_variable_translation value function real
val float_distrib_transform : (('a -> 'b) -> 'c) -> ('c -> 'd) -> ('a -> 'b) -> 'dfloat_distrib_transform
val normal_cumul_distribution : float -> floatnormal_cumul_distribution real
val normal_cumul_distribution_complem : float -> floatnormal_cumul_distribution_complem real
val erf : float -> floaterf real
val erf_complem : float -> floaterf_complem real
val normal_quantile : float -> floatnormal_quantile realThis function must be equal to
probit.
Cette fonction doit être égale à probit.
val probit : float -> floatprobit realThis function must be equal to
normal_quantile.
Cette fonction doit être égale à normal_quantile.
val sin_int : float -> floatsin_int real
val si : float -> floatsi real
val shi : float -> floatshi real
val elliptic_integral_first_kind : float -> float -> floatelliptic_integral_first_kind k x
val elliptic_integral_second_kind : float -> float -> floatelliptic_integral_second_kind k x
val elliptic_integral_secondBis_kind : float -> float -> floatelliptic_integral_secondBis_kind k x
val elliptic_integral_third_kind : float -> float -> float -> floatelliptic_integral_third_kind k c x
val elliptic_integral : ((float -> float) -> float -> float -> 'a) ->
float array array -> float array array -> float array -> float -> float -> 'aelliptic_integral methode coefficients_up coefficients_down root_coefficients xThe integration method
methode
must contain all the parameters.
La méthode d'intégration methode doit contenir tous les paramètres.
val expm_ode : (('a -> float array array -> float array array) ->
int -> float array array -> float -> float -> 'b) ->
int -> float array array -> 'bexpm_ode methode nsteps matrix
val expm_ode_bis : (('a -> float array array -> float array array) ->
int -> float array array -> float -> float -> 'b) ->
int -> float array array -> 'bexpm_ode_bis methode nsteps matrix
val slow_tune_expm : float -> float array array -> float array arrayslow_tune_expm threshold matrix
val slow_tune_expm_bis : float -> float array array -> float array arrayslow_tune_expm_bis threshold matrix
val tune_expm : float -> float array array -> float array arraytune_expm threshold matrix
val tune_expm_bis : float -> float array array -> float array arraytune_expm_bis threshold matrix
val slow_direct_expm : float array array -> float array arrayslow_direct_expm matrix
val slow_direct_expm_bis : float array array -> float array arrayslow_direct_expm_bis matrix
val direct_expm : float array array -> float array arraydirect_expm matrix
val direct_expm_bis : float array array -> float array arraydirect_expm_bis matrix
val slow_expm : float array array -> float array arrayslow_expm matrix
val slow_expm_bis : float array array -> float array arrayslow_expm_bis matrix
val slow_expm_ter : float array array -> float array arrayslow_expm_ter matrix
val slow_expm_quater : float array array -> float array arrayslow_expm_quater matrix
val expm : float array array -> float array arrayexpm matrix
val expm_bis : float array array -> float array arrayexpm_bis matrix
val expm_ter : float array array -> float array arrayexpm_ter matrix
val expm_quater : float array array -> float array arrayexpm_quater matrix
val curv_absc : ((float -> float) -> float -> float) ->
((float -> float) -> float -> float -> 'a) ->
(float -> float array) -> float -> float -> 'acurv_absc methode_diff methode_int function x yThe (unidimensional) derivating method
methode_diff must contain the parameters, including the step.
The integrating method methode_int must contain all the needed parameters.
La méthode de dérivation (unidimensionnelle) methode_diff doit contenir les paramètres, y compris le pas.
La méthode d'intégration methode_int doit contenir tous les paramaètres nécessaires.
val developpante : ((float -> float) -> float -> float) ->
((float -> float) -> float -> float -> float) ->
(float -> float array) -> float -> float -> float -> float arraydeveloppante methode_diff methode_int function parameter beginning realThe (unidimensional) derivating method
methode_diff must contain the parameters, including the step.
The integrating method methode_int must contain all the needed parameters.
La méthode de dérivation (unidimensionnelle) methode_diff doit contenir les paramètres, y compris le pas.
La méthode d'intégration methode_int doit contenir tous les paramaètres nécessaires.
val prescribed_curvature_2 : ((float -> float array -> float array) ->
'a -> float array -> float -> float -> 'b) ->
(float -> float) -> 'a -> float -> float -> 'bprescribed_curvature_2 methode function nsteps beginning endingThe vectorial ordinary differential equations solving method
methode may either
give all the steps or only the final value.
La méthode de résolution d'équations différentielles ordinaires vectorielles methode peut soit donner tous les pas soit donner seulement la valeur finale.
val prescribed_curvature_torsion_3 : ((float -> float array -> float array) ->
'a -> float array -> float -> float -> 'b) ->
(float -> float) -> (float -> float) -> 'a -> float -> float -> 'bprescribed_curvature_torsion_3 methode function nsteps beginning endingThe vectorial ordinary differential equations solving method
methode may either
give all the steps or only the final value.
La méthode de résolution d'équations différentielles ordinaires vectorielles methode peut soit donner tous les pas soit donner seulement la valeur finale.
val prescribed_multicurvature : ((float -> float array -> float array) ->
'a -> float array -> float -> float -> 'b) ->
(float -> float array) -> 'a -> float -> float -> 'bprescribed_multicurvature methode function nsteps beginning endingThe vectorial ordinary differential equations solving method
methode may either
give all the steps or only the final value.
La méthode de résolution d'équations différentielles ordinaires vectorielles methode peut soit donner tous les pas soit donner seulement la valeur finale.
val clothoid : ((float -> float) -> float -> float -> 'a) -> float -> 'a arrayclothoid methode realThe method
methode is that of one-dimensional integration.
La méthode methode est celle d'intégration unidimensionnelle.