File: %25r_diag.sci

package info (click to toggle)
scilab 2.6-4
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 54,632 kB
  • ctags: 40,267
  • sloc: ansic: 267,851; fortran: 166,549; sh: 10,005; makefile: 4,119; tcl: 1,070; cpp: 233; csh: 143; asm: 135; perl: 130; java: 39
file content (14 lines) | stat: -rw-r--r-- 366 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function d=%r_diag(a,k)
// %r_diag - implement diag function for  rational matrix ,..
// Copyright INRIA
[lhs,rhs]=argn(0)
if rhs==1 then k=0,end
[m,n]=size(a('num'))
if m<>1&n<>1 then
  d=syslin(a('dt'),diag(a('num'),k),diag(a('den'),k))
else
  mn=max(m,n)
  den=ones(mn,mn)
  den=den-diag(diag(den,k))+diag(a('den'),k)
  d=syslin(a('dt'),diag(a('num'),k),den)
end