Quando si utilizza curve_fit
da scipy.optimize
per adattare un alcuni dati in pitone, un primo definisce la funzione raccordo (ad esempio un 2 ° ordine polinomiale) come segue:dati statistiche con funzione integrale
def f(x, a, b): return a*x**2+b*x
- e poi procede con il raccordo
popt, pcov = curve_fit(f,x,y)
Ma la domanda è ora, come si fa a definire la funzione nel punto 1. se la funzione contiene un integrale (o una somma discreta), ad esempio:
I dati sperimentali è ancora dato per x e f (x), quindi punto 2. sarebbe simile immagino volta posso definire f (x) in pitone. Tra l'altro ho dimenticato di dire che si presume che g (t) abbia una forma ben conosciuta qui e contiene i parametri di adattamento, cioè i parametri come aeb dati nell'esempio polinomiale. Ogni aiuto è molto apprezzato. La domanda dovrebbe essere generica e le funzioni utilizzate nel post sono solo esempi casuali.
La risposta ovvia è: è necessario un modo per valutare quell'integrale, trovando una soluzione in forma chiusa o utilizzando la quadratura numerica. Non c'è una soluzione generica a questo. – cfh
@cfh oh capisco, è vero, ma se non ha una soluzione in forma chiusa, cosa comporta esattamente la quadratura numerica? non presuppone che tutti i parametri dovrebbero essere conosciuti allora? –
Sì, ma nel momento in cui viene chiamato 'f', si conoscono tutti i parametri poiché vengono passati come argomenti. – cfh