У меня есть целевая функция, которая может учитывать несколько параметров (a, b, c, d,...) в зависимости от количества рассматриваемых наборов данных. Эти параметры связаны таким образом, что:
a+b+c+d +..+..<=1
Предположим, у меня есть a, b, c и d; поэтому a+b+c+d‹=дельта. Я определяю:
a+b ‹ дельта-c-d (я называю m=дельта-c-d)
params = Parameters()
params.add('a', value=0.5, min=0., max=1.)
params.add('m', value=0.5)
params.add('b', expr='m -a')
с m = delta -cd, поэтому c = delta-md (я определяю n = md)
params.add('n', value=0.5)
params.add('delta', value=0.5)
params.add('c', expr='delta-n')
Наконец, n=m-d ==›d=m-n
params.add('d', expr='m-n')
Это правильно? Как установить минимум и максимум для m, n и дельты?
Я следовал подсказкам, данным в ограничениях Python lmfit: a ‹ b ‹ c
Привет, Мануэль