The LSQNumObj class has limited functionality when it comes to setting restraints/constraints, e.g. if you want to link parameters for parametric refinement, or if we wanted to use a different approach for the peak widths (instrumental parameters in the PowderPattern object, and size/strain in the PowderPatternDiffraction cub-objects).
By using the lower-level functions (GetRefinedObjMap, GetCompiledRefinedObj, GetLSQCalc, GetLSQDeriv, etc...), it should be possible to use an LSQ engine (e.g. lmfit) from the python side, which coudl open a wider range of options for Rietveld refinements.
The
LSQNumObjclass has limited functionality when it comes to setting restraints/constraints, e.g. if you want to link parameters for parametric refinement, or if we wanted to use a different approach for the peak widths (instrumental parameters in the PowderPattern object, and size/strain in the PowderPatternDiffraction cub-objects).By using the lower-level functions (
GetRefinedObjMap,GetCompiledRefinedObj,GetLSQCalc,GetLSQDeriv, etc...), it should be possible to use an LSQ engine (e.g.lmfit) from the python side, which coudl open a wider range of options for Rietveld refinements.