complexify

Замените ureal атомы суммированием ureal и ucomplex (или ultidyn) атомы

Синтаксис

MC = complexify(M,alpha)
MC = complexify(M,alpha,'ultidyn')

Описание

Команда complexify замены ureal атомы с суммами ureal и ucomplex атомы с помощью usubs. Опционально, сумма может состоять из ureal и ultidyn атом.

complexify используется, чтобы улучшить создание условий устойчивых вычислений устойчивости (robstab) для ситуаций, когда существует преимущественно ureal неопределенные элементы.

MC = complexify(M,alpha) результаты в каждом ureal атом в MC наличие того же Name и NominalValue как соответствующий ureal атом в M. Если Range область значений одного ureal атом от M, затем область значений соответствующего ureal атома в MC

[Range(1)+alpha*diff(Range)/2 Range(2)-alpha*diff(Range)/2]

Результирующий эффект состоит в том, что та же действительная область значений покрыта действительной и комплексной неопределенностью. Действительная область значений параметра уменьшается равными суммами в каждом конце и alpha представляет (в относительном смысле) сокращение общей области значений. ucomplex атом добавит это сокращение области значений назад в MC, но как шар с действительными и мнимыми частями.

ucomplex атом имеет NominalValue из 0, и Radius равняйтесь alpha*diff(Range). Его имя является именем исходного ureal атом, добавленный с символами '_cmpxfy'.

MC = complexify(M,alpha,'ultidyn') то же самое, за исключением того, что ограниченный усилением ultidyn атомы используются вместо ucomplex атомы. ultidyn атом имеет свой Bound равняйтесь alpha*diff(Range).

Примеры

свернуть все

Чтобы проиллюстрировать комплексификацию, создайте неопределенный действительный параметр, бросьте ее к неопределенной матрице и примените 10%-ю комплексификацию.

a = umat(ureal('a',2.25,'Range',[1.5 3])); 
b = complexify(a,.1); 
as = usample(a,200); 
bs = usample(b,4000);

Сделайте график рассеивания значений, которые усложненная матрица (скаляр) может принять, а также значения исходного неопределенного действительного параметра.

plot(real(bs(:)),imag(bs(:)),'.',real(as(:)),imag(as(:)),'r.')
axis([1 3.5 -0.2 0.2])

Представленный в R2007a