高等数学计算器是一款简单的科学计算软件,包括矩阵运算和复数运算两种功能,可以对各种复杂的矩阵变量和字符变量做相应的计算,支持函数和常规表达式的计算,软件体积小,算法灵活,完全可以取代比较厚重的MATLAB专业数学软件。
软件功能
1、程序支持矩阵的加、减、乘、除、求秩、求逆、特征值、广义逆、QR分解、LU分解、Schur分解、奇异值分解、满秩分解、约当标准化、Givens变换、化为Hessenberg矩阵……
2、程序支持常规线性方程组的求解以及不确定稀疏矩阵的求解
3、程序支持一元任意次多项式的加、减、乘、除、求根、变号数……
4、程序支持任意方程的求根、一元、二元、三元函数求定积分、二维空间作图……
5、程序支持数据的多项式拟合,数据的Lagrange插值,数据的三次样条插值以及函数的最佳平方逼近
6、程序支持大数的加、减、乘、除、求余、求次方、求最小公倍数、求最大公约数、求阶乘、任意位数的2进制与10进制与16进制的转换……
7、程序支持空间几何的点与直线、平面求距离,直线与直线、平面求距离和夹角和交点、直线与任意曲面求交点
8、程序支持概率统计里的第一、二类贝塞尔函数,第一、二类艾里函数,贝塔函数,伽马函数,x2分布,正太分布,F分布,t分布求解……
9、程序支持坐标变换、数独的求解以及构造一些特殊的矩阵(如:幻方、Hankel、Hurwitz矩阵等)
10、程序支持常规表达式的计算
矩阵运算说明
1、创建矩阵
a=1:3;或者a=1:2:7;或者a=[1 2 4];或者a=[1,2,3];或者a=[1 2 3;4 5 6];或者b=[a,a]或b=[a;a]
其创建方式和matlab方式一样
例子:
a=[1 2;4 5]//按下键盘的Enter键显示如下内容
a =
[ 1.00000000000000 2.00000000000000
4.00000000000000 5.00000000000000 ]
2、访问矩阵
a(m,n)表示获取a矩阵变量里的第m行n列的数据
a(n)表示访问矩阵变量a里的第n个数据
3、运算符号与名称不区分大小写.且变量名称只能由字母与数字下划线组成,且第一个必须为字母.名称不能用程序指定的关键字进行命名.如果不确定自己输入的变量名是否符合要求,你可以任意输入,如果不符合要求程序会给出提示.
例如:add与Add一样.
4、要显示一个变量,直接输入其名称,然后点击Enter键即可显示.如果要为变量赋值直接使用=即可.当变量名称为e时,其特别代表自然数2.71828182845905;变量名pi特指圆周率3.14159265358979
5、支持科学计数法
在运算或者创建矩阵里,输入类似3e5则表示3*10^5;4e-10则表示4*10^(-10)
6、对于同维矩阵a,b,……
当写成3*a+b*sin(a)/exp(b-log(abs(a))这类复杂的表达式时,将针对矩阵的元素对应进行运算.
例子:
a =
[ 5 6 1
9 6 8 ]
b =
[ 8 1 9
3 8 5 ]
执行命令
c=3*a+b*sin(a)/exp(b-log(a))
后屏幕输出
c=
[ 14.9871326697145 17.3832526960076 3.00093461192442
27.5539906224106 17.9955007940495 24.2666497371543]
注意:这类运算支持的运算符函数Abs、Acos、Acosh、Acot、Acoth、Asin、Asinh、Atan、Atanh、Ceiling、Cos、Cosh、Cot、Coth、Csc、Exp、Floor、Ln、Log、Log10、Round、Sec、Sign、Sin、Sinh、Sqrt、Tan、Tanh、Truncate
函数说明如下
Abs(x):返回x的绝对值
Acos(x):返回x的反余弦值
Acosh(x):返回x的反双曲余弦值
Acot(x):返回x的反余切值
Acoth(x):返回x的反双曲余切值
Asin(x):返回x的反正弦值
Asinh(x):返回x的反双曲正弦值
Atan(x):返回x的反正切值
Atanh(x):返回x的反双曲正切值
Ceiling(x):返回不小于x的整数值
Cos(x):返回x的余弦值
Cosh(x):返回x的双曲余弦值
Cot(x):返回x的余切值
Coth(x):返回x的双曲余切值
Csc(x):返回1/sin(x)的值
Exp(x):返回返回自然数e的x次方值.等价于e^x
Floor(x):返回不大于x的整数值
Ln(x):返回以自然数e为底,取x的对数值
Log(x):返回以自然数e为底,取x的对数值
Log10(x):返回以10为底,取x的对数值
Round(x):对x进行四舍五入,但是注意在小数点后的数,大于5的就入,小于5的就舍.等于5时,如果个位数为偶数就舍,否则就入.例如round(4.5)=4;round(5.5)=6
Sec(x):返回1/cos(x)的值
Sign(x):返回x的符号值.x>0返回1,x=0返回0,x<0返回-1
Sin(x):返回x的正弦值
Sinh(x):返回x的双曲正弦值
Sqrt(x):对x进行开方
Tan(x):返回x的正切值
Tanh(x):返回x的双曲正切值
Truncate(x):返回不大于x的整数
//当然可以直接进行表达式的计算,例如
sin(45*cos(36+exp(12))+log(36))*4.59//按下键盘的Enter键显示如下计算得到的内容
ans =
[ 0.06855406458537 ]
7、创建符号变量
格式:名称="内容"
例子:
f="x^2-3"//按下键盘的Enter键即可创建一个符号句柄f,即以后f就代表x^2-3这在不确定函数积分、求根、多项式、绘制图形中会经常用到
8、调用Matlab求解.具体用法查看Matlab函数
复数运算说明
1、复数运算支持数学常规复数表达式的计算支持的运算符有6个,即" + - * / ^ %",其中运算顺序等级和数学书上的定义是一致的.但是需要注意,这里的求余运算符号%,如果复数域内的数据a%b则表示a的实数部分对b的实数部分求余,且如果其实数部分不是整数的,自动转换成整数进行运算;其中支持的括号只有"("与")"。换句话说,复数表达式的书写格式符合C语言表达式的书写格式。
2、其中:i默认为虚数单位,e默认为自然数2.71828182845905,pi默认为圆周率3.14159265358979
3、表达式只针对每一行的表达式进行解析,不区分空格,且支持36(45i+9)/sin(23^i)这类数字与括号相乘不用写*的表达式.
4、在程序里,支持常规的复数表达式"数字+i">表示一个数据。例如:3i^2=(3*i)^2
5、本程序支持10的次方数为自然数的科学计数法,如3e4则表示30000;但是本程序不支持10的次方数为负自然数的科学计数法,如3e-4则本程序会提示失败,而不是通常意义的0.0003
6、本程序支持的函数为Abs、Acos、Acosh、Acot、Acoth、Arg、Asin、Asinh、Atan、Atanh、Cos、Cosh、Cot、Coth、Csc、Exp、Floor、Imag、Ln、Log、Log10、Real、Round、Sec、Sin、Sinh、Sqrt、Tan、Tanh
假如z为一复数,那么
Abs(z):复数z的模
Acos(z):复数z的反余弦值
Acosh(z):复数z的反双曲余弦值
Acot(z):复数z的反余切值
Acoth(z):复数z的反双曲余切值
Arg(z):复数z的辐角主值(-π,π]
Asin(z):复数z的反正弦值
Asinh(z):复数z的反双曲正弦值
Atan(z):复数z的反正切值
Atanh(z):复数z的反双曲正切值
Cos(z):复数z的余弦值
Cosh(z):复数z的双曲余弦值
Cot(z):复数z的余切值
Coth(z):复数z的双曲余切值
Csc(z):等价于1/sin(z)
Exp(z):以指数e为底的幂数,即等价于e^z
Floor(z):对z的实数部分(虚数部分)返回其不大于其实数部分(虚数部分)的整数
Imag(z):复数z的虚数部分
Ln(z):以自然数e为底,取z的对数,等价于log(z)
Log(z):以自然数e为底,取z的对数,等价于ln(z)
Log10(z):以10为底,取z的对数,等价于log(z)/log(10)
Real(z):复数z的实数部分
Round(z):对z的实数部分(虚数部分)进行四舍五入.注意4.5与5.5四舍五入返回值的差别
Sec(z):等价于1/cos(z)
Sin(z):复数z的正弦值
Sinh(z):复数z的双曲正弦值
Sqrt(z):对复数z开方,等价于z^0.5
Tan(z):复数z正切值
Tanh(z):复数z双曲正切值
例子:
a=sin(i+78*cos(12i)^3-log(12i+6*(12+9i)))/2^i//按回车键将显示
a = 0.559424052325164 - 0.176033012038656i
//假如我们继续输入如下信息
b=cos(a)*exp(a)//按回车键将显示
b = 1.51148294889973 - 0.101974950336539i
//注意我下面的输入格式
a=12(4i+56)(36-7.85i)//其实等价于12*(4i+56)*(36-7.85i)按回车键将显示
a = 24568.8 - 3547.2i
//下面注意余数输入的格式%,其遵循C语言编程的书写格式.由于求余只是在实数的整数部分有定义,因此%也只针对2个复数的实数部分进行求余运算.如果你的表达式不涉及虚数部分,则加入求余运算是绝对没有问题的.注意,当第二个参数的实数部分为0时,程序会求解失败.因为任何数对0求余是没有意义的.
例子:
(3+7i)%(4+5i)//程序实际计算的是3%4
ans = 3
//修改于2011/12/11
常见问题
在"矩阵运算"里
1、凡是涉及到大数(高精度)的函数,均以bg开头.
//Bg10to16、Bg10to2、Bg16to10、Bg16to2、Bg2to10、Bg2To16、Bgadd、BgCatalan、Bgcbat、Bgcos、Bgdiv、BgEuler、Bgfib、Bgfil、Bggcd、Bglcm、Bglog、Bglog10、Bgmod、Bgmul、Bgpow、Bgrand、Bgroot、Bgsin、Bgsqrt、BgStirling、BgStirling2、Bgsub、Bgtan
2、凡是涉及到几何的函数,均以Geo开头.
//Geolineangle、Geolineinter、Geolinespace、Geolpangle、Geolpinter、Geolsinter、Geoplot、Geoplspace、Geoppspace
3、凡是涉及到数据分析的函数,均以data开头
//Datafeat、Datapearson、Dataplot、Dataquan、Dataspearman
4、凡是涉及到多项式的函数,均以Poly开头.
//Polyadd、Polycreate、Polydiv、Polyeig、Polyfactors、Polyfit、Polymatrix、Polymod、Polymul、Polyroots、Polyroots2、Polystrum、Polysub、PolyValue
5、凡是涉及到平面多边形的的函数均以pg开头.
//Pgarea、Pgcent
6、求解定积分的函数
//Cortez、CosInt、ExpInt、Gaussche、Gaussher、Gaussint、Gaussint2、Gausslag、Gaussleg、Int、Intxy、Intxyz、Simpson、SinInt
7、求解方程组的函数
//Chol、Chol2、Cra、Cra2、Gauss、Solve、Solve2、SpSolve、SpTri3、Spvarbandw
8、求解根的函数
//Aitken、Dichotomy、Searchx、Searchxy
9、支持的稀疏矩阵函数
//Sparse、SpRank、SpSolve、SpTri3、Spvarbandw
10、数据的插值与数据的拟合的函数
//Interpl、linefit、polyfit、Spline
11、多项式与函数的逼近
//Fit、Fit2
12、概率与统计的相关函数
//Ai、Bessel、Beta、Bi、Cov、Erf、Fdis、Gamma、Lapdis、Nordis、Studis、X2dis
13、构建特殊矩阵的函数
//Build、Cauchy、Diag、Eye、Get、Hadamard、Hamilton、Hankel、Hilbert、Hurwitz、Lehmer、Magic、MeshGrid、Ones、Pascal、Rand、Scatter、Symtomatrix、Toeplitz、Tri、Tri2、Vander、Zeros
14、矩阵的分解函数
//Gs、Llt、Lu、Lu2、Qt、Qr2、Schur、Svd
15、矩阵的运算函数
//Add、Adj、Cond、Cond2、Det、Det2、Det4、Div、Div2、Eig、Eigs、Eigs2、Eigtor、Eigtors、Givnes、Hess、Inv、Inv2、Jordan、Mul、Norm、Null、Orth、Pinv、Pinv2、Rank、Schmidt、Stm、Sub、Svd2、T、Trace
16、对矩阵里的数据进行排序或寻找大小的函数
//Find、Min、Max、Sort、SortCol、SortCol2、Sortrow、Sortrow2
17、函数的求导函数
//Diff、Diffs
18、数据的傅里叶变换函数
//DFT、IDFT、FFT、IFFT
19、绘制二维图形的函数
//Dataplot、Fplot、Plot、Subplot
20、其它特殊函数
//Mechmoi、Peaks、Sudoku、Transf
21、剩下的函数基本就是对矩阵里的每个元素进行对应的计算
命名规则
不管是矩阵运算还是复数运算的名称都遵循下面的命名规则.
1、名称必须以字母开头,且只能由字母下划线与数字组成
2、名称不能与函数名称冲突.
比如"adj"这个是求伴随矩阵的函数名不能作为变量名称.
3、在符号运算(积分、求根等)中不能以"sk"加数字为变量或者名称,因为系统已经占用.
4、名称pi代表圆周率π=3.14159265358979;名称e代表自然数=2.71828182845905;在复数计算里i代表虚单位.
上面这几点说明的情况都不允许变量命名为那禁止的名称.如果你不确定名称是否被禁止,当你输入变量名称执行某命令时,如果命名不正确,程序自然会给出提示.
软件评论 您的评论需要经过审核才能显示
网友评论