- Scilab help
- Scilab
- Scilab keywords
- TMPDIR
- abort
- add_demo
- argn
- banner
- boolean
- break
- clear
- clearfun
- clearglobal
- comp
- continue
- debug
- delbpt
- dispbpt
- edit
- errcatch
- errclear
- error
- error_table
- exists
- exit
- external
- extraction
- format
- funcprot
- funptr
- getdebuginfo
- getmd5
- getmemory
- getmodules
- getos
- getscilabmode
- getshell
- getvariablesonstack
- getversion
- gstacksize
- ieee
- insertion
- intppty
- inv_coeff
- iserror
- isglobal
- lasterror
- macr2lst
- macr2tree
- matrices
- matrix
- mode
- mtlb_mode
- names
- newfun
- null
- pause
- perl
- poly
- predef
- quit
- rational
- readgateway
- resume
- sciargs
- scilab
- setbpt
- stacksize
- startup
- symbols
- testmatrix
- type
- typename
- user
- varn
- ver
- warning
- what
- where
- whereami
- who
- who_user
- whos
- with_atlas
- with_javasci
- with_macros_source
- with_module
- with_pvm
- with_texmacs
- with_tk
Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
insertion
partial variable assignation or modification
assignation
partial variable assignation
Calling Sequence
x(i,j)=a x(i)=a l(i)=a l(k1)...(kn)(i)=a or l(list(k1,...,kn,i))=a l(k1)...(kn)(i,j)=a or l(list(k1,...,kn,list(i,j))=a
Arguments
- x
matrix of any kind (constant, sparse, polynomial,...)
- l
list
- i,j
indices
- k1,...kn
indices with integer value
- a
new entry value
Description
- MATRIX CASE
if
xis a matrix the indicesiandj, may be:- Real scalars or vectors or matrices
In this case the values given as indices should be positive and it is only their integer part which taken into account.
if
ais a matrix with dimensions(size(i,'*'),size(j,'*')),x(i,j)=areturns a newxmatrix such asx(int(i(l)),int(j(k)))=a(l,k)forlfrom 1 tosize(i,'*')andkfrom 1 tosize(j,'*'), other initial entries ofxare unchanged.if
ais a scalarx(i,j)=areturns a newxmatrix such asx(int(i(l)),int(j(k)))=aforlfrom 1 tosize(i,'*')andkfrom 1 tosize(j,'*'), other initial entries ofxare unchanged.If
iorjmaximum value exceed correspondingxmatrix dimension, arrayxis previously extended to the required dimensions with zeros entries for standard matrices, 0 length character string for string matrices and false values for boolean matrices.x(i,j)=[]kills rows specified byiifjmatches all columns ofxor kills columns specified byjifimatches all rows ofx. In other casesx(i,j)=[]produce an error.x(i)=awithaa vector returns a newxmatrix such asx(int(i(l)))=a(l)forlfrom 1 tosize(i,'*'), other initial entries ofxare unchanged.x(i)=awithaa scalar returns a newxmatrix such asx(int(i(l)))=aforlfrom 1 tosize(i,'*'), other initial entries ofxare unchanged.If
imaximum value exceedsize(x,1),xis previously extended to the required dimension with zeros entries for standard matrices, 0 length character string for string matrices and false values for boolean matrices.- if
xis a 1x1matrix
amay be a row (respectively a column) vector with dimensionsize(i,'*'). Resultingxmatrix is a row (respectively a column) vector- if
xis a rowvector
amust be a row vector with dimensionsize(i,'*')- if
xis a columnvector
amust be a column vector with dimensionsize(i,'*')- if
xis a generalmatrix
amust be a row or column vector with dimensionsize(i,'*')andimaximum value cannot exceedsize(x,'*'),
x(i)=[]kills entries specified byi.
- The : symbol
the
:symbol stands for "all elements".x(i,:)=ais interpreted asx(i,1:size(x,2))=ax(:,j)=ais interpreted asx(1:size(x,1),j)=ax(:)=areturns inxtheamatrix reshaped according to x dimensions.size(x,'*')must be equal tosize(a,'*')
- Vectors of boolean
If an index (
iorj)is a vector of booleans it is interpreted asfind(i)or respectivelyfind(j)- Polynomials
If an index (
iorj)is a vector of polynomials or implicit polynomial vector it is interpreted ashorner(i,m)or respectivelyhorner(j,n)wheremandnare associatedxdimensions. Even if this feature works for all polynomials, it is recommended to use polynomials in$for readability.
- LIST OR TLIST CASE
If they are present the
kigive the path to a sub-list entry ofldata structure. They allow a recursive insertion without intermediate copies. Thel(k1)...(kn)(i)=aandl(list(k1,...,kn,i)=a)instructions are interpreted as:lk1 = l(k1).. = ..lkn = lkn-1(kn)lkn(i) = alkn-1(kn) = lkn.. = ..l(k1) = lk1And the
l(k1)...(kn)(i,j)=aandl(list(k1,...,kn,list(i,j))=ainstructions are interpreted as:lk1 = l(k1).. = ..lkn = lkn-1(kn)lkn(i,j) = alkn-1(kn) = lkn.. = ..l(k1)= lk1imay be :a real non negative scalar.
l(0)=aadds an entry on the "left" of the listl(i)=asets theientry of the listltoa. ifi>size(l),lis previously extended with zero length entries (undefined).l(i)=null()suppress theith list entry.a polynomial. If
iis a polynomial it is interpreted ashorner(i,m)wherem=size(l). Even if this feature works for all polynomials, it is recommended to use polynomials in$for readability.
k1,..knmay be :real positive scalar.
a polynomial,interpreted as
horner(ki,m)wheremis the corresponding sub-list size.a character string associated with a sub-list entry name.
Remarks
For soft coded matrix types such as rational functions and state space linear systems, x(i) syntax may not be used for vector entry insertion due to confusion with list entry insertion. x(1,j) or x(i,1) syntax must be used.
Examples
// MATRIX CASE 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] // the numerator // LIST OR TLIST CASE 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
See Also
- find — find indices of boolean vector or matrix true elements
- horner — polynomial/rational evaluation
- parents — ( ) left and right parenthesis
- extraction — matrix and list entry extraction
| << ieee | Scilab | intppty >> |