当前位置:文档之家› Lapack中文帮助手册手册

Lapack中文帮助手册手册

Lapack中文帮助手册手册
Lapack中文帮助手册手册

https://www.doczj.com/doc/dd8113542.html,PACK

LAPACK简介

1.1概述

LAPACK API支持两种形式:一是标准的ANSI C;另一种是标准的FORTRAN77。LAPACK 是开源的,官方网站是:https://www.doczj.com/doc/dd8113542.html,/lapack/。

每个LAPACK例程都有四个形式,具体描述如下:

精度例程前缀

REAL精度S

REAL DOUBLE精度D

COMPLEX单精度C

COMPLEX双精度Z

下面例程是经过优化的。

DGETRF对一般矩阵进行LU分解。

DGETRS线性方程组求解。

DGETRI用LU分解求解一般矩阵的逆矩阵。

DGEQRF对一般矩阵进行QR分解。

DGELQF对一般矩阵进行LQ分解。

DPOTRF对对称正定矩阵进行Cholesky分解。

DPOTRS对线性方程组(对称正定)求解。

1.2函数的命名规则:

LAPACK里的每个函数名已经说明了该函数的使用规则。所有函数都是以XYYZZZ的形式命名,对于某些函数,没有第六个字符,只是XYYZZ的形式。

第一个字母X代表以下的数据类型:

S REAL,单精度实数

D DOUBL

E PRECISION,双精度实数

C COMPLEX,单精度复数

Z COMPLEX*16或DOUBLE COMPLEX

注:

在新版LAPACK中含有使用重复迭代法的函数DSGESV和ZCDESV。

头2个字母表示使用的精度:

DS输入数据是double双精度,算法使用单精度

ZC输入数据是complex*16,算法使用complex单精度复数

接下面两个字母YY代表数组的类型。

BD bidiagonal,双对角矩阵

DI diagonal,对角矩阵

GB general band,一般带状矩阵

GE general(i.e.,unsymmetric,in some cases rectangular),一般情形(即非对称,在有些情形下为矩形)

GG general matrices,generalized problem(i.e.,a pair of general matrices),一般矩阵,广义问题(即一对一般矩阵)

GT general tridiagonal,一般三对角矩阵

HB(complex)Hermitian band,(复数)厄尔米特带状阵HE(complex)Hermitian,(复数)厄尔米特矩阵

HG upper Hessenberg matrix,generalized problem (i.e a Hessenberg and a

triangular matrix),上海森伯格矩阵,广义问题(即一个海森伯格矩阵和一

个三角矩阵)

HP (complex)Hermitian,packed storage ,(复数)压缩储存的厄尔米特矩阵HS upper Hessenberg ,上海森博格矩阵OP (real)orthogonal,packed storage ,(实数)压缩储存的正交阵OR (real)orthogonal ,(实数)正交阵

PB

symmetric or Hermitian positive definite band ,对称或厄尔米特正定带状矩

PO symmetric or Hermitian positive definite ,对称或厄尔米特正定矩阵

PP

symmetric or Hermitian positive definite,packed storage ,压缩储存的对称或

厄尔米特正定矩阵

PT

symmetric or Hermitian positive definite tridiagonal ,对称或厄尔米特正定三

对角阵

SB (real)symmetric band ,(实数)对称带状阵SP symmetric,packed storage ,压缩储存的对称阵ST (real)symmetric tridiagonal ,(实数)对称三对角阵SY symmetric ,对称阵TB triangular band ,三角形带状矩阵

TG

triangular matrices,generalized problem (i.e.,a pair of triangular matrices),三

角形矩阵,广义问题(即一对三角形阵)

TP triangular,packed storage ,压缩储存的三角形阵

TR

triangular (or in some cases quasi-triangular),三角形阵(在某些情形下为类

三角形阵)

TZ trapezoidal ,梯形阵UN (complex)unitary ,(复数)酉矩阵UP (complex)unitary,packed storage ,(复数)压缩储存的酉矩阵

最后三个字母ZZZ 代表计算方法。比如,SGEBRD 是一个单精度函数,用于把一个实数一般阵压缩为双对角阵(a bidiagonal reduction ,即BRD )。

https://www.doczj.com/doc/dd8113542.html,PACK

LAPACK 详解本部分以S 系列例程为例,本部分共有334个例程(3.0版本)。其他的就大家参考本部分就可以了。此次先介绍FORTRAN 版本的,C 版本的在以后做介绍,或者参照本部分亦可以。2.1SBDSDC 子程序原型:

SUBROUTINE SBDSDC(UPLO,COMPQ,N,D,E,U,LDU,VT,LDVT,Q,IQ,$WORK,IWORK,INFO )例程说明:

SBDSDC 是对real 型的N ×N 阶对角矩阵B (B =U *S *VT )进行SVD 计算。

【注:奇异值分解(sigular value decomposition,SVD)是一种正交矩阵分解法;SVD 是最可靠的分解法,但是它比QR 分解(QR 分解法是将矩阵分解成一个正规正交矩阵与上三角形矩阵。)法要花上近十倍的计算时间。】

参数说明:

UPLO 输入参数(CHARACTER*1)

=‘U’:B 是上对角矩阵(upper bidiagonal )

=‘L’:B是下对角矩阵(lower bidiagonal);

COMPQ输入参数(CHARACTER*1)

指定是否奇异向量按照如下方式计算:

=‘N’只计算奇异值

=‘P’计算奇异值和紧式(compact form)奇异向量

=‘I’计算奇异值和奇异向量

N输入参数(INTEGER)

B矩阵的秩。N>=0。

D输入/输出参数,real型数组,dimension(N)

输入时,为B矩阵的N个对角元素

输出时,如果INFO=0,则为B矩阵的奇异值。

E输入输出参数,real型数组,dimension(N)

输入时,E所包含的非对角矩阵元素,

输出时,E被破坏。

U输出参数,real型数组,dimension(LDU,N)

如果COMPQ=‘I’,输出时并且INFO=0,U接受对角矩阵的左奇异向量,对于

其他的COMPQ数值,U不被采用。

LDU输入参数(INTEGERT)

决定U数组的尺寸,LDU>=1

若果想得到奇异向量,LDU>=max(1,N)。

VT输出参数,real型数组,dimension(LDVT,N)

如果COMPQ=‘I’,输出时并且INFO=0,VT接受对角矩阵的右奇异向量,对

于其他的COMPQ数值,VT不被采用。

LDVT输入参数,(INTEGER)

决定VT数组的尺寸,LDVT>=1

若果想得到奇异向量,LDVT>=max(1,N)。

Q输出参数,real型数组,dimension(LDQ)

如果COMPQ='P':输出时,如果INFO=0,Q和IQ紧式存储左右奇异向量,

需要O(N log N)的空间代替2*N**2。

对于其他的COMPQ值,Q是不被使用的。

IQ输出参数real型数组,dimension(LDIQ)

其他的类似于Q。

WORK real型数组,dimension(LWORK)

如果,COMPQ='N'则LWORK>=(4*N)。

如果,COMPQ='P'则LWORK>=(6*N)。

如果,COMPQ='I'则LWORK>=(3*N**2+4*N)。

IWORK INTEGER数组,dimension(8*N)

INFO输出参数,INTEGER

=0,成功退出,

<0,如果INFO=-i,则第i号参数值是不被接受的

>0,算法得不到奇异值。

参数介绍完了,我们来写个程序测试一下

当然我们不知道这样对不对。所以我们还是请出matlab来验证一下吧。

上个例子是一个特殊情况,那其他情况呢?

2.2SBDSQR子程序

原型:

SUBROUTINE SBDSQR(UPLO,N,NCVT,NRU,NCC,D,E,VT,LDVT,U, $LDU,C,LDC,WORK,INFO)

例程说明:

SBDSQR是对real型的N×N阶对角矩阵B(B=Q*S*P T(P T表示P的转置矩阵))进行SVD计算。S是非负数的对角矩阵(B的奇异值),Q和P是正交矩阵。例程计算S,选择性的计算U*Q,P T*VT,或者Q T*C。

参数说明:

UPLO输入参数(CHARACTER*1)

=‘U’:B是上对角矩阵(upper bidiagonal)

=‘L’:B是下对角矩阵(lower bidiagonal);

N输入参数(INTEGER)

B矩阵的秩。N>=0。

NCVT输入参数INTEGER

VT的列的维数,NCVT>=0。

NRU输入参数INTEGER

U的行的维数,NRU>=0。

NCC输入参数INTEGER

C的列的维数,NCC.=0。

D输入/输出参数,real型数组,dimension(N)

输入时,为B矩阵的N各对角元素

输出时,如果INFO=0,则为B矩阵降序的奇异值。

E输入/输出参数,real型数组,dimension(N)

输入时,E包含了要进行SVD的矩阵非对角元。

VT输入/输出参数,real型数组,dimension(LDVT,NCVT)

输入时,为N×NCVT的矩阵,

输出时,VT被重写为P T*VT。

如果NCVT=0,VT不被使用。

LDVT输入参数INTEGER

VT数组的维数。

如果NCVT>0,则LDVT>=max(1,N);

如果NCVT=0.则LDVT>=1

U输出参数,real型数组,dimension(LDU,N)

输入时,是NRU×N维矩阵,

输出时,U被重写为U*Q

如果NRU=0,则U不被使用。

LDU输入参数INTEGER

U的维数,LDU>=max(1,NRU)。

C输入/输出参数,real型数组,dimension(LDC,NCC)

输入时,为N×NCC维数组

输出时,C被重写为Q T*C

如果NCC=0,C则不被使用。

LDC输入参数INTEGER

C的维数,

如果NCC>0,则LDC>=max(1,N),

如果NCC=0,则LDC>=1

WORK(workspace)real型数组,dimension(4*N)

INFO输出参数,INTEGER

=0,成功退出,

<0,如果INFO=-i,则第i号参数值是不被接受的

>0,算法得不到奇异值。如果INFO=i,E的第i号元素没转换为0。

2.3SGEES子程序

原型:

SUBROUTINE SGEES(JOBVS,SORT,SELECT,N,A,LDA,SDIM,WR,WI,

$VS,LDVS,WORK,LWORK,BWORK,INFO)

例程说明:

SGEES例程计算N×N real型非对称矩阵A的特征值、real型的矩阵T(上三角矩阵),并且选择的计算向量Z,使A=Z*T*(Z**T)成立。

参数说明:

JOBVS输入参数CHARACTER*1

*='N':不计算因式分解的向量;

*='V':计算因式分解的向量。

*SORT输入参数CHARACTER*1

*指定特征值是否构成在对角矩阵的分解量中。

*='N':特征值不被指定;

*='S':特征值被指定

*SELECT输入参数LOGICAL FUNCTION of two REAL arguments

*SELECT must be declared EXTERNAL in the calling subroutine.

*如果SORT='S',SELECT被用来选择特征值储存在分解形式的顶部。

*如果SORT='N',SELECT不被使用

*如果SELECT(WR(j),WI(j))是true,则特征值WR(j)+sqrt(-1)*WI(j)被选择

*N输入参数INTEGER

*矩阵A的维数.N>=0.

*A输/入输出参数REAL数组,dimension(LDA,N)

*输入时,A[N][N].

*输出时,T.

*LDA输入参数INTEGER

*决定数组A的尺寸.LDA>=max(1,N).

*SDIM输出参数INTEGER

*如果SORT='N',则SDIM=0.

*如果SORT='S',则SDIM=特征值的个数(after sorting)

*SELECT必须是true.

*WR输出参数REAL数组dimension(N)

*WI输出参数REAL数组dimension(N)

*VS输出参数REAL数组,dimension(LDVS,N)

*如果JOBVS='V',VS c正交矩阵Z

*如果JOBVS='N',VS不被使用

*LDVS输入参数INTEGER

*决定数组VS的维数.LDVS>=1;

*如果JOBVS='V',则LDVS>=N.

*WORK(workspace/output)REAL数组,dimension(LWORK)

*输出时,if INFO=0,WORK(1)包含最优的LWORK.

*LWORK输入参数INTEGER

*数组WORK的尺寸.LWORK>=max(1,3*N).

*为了得到较好的结果,LWORK必须要大。

*BWORK(workspace)LOGICAL数组,dimension(N)

*如果SORT='N',不被使用。

*

*INFO输出参数INTEGER

*=0:成功退出

*<0:如果INFO=-i,第i号元素不被接受。

*>0:如果INFO=i,并且i

*<=N:QR算法计算失败

2.4SGEEV程序

原型:

SUBROUTINE SGEEV(JOBVL,JOBVR,N,A,LDA,WR,WI,VL,LDVL,VR, $LDVR,WORK,LWORK,INFO)

例程说明:

SGEEV计算非对称矩阵A(N*N)的特征值,选择性的左和/或右计算特征向量。A矩阵的右特征向量满足:

A*V(j)=λ(j)*V(j),其中λ(j)是特征值。

A矩阵的左特征向量满足:

u(j)**H*A=λ(j)*u(j)**H,其中u(j)**H为u(j)的共轭变换。

参数说明:

JOBVL输入参数,CHARACTER*1

='N':left eigenvectors of A are not computed;

='V':left eigenvectors of A are computed.

JOBVR输入参数CHARACTER*1

='N':right eigenvectors of A are not computed;

='V':right eigenvectors of A are computed.

N输入参数INTEGER

The order of the matrix A.N>=0.

A输入/输出参数REAL array,dimension(LDA,N)

On entry,the N-by-N matrix A.

On exit,A has been overwritten.

LDA输入参数INTEGER

The leading dimension of the array A.LDA>=max(1,N).

WR输出参数REAL array,dimension(N)

WI输出参数REAL array,dimension(N)

WR and WI contain the real and imaginary parts,

respectively,of the computed https://www.doczj.com/doc/dd8113542.html,plex

conjugate pairs of eigenvalues appear consecutively

with the eigenvalue having the positive imaginary part

first.

VL输出参数REAL array,dimension(LDVL,N)

If JOBVL='V',the left eigenvectors u(j)are stored one

after another in the columns of VL,in the same order

as their eigenvalues.

If JOBVL='N',VL is not referenced.

If the j-th eigenvalue is real,then u(j)=VL(:,j),

the j-th column of VL.

If the j-th and(j+1)-st eigenvalues form a complex

conjugate pair,then u(j)=VL(:,j)+i*VL(:,j+1)and

u(j+1)=VL(:,j)-i*VL(:,j+1).

LDVL输入参数INTEGER

The leading dimension of the array VL.LDVL>=1;if

JOBVL='V',LDVL>=N.

VR输出参数REAL array,dimension(LDVR,N)

If JOBVR='V',the right eigenvectors v(j)are stored one

after another in the columns of VR,in the same order

as their eigenvalues.

If JOBVR='N',VR is not referenced.

If the j-th eigenvalue is real,then v(j)=VR(:,j),

the j-th column of VR.

If the j-th and(j+1)-st eigenvalues form a complex

conjugate pair,then v(j)=VR(:,j)+i*VR(:,j+1)and

v(j+1)=VR(:,j)-i*VR(:,j+1).

LDVR输入参数INTEGER

The leading dimension of the array VR.LDVR>=1;if

JOBVR='V',LDVR>=N.

WORK工作/输出参数REAL array,dimension(LWORK)

On exit,if INFO=0,WORK(1)returns the optimal LWORK.

LWORK输入参数INTEGER

The dimension of the array WORK.LWORK>=max(1,3*N),and

if JOBVL='V'or JOBVR='V',LWORK>=4*N.For good

performance,LWORK must generally be larger.

If LWORK=-1,then a workspace query is assumed;the routine

only calculates the optimal size of the WORK array,returns

this value as the first entry of the WORK array,and no error

message related to LWORK is issued by XERBLA.

INFO输出参数INTEGER

=0:successful exit

<0:if INFO=-i,the i-th argument had an illegal value.

>0:if INFO=i,the QR algorithm failed to compute all the

eigenvalues,and no eigenvectors have been computed;

elements i+1:N of WR and WI contain eigenvalues which

have converged.

2.5SGELQF例程

原型:

SUBROUTINE SGELQF(M,N,A,LDA,TAU,WORK,LWORK,INFO)

例程说明:

SGELQF计算矩阵A(M×N)的LQ分解;A=L*Q。

参数说明:

M输入参数,INTEGER

矩阵A的行数。M>=0

N输入参数,INTEGER

矩阵A的列数。N>=0

A输入/输出参数,real数组。dimension(LDA,N)

输入时,为M×N的矩阵A

输出时,包含如下元素:矩阵L;对角线以上的元素,含数组TAU代表正交矩阵Q LDA输入参数,INTEGER

决定着数组A的尺寸,LDA>=max(1,M)

TAU输出参数,real数组dimension(min(M,N))

包含Q。

WORK工作间/输出参数,real数组,dimension(LWORK)

输出时,如果INFO=0,WORK(1)返回最优的LWORK。

LWORK输入参数,INTEGER

决定数组WORK尺寸。LWORK>=max(1,M)

为最优的性能,LWORK>=M*NB,NB是最优的分块大小。

INFO输出参数,INTEGER

=0:成功退出

<0:如果INFO=-i,则第i号参数是不可接受的数值。

2.6SGELQ2例程

原型:

SUBROUTINE SGELQ2(M,N,A,LDA,TAU,WORK,INFO)例程说明:

SGELQ2计算矩阵A(M×N)的LQ分解;A=L*Q。

参数说明:

M输入参数,INTEGER

矩阵A的行数。M>=0

N输入参数,INTEGER

矩阵A的列数。N>=0

A输入/输出参数,real数组。dimension(LDA,N)

输入时,为M×N的矩阵A

输出时,包含如下元素:矩阵L;对角线以上的元素,含数组TAU代表正交矩阵Q LDA输入参数,INTEGER

决定着数组A的尺寸,LDA>=max(1,M)

TAU输出参数,real数组dimension(min(M,N))

包含Q。

WORK工作间/输出参数,real数组,dimension(M)

INFO输出参数,INTEGER

=0:成功退出

<0:如果INFO=-i,则第i号参数是不可接受的数值。

2.7SGELS例程

原型:

SUBROUTINE SGELS(TRANS,M,N,NRHS,A,LDA,B,LDB,WORK,LWORK, $INFO)

例程说明:

SGELS解决关于M×N的矩阵A或A的转置或者是A的QR/LQ分解形式的超定线性方程组或欠定线性方程组。A是满秩的。

例如:

1)如果TRANS='N'并且m>=n:计算最小二乘法的线性超定方程组,minimize||B-A*X||

2)如果TRANS='N'并且m

3)如果TRANS='T'并且m>=n:以最小准则解决一个欠定线性方程组,A**T*X=B。

4)如果TRANS='T'并且m

参数说明:

TRANS输入参数,CHARACTER

='N':引用矩阵A的线性系统

='T':引用矩阵A**T的线性系统

M输入参数,INTEGER

矩阵A的行数,M>=0。

N输入参数,INTEGER

矩阵A的列数,N>=0。

NRHS输入参数,INTEGER

右侧尺寸,如:B和X的列数,NRHS>=0。

A输入/输出参数,real数组,dimension(LDA,N)

输入时,M×N的矩阵A;

输出时,如果M>=N,A被SGEQRF返回的QR因式详细重写。

如果M

LDA输入参数,INTEGER

决定数组A的尺寸,LDA>=max(1,M)。

B输入/输出参数,dimension(LDB,NRHS)

输入时,矩阵B的右侧向量,并且是列式存储。

如果TRANS='N'并且m>=n,B的第1行到第n行包含最小二乘解向量;

LDB输入参数,INTEGER

决定数组B的尺寸,LDB>=MAX(1,M,N)

WORK工作间/输出参数,real数组dimension(LWORK)

输出时,如果INFO=0,WORK(1)返回最优的LWORK。

LWORK输入参数,INTEGER

决定WORK的尺寸。LWORK>=max(1,MN+max(MN,NRHS))。

INFO输出参数,INTEGER

=0,成功退出

=-i,第i号参数不可接受。

更多内容请访问https://www.doczj.com/doc/dd8113542.html,输电与有限元技术论坛

开源科学计算软件Scilab及其教学应用

龙源期刊网 https://www.doczj.com/doc/dd8113542.html, 开源科学计算软件Scilab及其教学应用 作者:王凤蕊王文宏 来源:《中小学信息技术教育》2006年第11期 新的《高中数学课程标准》已将“数学建模”课设置为高中数学的一个专题课程。同时,高中物理、化学等课程的教与学活动也经常需要对各种问题进行数学建模和计算。因此,科学计算软件的使用能力应成为广大教师和学生的基本技能之一。 开源科学计算软件Scilab不仅能解决各种各样的计算问题,而且能将计算过程和结果可视化,同时还能模拟一些事物的变化过程。比如,在解析几何的学习中,可以借助Scilab动态可视化生成三维空间,加深学生的理解。 与商业科学计算软件Matlab相比,在功能上Scilab基本可以替代Matlab,且Scilab最诱人之处在于,它是一款开放源码的软件,使用正版软件完全免费。本文首先对Scilab的功能、特点、下载、安装与编程方法进行了简要介绍,最后结合两个实例探讨了其在中学教学中的应用。 一、Scilab简介 Scilab是法国国家信息与自动化研究院(INRIA) 开发的“开放源码”科学计算自由软件,它主要有数值计算、仿真与模拟、计算结果可视化等功能。Scilab数据类型丰富,可以方便实现各种矩阵运算,并允许用户在线建立各种自定义函数。此外,Scilab还具有图形显示功能,可实现各种常规形式的计算结果可视化。 Scilab是一种解释性语言,能运行于Windows、Linux以及Unix等操作系统环境下。作为开放源码的软件,Scilab的源代码、用户手册及二进制的可执行文件都是免费的。用户不仅可以在Scilab的许可证条件下自由使用该软件,还可以根据需要修改源代码,使之更加符合自身需要。此外,Scilab还包括一些应用于不同科学计算领域的工具箱,如科学计算、数学建模、信号处理、网络分析、决策优化、线性与非线性控制等。 二、Scilab的安装及运行

matlab中文电子书汇集

《MATLAB数据处理与应用》 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8787743&extra=&page=1 《战胜MATLAB必做练习50题》--满晓宇/罗捷--北京大学出版社--2001-11, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8684485&highlight=matlab matlab学习指导教程 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=9077453&highlight=matlab 《Matlab宝典》 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8787742&highlight=matlab MATLAB命令大全.pdf, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8872051&highlight=matlab MATLAB函数速查手册DOC文档, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=9036014&highlight=matlab matlab聚类工具箱教程, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8858415&highlight=matlab MATLAB高效编程技巧与应用25个案例分析, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=9062882&highlight=matlab 《MATLAB 遗传算法工具箱与应用》---雷英杰, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8787725&highlight=matlab 《基于MATLAB的系统分析与设计- - -模糊系统》---楼顺天---西安电子科技大学出版社, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab 自动控制:反馈的力量——使用MATLAB---特费斯---西安交通大学出版社 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab MATLAB高级语言及其在控制系统中的应用---韩九强---西安交通大学出版社---1997年06月第1版 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab MATLAB有限元分析与应用---P.I.Kattan---清华大学出版社----2004-04-01,版次:1 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab 反馈控制问题:使用MATLAB及其控制系统工具箱---(美)弗雷德里克(Frederick,D.K.),(美)周(Chow,J.H.),张彦斌译----西安交大, https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab 先进PID控制及其MATLAB仿真---刘金琨著----电子工业出版社 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab MATLAB语言工具箱---施阳...[等]编著---西北工业大学出版社 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab Matlab工具箱应用指南——应用数学篇---李涛贺勇军刘志俭等----电子工业出版社---2000年05月第1版 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab 模糊控制及其MATLAB应用---张国良... [等] 著---西安交通大学出版社 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab 基于MATLAB的系统分析与设计——时频分析---胡昌华等编著---西安电子科技大学出版社----2001-7 ,印次: 1 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab MATLAB语言与自动控制系统设计---魏克新等编---机械工业出版社---2001-05-01,版次:1 https://www.doczj.com/doc/dd8113542.html,/bbs/viewthread.php?tid=8666654&highlight=matlab

scilab中文帮助手册

(1)程序设计programming: abort: 中断计算 说明:abort命令中断当前计算并给出Scilab的提示符(“-->”)。如果用户使用pause命令进入高层界面,可使用abort命令回到初始层界面,出现Scilab的提示符(“-->”)。 Ans: 计算结果 说明:如果表达式的值没有被赋与任何变量,那么Scilab自动产生一个变量Ans,用来存储当前表达式的值。 backslash (\):矩阵左除 调用格式:如x=A\b 说明:backslash (\)代表矩阵左除,x=A\b是方程A*x=b的解。 如果A是一个方阵或者可逆矩阵(nonsingular或者invertible),那么x=A\b是方程A*x=b的唯一确定的解,且等于x=inv(A)*b. (通俗的说,就是方程数目等于未知数个数,所以解唯一。如A=[1 2 1;3 2 2;2 3 1],b=[8;13;11])如果A不是一个方阵,那么x是最小二乘解,此时,该解x使norm(A*x-b)最小。 (通俗的说,就是方程数目不等于未知数个数。 如果方程数目大于未知数个数,本来是没有准确解的,但可以根据最小二乘法原理拟合出最佳解。如A=rand(3,2);b=[1;1;1]。此时,由于A不是一个方阵,无法使用inv(A)命令,因此x=A\b 等效于x=pinv(A)*b. 如果方程数目小于未知数个数,应该有无穷个解,用x=A\b命令得出的解只是其中的一个解,而用pinv(A)*b命令得出的解则比较粗糙,没有用x=A\b命令得出的解精确。) 如果A是一个列满秩矩阵(矩阵的秩等于列数),那么此最小二乘解x=A\b是唯一能使norm(A*x-b)最小的解。 如果A不是一个列满秩矩阵,那么此最小二乘解x=A\b不能使norm(A*x-b)最小,使norm(A*x-b)最小的解应该是x=pinv(A)*b)。 inv(A)要求A是方阵,pinv(A)则不要求A是方阵 bool2s :将布尔矩阵转化为0、1矩阵 调用格式:bool2s(x) 参数:x是一个布尔向量或者布尔矩阵或者常数矩阵。 说明:如果x是一个布尔矩阵,bool2s(x)返回一个0、1矩阵,1代表真,0代表假。如果x 是一个普通矩阵,bool2s(x)也返回一个0、1矩阵,1代表非0的数字。 boolean:它表示Scilab对象或者布尔型变量和操作符与或非& | ~ 说明:布尔型变量为%T(代表真)%F (代表假)。这些变量可以用来定义矩阵。布尔型型矩阵可以像普通矩阵操作,如元素的抽取、插入与连接,但不能进行如( +, *, -, ^, )等运算,布尔型型矩阵有三个特殊的操作符号:与或非& | ~ brackets括号:包括左右圆括号(),左右方括号[]. 方括号调用格式:[a11,a12,...;a21,a22,...;...] 圆括号调用格式: [s1,s2,...]=func(...) 参数a11,a12,... : 任何合适的矩阵(实数, 多项式, 有理数等); 参数s1,s2,... : 任何变量名; 说明:[ ]用于向量定义或者矩阵连接或者用在调用函数的左边存储变量,而()用于函数调用。[ ]在用于矩阵连接时,空格、逗号用来隔开每“行”中的元素,分号、回车则用来隔开各“行”。[ ] 用在调用函数的左边存储变量时,必须用逗号隔开个变量。

(完整版)fortran函数总结,推荐文档

附录C SCILAB 部分函数指令表 (c)LIAMA. All rights reserved. (注解:本指令表只收集了部分常用指令, 有关全部指令请参照文档文件) + 加 - 减 * 矩阵乘 数组乘 *. 1. 通用指令 ^ 矩阵乘方 数组乘方 ^. \ 反斜杠或左除 help 在线帮助 / 斜杠或右除 apropos 文档中关键词搜寻 或.\ 数组除/. ans 缺省变量名以及最新表达式的运 算结果 == 等号 ~= 不等号 clear 从内存中清除变量和函数 < 小于 exit 关闭SCILAB > 大于 quit 退出SCILAB <= 小于或等于 save 把内存变量存入磁盘 >= 大于或等于 exec 运行脚本文件 &,and 逻辑与 mode 文件运行中的显示格式 |,or 逻辑或 getversion 显示SCILAB 版本 ~,not 逻辑非 ieee 浮点运算溢出显示模式选择 : 冒号 who 列出工作内存中的变量名 ( ) 园括号 edit 文件编辑器 [ ] 方括号 type 变量类型 { } 花括号 what 列出SCILAB 基本命令 小数点 . format 设置数据输出格式

, 逗号 chdir 改变当前工作目录 ; 分号 getenv 给出环境值 // 注释号 mkdir 创建目录 = 赋值符号 pwd 显示当前工作目录 ' 引号 evstr 执行表达式 ' 复数转置号 转置号 '. ans 最新表达式的运算结果 2.运算符和特殊算符%eps 浮点误差容限, =2 -52 ≈ 2.22×10 -16 %i 虚数单位= √(-1) %inf 正无穷大 %pi 圆周率, π=3.1415926535897.... 3. 编程语言结构 abort 中止计算或循环 break 终止最内循环 case 同select 一起使用 continue 将控制转交给外层的for或 while循环 else 同if一起使用 elseif 同if一起使用 end 结束for,while,if 语句 for 按规定次数重复执行语句 if 条件执行语句 otherwise 可同switch 一起使用 pause 暂停模式 return 返回 select 多个条件分支 then 同if一起使用 while 不确定次数重复执行语句 eval 特定值计算 feval 函数特定值计算或多变量计算 function 函数文件头 global 定义全局变量

PhpExcel中文帮助手册

PhpExcel中文帮助手册|PhpExcel使用方法 下面是总结的几个使用方法 include 'PHPExcel.php'; include 'PHPExcel/Writer/Excel2007.php'; //或者include 'PHPExcel/Writer/Excel5.php'; 用于输出.xls的 创建一个excel $objPHPExcel = new PHPExcel(); 保存excel—2007格式 $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); //或者$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); 非2007格式$objWriter->save("xxx.xlsx"); 直接输出到浏览器 $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); header("Pragma: public"); header("Expires: 0″); header("Cache-Control:must-revalidate, post-check=0, pre-check=0″); header("Content-Type:application/force-download"); header("Content-Type:application/vnd.ms-execl"); header("Content-Type:application/octet-stream"); header("Content-Type:application/download");; header('Content-Disposition:attachment;filename="resume.xls"'); header("Content-Transfer-Encoding:binary"); $objWriter->save('php://output'); ——————————————————————————————————————–设置excel的属性: 创建人 $objPHPExcel->getProperties()->setCreator("Maarten Balliauw"); 最后修改人 $objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw"); 标题 $objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document"); 题目 $objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document"); 描述

相关主题
文本预览
相关文档 最新文档