У меня есть следующая функция F (X):
f(x) = fun1(x) if x<a
f(x) = fun2(x) if a<=x and if x<b
f(x) = fun3(x) if b<=x
Существует ли такой синтаксис, чтобы я мог записать эту функцию в строку, чтобы она была понятна muparser?
muParser понимает ?:
оператор, как в C / C ++ и других производных. Таким образом, вы могли бы написать тело f(x)
как:
x<a ? fun1(x) : x<b ? fun2(x) : fun3(x)
Я не уверен, действительно ли это отражает то, что вы хотите, но это сработает, потому что ?:
короткое замыкание (так что первый :
неявно включает условие !(x<a)
)
Других решений пока нет …