Math.net Возможности тригонометрических функций в C#
Как получить полномочия функции триггера в Math.net?
Expr x = Expr.Variable("x");
Expr g = (2 * x).Sinh().Pow(2);
g.ToString()
дает результат: (sinh(2*x))^2
Я хочу sinh^2(2*x)
Как мне это сделать?
Редактировать:
Согласно приведенному ниже комментарию Кристофа, это можно сделать в версии 0.21.0, которая реализует Expr.ToCustomString(true)
1 ответ
В настоящее время эта нотация не поддерживается. Однако я вижу три варианта:
- Мы определяем степени тригонометрических функций как новые функции или делаем их параметрическими.
Я не хочу этого делать. - Мы представляем неприменяемые функции как первоклассную концепцию, которой можно манипулировать таким образом.
Это то, что мы, вероятно, захотим изучить в какой-то момент, но это более обширная тема и, вероятно, излишняя для того, что вам нужно. - Расширьте наши визуальные выражения для поддержки положительных целочисленных степеней функций.
Это то, что мы могли бы реализовать.
Вариант 3 позволит сохранить один набор скобок в таких выражениях, что приведет к более компактному рендерингу, особенно для средства форматирования LaTeX, где результат будет более читабельным. При построении визуального выражения из выражения оно автоматически подтягивает положительные целые числа к применяемой функции.
Насколько я понимаю, вас беспокоит только то, как он напечатан, поэтому мне кажется, что это также решит вашу проблему?