Scelta di un algoritmo di soluzione
È possibile scegliere un algoritmo di soluzione per le funzioni Find, Minerr, Minimize, Maximize, Pdesolve, Odesolve, numol, genfit e polyroots, nonché per gli integrali definiti.
• Per visualizzare l'algoritmo, fare clic con il pulsante destro del mouse sul nome della funzione o sull'operatore integrale.
• Per modificare l'algoritmo di soluzione, selezionare un algoritmo dall'elenco.
Selezione dell'algoritmo per integrali definiti
Di seguito sono indicati i
metodi di integrazione numerica disponibili.
• Romberg - Applicabile alla maggior parte degli integrali. Utilizza approssimazioni trapezoidali su un numero pari di sottointervalli; quindi confronta stime sequenziali sommando le aree dei trapezi.
• Adattivo - Applicabile a funzioni che cambiano rapidamente nell'intervallo di integrazione. Noto anche come metodo di quadratura adattiva.
• Limite infinito - Applicabile a integrali in cui uno o entrambi i limiti sono infiniti. La funzione da integrare deve essere reale.
• Punto finale singolare - Applicabile agli integrali con una singolarità o un infinito in uno o entrambi i limiti di integrazione. Noto anche come metodo di Romberg aperto.
Informazioni aggiuntive:
• Se almeno uno dei limiti integrali è maggiore del valore assoluto di 10^307, o se è un infinito, Selezione automatica utilizza il metodo Limite infinito come algoritmo di soluzione. Per gli altri casi, viene utilizzato il metodo Adattativo.
Selezione dell'algoritmo per Find, Minerr, Minimize e Maximize
Per
Find e Minerr, l'algoritmo di default utilizzato da
Selezione automatica è il metodo
Non lineare: Levenberg-Marquardt.
Per
Minimize e Maximize,
Selezione automatica tenterà automaticamente più algoritmi finché il problema non sarà risolto. L'operazione avrà esito negativo solo se il problema non può essere risolto tramite nessuno degli algoritmi.
• Lineare - Applicabile quando il problema ha una struttura lineare, ovvero funzioni obiettivo con tutti i vincoli. Questo algoritmo fornisce risultati rapidi e precisi.
• Non lineare: Levenberg-Marquardt - Tenta di trovare gli zeri degli errori nei vincoli. Se non vengono trovati zeri, il metodo minimizza la somma dei quadrati degli errori nei vincoli. Questo algoritmo non è disponibile per le funzioni Minimize e Maximize.
• Non lineare: gradiente coniugato - Fattorizza una matrice di proiezione e applica il metodo del gradiente coniugato per minimizzare approssimativamente un modello quadratico del problema della barriera.
• Non lineare: SQP - Questo metodo di insieme attivo risolve una sequenza di sottoproblemi di programmazione quadratica per trovare la soluzione.
• Non lineare: punto interno - Questo metodo sostituisce il problema di programmazione non lineare con una serie di sottoproblemi barriera controllati da un parametro barriera.
• Non lineare: insieme attivo -I metodi di insieme attivo risolvono una sequenza di sottoproblemi basati su un modello quadratico del problema originale.
Risoluzione dei problemi:
• Provare un metodo diverso. Per il problema che si sta tentando di risolvere, un metodo particolare potrebbe funzionare meglio o peggio degli altri.
• Provare un valore ipotizzato diverso o aggiungere un vincolo di disuguaglianza. Se si sta cercando una soluzione complessa, fornire un valore ipotizzato complesso.
• Utilizzare Minerr anziché Find per raggiungere una soluzione approssimata.
• Provare un valore diverso per
TOL o CTOL.
Per i sistemi che prevedono più di una soluzione, la soluzione restituita dipende dai valori ipotizzati. È possibile aggiungere disuguaglianze per forzare il solutore a trovare una soluzione diversa.
Selezione dell'algoritmo per Pdesolve e numol
Per
Pdesolve e
numol, l'algoritmo di soluzione di default è
Differenze a 5 punti ricorsive. Tutti gli algoritmi elaborano la soluzione utilizzando il metodo
Radau.
• Polinomiale - Utilizza approssimazioni polinomiali delle derivate spaziali del primo e del secondo ordine per ridurre il sistema PDE a un sistema ODE in base alla variabiletime.
• Differenze centrali - Utilizza approssimazioni di differenze centrali delle derivate spaziali del primo ordine con applicazione ricorsiva per le derivate spaziali del secondo ordine per ridurre il sistema PDE a un sistema ODE in base alla variabile time.
• Differenze a 5 punti - Utilizza approssimazioni di differenze a 5 punti delle derivate spaziali del primo ordine con approssimazione separata per le derivate spaziali del secondo ordine per ridurre il sistema PDE a un sistema ODE in base alla variabile time.
• Differenze a 5 punti ricorsive - Utilizza approssimazioni di differenze a 5 punti delle derivate spaziali del primo ordine con applicazione ricorsiva per le derivate spaziali del secondo ordine per ridurre il sistema PDE a un sistema ODE in base alla variabile time.
Selezione dell'algoritmo per Odesolve
• Adams/BDF (default) - Per i sistemi di tipo non stiff, Odesolve chiama il solutore Adams che utilizza i metodi Adams-Bashforth. Se Odesolve rileva che il sistema ODE è di tipo stiff, passa al solutore BDF (Backward Differentiation Formula).
• Fixed - Chiama il solutore rkfixed che utilizza un metodo di Runge-Kutta a passo fisso.
• Adattativo - Chiama il solutore Rkadapt che utilizza un metodo di Runge-Kutta con dimensione di passo adattiva.
• Radau - Per i sistemi di tipo stiff o con vincoli algebrici, Odesolve chiama il solutore Radau.
Selezione dell'algoritmo per genfit
• Levenberg-Marquardt ottimizzato (default) - Questa versione ottimizzata del metodo di Levenberg-Marquardt per la minimizzazione è spesso più veloce e meno sensibile a valori ipotizzati imprecisi ed è più sensibile agli errori nelle derivate algebriche fornite.
• Levenberg-Marquardt - Questo metodo di minimizzazione viene utilizzato per risolvere problemi ai minimi quadrati non lineari. Questo metodo dovrebbe essere utilizzato con genfit per un funzionamento corretto e valori ipotizzati accurati.
Selezione dell'algoritmo per polyroots
• LaGuerre (default) - Questo metodo è iterativo e ricerca le soluzioni nel piano complesso.
• Matrice compagna - Questo metodo converte le equazioni in un problema di autovalori.