f.sci
.
On utilise ensuite la commande getf("f.sci")
. Cela permet de définir une fonction
qui à deux matrices carrées de même taille
et
, associe
telle que
:
C=min(A,B)
function C=f(A,B)
C=B;
bool=A<B;
C(bool)=A(bool);
endfunction
n=size(A); for i=1:n(1), for j=1:n(2), C(i,j)=min(A(i,j),B(i,j)); end; end;
function C=f(A,B)
C=min(A,B);
endfunction
function f(A,B)
C=min(A,B);
endfunction
plotframe([-2,-2,2,2],[2,10,2,10]);
suivie de la ligne de commande proposée affiche un rectangle.
x=[-1,1,1,-1,-1];y=[-1,-1,1,1,-1]; plot2d(x,y);
x=[-1,-1,1,1];y=[-1,1,-1,1]; plot2d(x,y);
x=[-1,-1,1]';y=[-1,1,1]'; plot2d([x,y],[y,x],[1,1])
x=[-1,-1,1];y=[-1,1,1]; plot2d([x,y],[y,x],[1,1])
x=[-1,-1,1,1;-1,1,1,-1]; y=[-1,1,1,-1;1,1,-1,-1]; plot2d(x,y,[1,1,1]);
f.sci
.
On utilise ensuite la commande getf("f.sci")
. Cela permet de définir une fonction qui prend en entrée une matrice
et retourne en sortie une matrice
de mêmes dimensions telle que
si est pair et sinon.
function B=f(A)
B=kron(A,[0;1]);
endfunction
function B=f(A)
for i=1:n,
B(i,:)=0;
end;
endfunction
function B=f(A)
B=A; n=size(A,"r");
for i=1:2:n,
B(i,:)=0;
end;
endfunction
function B=f(A)
B=A; n=size(A,"r");
indices = find( (-1)^[1:n]==-1 );
B(indices,:)=0;
endfunction
function B=f(A)
C=ones(size(A,"c"),1)*( (-1)^[1:size(A,"r")] );
B=(A+A*C)/2;
endfunction
moins
qui retourne la différence de deux matrices :
f.sci
les lignes
function C=f(A,B)
C=A-B;
endfunction
getf("f.sci")
f.sci
les lignes
function C=moins(A,B)
C=A-B;
endfunction
getf("f.sci")
f.sci
les lignes
function moins(A,B)
C=A-B;
endfunction
getf("f.sci")
f.sci
les lignes
function C=moins(A,B)
for i=1:n, for j=1:n, C(i,j)=A(i,j)-B(i,j); end; end;
endfunction
getf("f.sci")
f.sce
la ligne
deff("C=moins(A,B)","C=A-B")
exec("f.sce")
e=0.1; x=linspace(e,%pi-e,200); x=[x'-%pi,x']; y=(1)./sin(x); plot2d(x,y,[5,5]);
x=[0:0.001:%pi]; x=[x'-%pi,x']; y=(1)./sin(x); plot2d(x,y,[5,5]);
x=[-%pi:%pi]; y=(1)./sin(x); plot(x,y);
x=[-%pi+0.1:0.1:%pi-0.1]; y=1/sin(x); plot(x,y);
x=[0.1:0.01:%pi-0.1]'; y=(1)./sin(x); plot2d([x-%pi,x],[-y,y],[5,5]);
x=linspace(-%pi,%pi,50)'; y=[]; for i=-1:1, y=[y,sin(x.*i)]; end; plot2d([x,x,x],y);
x=linspace(-%pi,%pi,50)'; y=[sin(-x),zeros(50,1),sin(x)]; plot2d([x,x,x],y,[1,2,3]);
integrate("sqrt(x)","x",0,10)
t=[0,10]; inttrap(t,sqrt(t))
t=[0:0.001:10]; inttrap(t,sqrt(t))
t=[0:0.001:10]; cumsum(sqrt(t))
t=[0:0.001:10]; sum(sqrt(t)/0.001)
A=[1:4;4:-1:1;0:3]
et v=[2;2;3]
:
v'*A*v
est un réel.
v*v'
est une matrice à trois lignes et trois colonnes.
v(3:-1:1)'==A(3,:)
donne [T T T]
v(3:-1:1)==A(:,3)
donne [T T T]'
B=A'; B(:,3)==v
donne [T T T]
v=[1,2,3,...,99,100]
:
v
est le vecteur ligne qui contient tous les entiers de 1 à 100,
mais pour des raisons évidentes de place, nous n'avons pu tous les écrire...)
v=linspace(1,100,100)
v=[1:0.1:100]
v=[]; for i=1:100, v=[v,i]; end; v
v=1; for i=1:100, v=[v,i+1]; end; v
for i=1:100, v=[v,i]; end; v
A=[0:3;3:-1:0]+%i*[1:4;4:-1:1]
. La ligne de commande proposée
affiche une matrice réelle ou complexe à deux lignes et quatre colonnes :
A.'
conj(A);
real(A)
abs(A)
real(A)<imag(A)