CADETProcess.fractionation.FractionationOptimizer.optimize_fractionation

CADETProcess.fractionation.FractionationOptimizer.optimize_fractionation#

FractionationOptimizer.optimize_fractionation(simulation_results, purity_required, components=None, use_total_concentration_components=True, ranking=1, obj_fun=None, n_objectives=1, bad_metrics=0, minimize=True, allow_empty_fractions=True, ignore_failed=False, return_optimization_results=False, save_results=False)[source]#

Optimize the fractionation times with respect to purity constraints.

Parameters:
simulation_resultsSimulationResults

Results containing the chromatograms for fractionation.

purity_requiredfloat or array_like

Minimum required purity for components. If is float, the same value is assumed for all components.

componentslist

List of components to consider in the fractionation process.

rankinglist, 1 or None, optional

Weighting factors for individual components. If 1, the same value is assumed for all components. If None, no ranking is used and the problem is solved as multi-objective. The default is 1.

obj_funfunction, optional

Objective function used for OptimizationProblem. If COBYLA is used, must return single objective. If is None, the mass of all components is maximized.

n_objectivesint, optional

Number of objectives returned by obj_fun. The default is 1.

bad_metricsfloat or list of floats, optional

Values to be returned if evaluation of objective function failes. The default is 0.

minimizebool, optional

If True, the obj_fun is assumed to return a value that is to be minimized. The default it True.

allow_empty_fractions: bool, optional

If True, allow empty fractions. The default is True.

ignore_failedbool, optional

Ignore failed optimization and use initial values. The default is False.

return_optimization_resultsbool, optional

If True, return optimization results. Otherwise, return fractionation object. The default is False.

save_resultsbool, optional

If True, save optimization results. The default is False.

Returns:
Fractionator or OptimizationResults

The Fractionator object with optimized cut times or the OptimizationResults object.

Raises:
TypeError

If simulation_results is not an instance of SimulationResults.

CADETProcessError

If simulation_results do not contain chromatograms.

Warning

If purity requirements cannot be fulfilled.