- Справка Scilab
- Scilab
- Ключевые слова Scilab
- процент
- обратный слэш (\)
- brackets [,;]
- двоеточие (:)
- запятая
- комментарии
- сравнение
- доллар
- точка
- знак равенства
- выделение
- getscilabkeywords
- крышечка
- вставка
- меньше
- минус
- НЕ
- круглые скобки
- плюс
- кавычка
- точка с запятой
- слэш (косая черта)
- звёздочка
- символы
- тильда
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
вставка
частичное присвоение или модификация значения переменной
присвоение
частичное присвоение значения переменной
Синтаксис
x(i,j)=a x(i)=a l(i)=a l(k1)...(kn)(i)=a или l(list(k1,...,kn,i))=a l(k1)...(kn)(i,j)=a или l(list(k1,...,kn,list(i,j))=a
Аргументы
- x
матрица любого типа (constant, sparse, polynomial,...)
- l
list
- i,j
индексы
- k1,...kn
индексы с целочисленными значениями
- a
новое значение элемента
Описание
- В СЛУЧАЕ МАТРИЦЫ
Если
x
является матрицей, то индексыi
иj
могут быть:- вещественными скалярами или векторами или матрицами
В этом случае значения, указанные как индексы, должны быть положительными и учитывается лишь их целая часть.
Если
a
является матрицей с размерами(size(i,'*'),size(j,'*'))
, тоx(i,j)=a
возвращает новую матрицуx
такую, какx(int(i(l)),int(j(k)))=a(l,k)
дляl
от 1 доsize(i,'*')
иk
от 1 доsize(j,'*')
, другие изначальные элементыx
остаются неизменными.Если
a
является скаляром, тоx(i,j)=a
возвращает новую матрицуx
такую, какx(int(i(l)),int(j(k)))=a
дляl
от 1 доsize(i,'*')
иk
от 1 доsize(j,'*')
, другие изначальные элементыx
остаются неизменными.Если максимальное значение
i
илиj
превосходит соответствующие размеры матрицыx
, то массивx
сначала расширяется до требуемых размеров нулевыми элементами для стандартных матриц, символьными строками нулевой длины для строковых матриц и значениями "ложь" для матриц логических значений.x(i,j)=[]
удаляет строки, определённые черезi
, еслиj
совпадает со всеми столбцамиx
или удаляет столбцы, определённые черезj
, еслиi
совпадает со всеми строкамиx
. В других случаяхx(i,j)=[]
формирует ошибку.x(i)=a
, гдеa
-- вектор, возвращает новую матрицуx
, такую чтоx(int(i(l)))=a(l)
дляl
от 1 доsize(i,'*')
, другие изначальные элементыx
являются неизменными.x(i)=a
, гдеa
-- скаляр, возвращает новую матрицуx
, такую чтоx(int(i(l)))=a
дляl
от 1 доsize(i,'*')
, другие изначальные элементыx
являются неизменными.Если максимальное значение
i
превосходитsize(x,1)
, тоx
сначала расширяется до требуемого размера нулевыми элементами для стандартных матриц, символьными строками нулевой длины для строковых матриц и значениями "ложь" для матриц логических значений.- если
x
является скаляром (1x1)матрица
a
может быть вектор-строкой (соответственно вектор-столбцом) размеромsize(i,'*')
. Результирующая матрицаx
является вектором-строкой (соответственно вектор-столбцом);- если
x
является вектор-строкойвектор
a
должен быть вектор-строкой размеромsize(i,'*')
;- если
x
является вектор-столбцомвектор
a
должен быть вектор-столбцом размеромsize(i,'*')
;- если
x
в общем видематрица
a
должна быть вектор-строкой или вектор-столбцом размеромsize(i,'*')
и максимальное значениеi
не может превосходитьsize(x,'*')
.
x(i)=[]
удаляет элементы, определённые черезi
.
- символом "двоеточие"
Символ двоеточие
:
означает "все элементы".x(i,:)=a
интерпретируется какx(i,1:size(x,2))=a
x(:,j)=a
интерпретируется какx(1:size(x,1),j)=a
x(:)=a
возвращает вx
матрицуa
, элементы которой переставлены в соответсвии с размерамиx
. Размерsize(x,'*')
должен быть равен размеруsize(a,'*')
.
- векторами логических значений
Если индекс (
i
илиj
) задан в виде вектора логических значений, то он интерпретируется какfind(i)
или, соответственно,find(j)
.- полиномами
Если индекс (
i
илиj
) задан в виде полиномов или в виде неявного вектора полиномов, то он интерпретируется какhorner(i,m)
или, соответственно,horner(j,n)
, гдеm
иn
связаны с размерамиx
. Даже если это работает для всех полиномов, рекомендуется использовать символ$
для удобочитаемости.
- В СЛУЧАЕ СПИСКА (LIST) ИЛИ ТИПИЗИРОВАННОГО СПИСКА (TLIST)
If they are present the
ki
give the path to a sub-list entry ofl
data structure. They allow a recursive insertion without intermediate copies. Thel(k1)...(kn)(i)=a
andl(list(k1,...,kn,i)=a)
instructions are interpreted as:lk1 = l(k1)
.. = ..
lkn = lkn-1(kn)
lkn(i) = a
lkn-1(kn) = lkn
.. = ..
l(k1) = lk1
А инструкции
l(k1)...(kn)(i,j)=a
иl(list(k1,...,kn,list(i,j))=a
интерпретируется как:lk1 = l(k1)
.. = ..
lkn = lkn-1(kn)
lkn(i,j) = a
lkn-1(kn) = lkn
.. = ..
l(k1)= lk1
i
может быть:вещественным неотрицательным скаляром.
l(0)=a
добавляет элемент к списку "слева".l(i)=a
присваивает элементуi
спискаl
значениеa
. Еслиi>size(l)
, тоl
сначала расширяется элементами нулевой длины (неопределённые).l(i)=null()
удаляетi
-тый элемент из списка.полиномом. Если
i
является полиномом, то он интерпретируется какhorner(i,m)
, гдеm=size(l)
. Даже если это работает для всех полиномов, рекомендуется использовать символ$
для удобочитаемости.
k1,..kn
могут быть:вещественным положительным скаляром;
полиномом, интерпретируемым как
horner(ki,m)
, гдеm
является соответствующим размером подсписка;символьной строкой, связанной с именем элемента подсписка.
Примечания
Для программно формируемых типов матриц, таких, как рациональные функции и линейные системы пространства состояний,
синтаксис x(i)
нельзя использовать для вставки элементов вектора из-за путаницы со вставкой
элемента списка. Должен использоваться синтаксис x(1,j)
или x(i,1)
.
Примеры
// В СЛУЧАЕ МАТРИЦЫ a=[1 2 3;4 5 6] a(1,2)=10 a([1 1],2)=[-1;-2] a(:,1)=[8;5] a(1,3:-1:1)=[77 44 99] a(1)=%s a(6)=%s+1 a(:)=1:6 a([%t %f],1)=33 a(1:2,$-1)=[2;4] a($:-1:1,1)=[8;7] a($)=123 // x='test' x([4 5])=['4','5'] // b=[1/%s,(%s+1)/(%s-1)] b(1,1)=0 b(1,$)=b(1,$)+1 b(2)=[1 2] // числитель // в случае LIST или TLIST l=list(1,'qwerw',%s) l(1)='Changed' l(0)='Added' l(6)=['one more';'added'] // // dts=list(1,tlist(['x';'a';'b'],10,[2 3])); dts(2).a=33 dts(2)('b')(1,2)=-100
Смотрите также
- find — find indices of boolean vector or matrix true elements
- horner — polynomial/rational evaluation
- круглые скобки — ( ) левая и правая круглые скобки
- выделение — выделение элемента матрицы или списка
Report an issue | ||
<< крышечка | Ключевые слова Scilab | меньше >> |