Maple Professionel
Maple Académique
Maple Edition Étudiant
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professionel
MapleSim Académique
Maple T.A. - Suite d'examens de classement
Maple T.A. MAA Placement Test Suite
Möbius - Didacticiels de mathématiques en ligne
Machine Design / Industrial Automation
Aéronautique
Ingénierie des véhicules
Robotics
Energie
System Simulation and Analysis
Model development for HIL
Modélisation du procédé pour la conception de systèmes de contrôle
Robotics/Motion Control/Mechatronics
Other Application Areas
Enseignement des mathématiques
Enseignement de l’ingénierie
Enseignement secondaire et supérieur (CPGE, BTS)
Tests et évaluations
Etudiants
Modélisation financière
Recherche opérationnelle
Calcul haute performance
Physique
Webinaires en direct
Webinaires enregistrés
Agenda des évènements
Forum MaplePrimes
Blog Maplesoft
Membres Maplesoft
Maple Ambassador Program
MapleCloud
Livres blancs techniques
Bulletin électronique
Livres Maple
Math Matters
Portail des applications
Galerie de modèles MapleSim
Cas d'Etudes Utilisateur
Exploring Engineering Fundamentals
Concepts d’enseignement avec Maple
Centre d’accueil utilisateur Maplesoft
Centre de ressources pour enseignants
Centre d’assistance aux étudiants
RootFinding[NextZero] - find next zero of a function along the real line
Calling Sequence
NextZero(p,v)
NextZero(p,v,options)
Parameters
p
-
Maple function to find the zero of
v
real start value for zero finding
options
optional equations used to specify the behavior (see below)
Description
NextZero is a numerical root finder that can be used to find the next real zero of the input function to the right of a specified point up to the maximum distance past the specified point (default is ). It can be used to iterate through the zeros of a function along the positive axis direction.
The capabilities of NextZero are limited to finding zeros (and singularities) for functions that have local Laurent expansions, and as such it is unable to find zeros for pathological functions, such as exp(-1/x^2), and in fact for this example it may not even terminate.
There are several options available to control its behavior, and these are as follows:
signchange - NextZero can either locate or skip sign changes that are not zeros of a function (i.e. singularities or jump discontinuities). By default, signchange=false, and these are ignored. Passing the option signchange=true causes these to be reported instead.
initialDigits - NextZero uses several different computation phases. In the initial phase, lower precision is used to get a rough approximation of a zero, then in a later phase, the precision is increased to the requested precision. By default, the initial computation proceeds at 10 Digits. This can be set to a smaller value (though this is not recommended), but the option is generally provided for difficult function that do not evaluate well at 10 Digits.
guardDigits - Specifies the number of guard digits to use for the computation. Note that for this function to work properly, evalf must be able to compute the values of the function accurate within 0.6 ulp of the working precision. This is currently only true for atomic expressions (e.g. x, sin(x), tan(x)) but is generally false for compound expressions (e.g. x*sin(x), x+1). By default, guardDigits is set to 1. The value of guardDigits must be a non-negative integer.
maxdistance - Specifies the maximum distance to travel past the initial point when searching for a root. By default this is 100, meaning the search will continue up to initial point+100. In the event that no root is found up to that point, FAIL is returned.
abstol - Specifies the tightest resolution to use for the independent variable when finding a root. This is most useful for roots near zero, as a pure relative accuracy test will never complete. The default setting for this parameter is 1e-10/log[10](Digits) (or 10 digits below the current setting of Digits).
Examples
By default sign changes due to singularities are ignored (in this case, there is a singularity at ~ 1.570796327)
Setting the option signchange to true changes this behavior
An example with no root
Examples with double roots
Download Help Document