conjugateКомплексное спряжение
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
conjugate(z) conjugate(L)
conjugate(z) вычисляет сопряженный ℜ (z) - i ℑ (z) комплексного числа z = ℜ (z) + i ℑ (z).
Для количеств типа DOM_INT, DOM_RAT, DOM_FLOAT или DOM_COMPLEX, сопряженное вычисляется непосредственно и очень эффективно.
conjugate может обработать символьные выражения. Свойства идентификаторов учтены (см. assume). Возвращен идентификатор z без любого свойства принят, чтобы быть комплексным, и символьный вызов conjugate(z). Смотрите Пример 2.
conjugate знает, как обработать специальные математические функции, такие как:
_mult _plus _power abs cos cosh cot coth csc csch erf erfc exp gamma igamma sec sech sin sinh tan tanh
Если conjugate не знает, как обработать специальную математическую функцию, то на символьный звонок conjugate отвечают. Смотрите Пример 3.
Эта функция автоматически сопоставлена со всеми записями контейнерных объектов, такими как массивы, списки, матрицы, полиномы, наборы и таблицы.
conjugate знает, как обработать суммы, продукты, показательную функцию и синусоидальную функцию:
conjugate((1 + I)*exp(2 - 3*I))
![]()
delete z: conjugate(z + 2*sin(3 - 5*I))
![]()
conjugate реагирует на свойства идентификаторов:
delete x, y: assume(x, Type::Real): conjugate(x), conjugate(y)
![]()
Если вход содержит функцию, которую не знает система, то на символьный звонок conjugate отвечают:
delete f, z: conjugate(f(z) + I)
![]()
Теперь предположите, что f является некоторой пользовательской математической функцией, и что содержит для всех комплексных чисел z. Чтобы расширить функциональность conjugate к f, мы встраиваем его в функциональную среду и соответственно задаем ее слот "conjugate":
f := funcenv(f): f::conjugate := u -> f(conjugate(u)):
Теперь, каждый раз, когда conjugate вызван аргументом формы f(u), это вызывает f::conjugate(u), который в свою очередь возвращает f(conjugate(u)):
conjugate(f(z) + I), conjugate(f(I))
![]()
арифметическое выражение или контейнерный объект, содержащий такие выражения
z
Если подвыражение формы, f(u,...) происходит в z и f, является функциональной средой, то conjugate пытается вызвать слот "conjugate" f, чтобы определить сопряженный из f(u,...). Таким образом можно расширить функциональность conjugate к собственным специальным математическим функциям.
Слот "conjugate" вызван аргументами u... f.
Если f не имеет никакого слота "conjugate", то подвыражение f(u,...) заменяется символьным вызовом conjugate(f(u,...)) в возвращенном выражении.
Смотрите пример 3.
Точно так же, если элемент, d библиотеки domainT происходит как подвыражение z, то conjugate пытается вызвать слот "conjugate" той области с d в качестве аргумента, чтобы вычислить сопряженный из d.
Если T не имеет слота "conjugate", то d заменяется символьным вызовом conjugate(d) в возвращенном выражении.