Contenuto principale

Riepilogo delle opzioni ODE

La risoluzione delle ODE richiede spesso la sincronizzazione dei parametri, la regolazione delle tolleranze di errore o il trasferimento di informazioni supplementari al risolutore. Questo argomento mostra come specificare le opzioni per le funzioni del risolutore (ode45, ode15s e così via) e con quali risolutori di equazioni differenziali ciascuna opzione è compatibile.

Sintassi delle opzioni

Utilizzare la funzione odeset per creare una struttura di opzioni da passare al risolutore come quarto argomento di input. Ad esempio, per regolare le tolleranze di errore relative e assolute:

opts = odeset(RelTol=1e-2,AbsTol=1e-5);
[t,y] = ode45(@odefun,tspan,y0,opts);

Se si utilizza il comando odeset senza alcun input, MATLAB® visualizza un elenco dei valori possibili per ciascuna opzione, con i valori predefiniti indicati da parentesi graffe {}.

La funzione odeget esegue query sul valore di un'opzione in una struttura esistente, che è possibile utilizzare per modificare dinamicamente i valori delle opzioni in base alle condizioni. Ad esempio, questo codice rileva se Stats è impostato su "on" e modifica il valore se necessario:

if isempty(odeget(opts,"Stats"))
  odeset(opts,Stats="on")
end

Compatibilità delle opzioni con ciascun risolutore

Alcune opzioni in odeset sono generiche e compatibili con qualsiasi risolutore, mentre altre sono specifiche per il risolutore. Questa tabella riepiloga la compatibilità di ciascuna opzione con i diversi risolutori.

Gruppo opzioniOpzioneode45ode23ode78ode89ode113ode15sode23sode23tode23tbode15i
Controllo degli erroriRelTol

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

AbsTol

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

NormControl

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Output del risolutoreNonNegative

Supported

Supported

Supported

Supported

Supported

Supported

Unsupported

Supported

Supported

Unsupported

OutputFcn

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

OutputSel

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Refine

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Stats

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Dimensione del passoInitialStep

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

MaxStep

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

MinStep

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Posizione dell'eventoEvents

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Matrice jacobianaJacobian

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Supported

Supported

Supported

Supported

JPattern

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Supported

Supported

Supported

Supported

Vectorized

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Supported

Supported

Supported

Supported

Matrice di massa e DAEMass

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Supported

Unsupported

MStateDependence

Supported

Supported

Supported

Supported

Supported

Supported

Unsupported

Supported

Supported

Unsupported

MvPattern

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Unsupported

Supported

Supported

Unsupported

MassSingular

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Unsupported

Supported

Unsupported

Unsupported

InitialSlope

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Unsupported

Supported

Unsupported

Unsupported

Opzioni dell'algoritmo per ode15s e ode15iMaxOrder

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Unsupported

Unsupported

Unsupported

Supported

BDF

Unsupported

Unsupported

Unsupported

Unsupported

Unsupported

Supported

Unsupported

Unsupported

Unsupported

Unsupported

* Utilizzare il parametro NonNegative con ode15s, ode23t e ode23tb solo per quei problemi in cui non è presente una matrice di massa.

** La funzione eventi per ode15i deve accettare un terzo argomento di input per yp.

Esempi di utilizzo

MATLAB include numerosi file di esempio che mostrano come utilizzare le varie opzioni. Ad esempio, digitare edit ballode per vedere un esempio che utilizza 'Events' per specificare una funzione eventi, oppure edit batonode per vedere un esempio che utilizza 'Mass' per specificare una matrice di massa. Per un riepilogo completo dei file di esempio e delle opzioni utilizzate, vedere Summary of ODE Examples and Files.

Vedi anche

|

Argomenti