Le code fonctionne bien pour d'autres échantillons, mais pour quelques échantillons, il montre que le graphique n'est pas convergent.
"Envisagez des critères de convergence plus souples ou sélectionnez "accepter les estimations actuelles" sous "options d'itération". Échec : impossible de diminuer la fonction objectif
Le code est le suivant et je joins les exemples pour lesquels il ne fonctionne pas bien.
Names Default To Here( 1 );
dt= currentdatatable();
New Column( "Model",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
Parameter(
{p = 0.29, x0 = 15, m0 = 1.2, x1 = 30, m1 = 5},
p * (1 - Exp( -(X_mm / x0) ^ m0 )) + (1 - p) * (1
-Exp( -(X_mm / x1) ^ m1 ))
)
),
);
nlin = dt << Nonlinear(
SendToByGroup( Bygroup Default ),
Y( Ln_C ),
X( :Model ),
Iteration Limit( 1000 ),
Unthreaded( 1 ),
QuasiNewton BFGS,
//Newton,
Finish,
By( Sample_ID ),
);