
双曲正切函数y=thx=sthx/cthx=(e^x-e^(-x))/(e^x+e^(-x))=(e^2x-1)/(e^2x+1)=1-2/(e^2x+1)。
因此e^2x+1=2/(1-y),e^2x=2/(1-y)-1=(1+y)/(1-y),所以2x=ln((1+y)/(1-y))=ln(1+y)-ln(1-y)。因此反函数为y=(ln(1+x)-ln(1-x))/2。
双曲正切函数是双曲函数的一种。双曲正切函数在数学语言上一般写作tanh,也可简写成th。与三角函数一样,双曲函数也分为双曲正弦、双曲余弦、双曲正切、双曲余切、双曲正割、双曲余割6种,双曲正切函数便是其中之一。
三角函数
三角函数是数学中属于初等函数中的超越函数的一类函数,它们的本质是任意角的集合与一个比值的集合的变量之间的映射。
通常的三角函数是在平面直角坐标系中定义的,其定义域为整个实数域。另一种定义是在直角三角形中,但并不完全。现代数学把它们描述成无穷数列的极限和微分方程的解,将其定义扩展到复数系。
请问Matlab中求f(x)的原函数的命令是什么?谢谢。
原函数就是不定积分,用
int(f(x))
即可
matlab中有解隐函数的命令么syms pd n=[]; m=[]; a=[]; b=[]; w=[]; l =[];s=[];%代入各参数 eq=(2(n-m)(a+bw)+((w-pd-s)(n-m)/(l-pd-s))(2n-(w-pd-s)(n-m)/(l-pd-s)+m)-m^2)/(4b(n-m))-pd; pd=solve(eq,pd)
matlab 中使用数学函数的命令这是百度文库中搜到的:
abs(x):纯量的绝对值或向量的长度
angle(z):复 数z的相角(Phase angle)
sqrt(x):开平方
real(z):复数z的实部
imag(z):复数z的虚 部
conj(z):复数z的共轭复数
round(x):四舍五入至最近整数
fix(x):无论正负,舍去小数至最近整数
floor(x):地板函数,即舍去正小数至最近整数 (比此小数小的最近整数)
ceil(x):天花板函数,即加入正小数至最近整数 (比此小数大的最近整数)
rat(x):将实数x化为分数表示
rats(x):将实数x化为多项分数展开
sign(x):符号函数 (Signum function)。
当x<0时,sign(x)=-1;
当x=0时,sign(x)=0;
当x>0时,sign(x)=1。
> 小整理:MATLAB常用的三角函数
sin(x):正弦函数
cos(x):馀弦函数
tan(x):正切函数
asin(x):反正弦函数
acos(x):反馀弦函数
atan(x):反正切函数
atan2(x,y):四象限的反正切函数
sinh(x):超越正弦函数
cosh(x):超越馀弦函数
tanh(x):超越正切函数
asinh(x):反超越正弦函数
acosh(x):反超越馀弦函数
atanh(x):反超越正切函数
感觉够用了这些
MATLAB中求逆矩阵的命令是?inv(A)
或
A^-1
PASCAL编程中终止一个过程或函数的命令是什么,终止程序的命令是什么?
从过程、函数中退出用exit;
如果是FP、函数,可以写exit(1);来直接返回函数值。
直接终止程序用halt;
用halt(1);可以返回值给系统。(一般默认为0,0表示正常,非0为异常)
求以下函数的原函数,谢谢! f(x)=A/(B+x)Aln(B+x)是它的原函数
c语言 退出整个程序或函数的命令是什么return可以退出当前函数,如果用在main函数中,则可以直接退出程序。
exit()可以直接退出程序,常用于需要在非main函数中需要退出程序的情况。
求以下函数的原函数,谢谢! f(x)=A/(B+x)^2(-A)/(B+X)
Matlab的命令中有求一个多元函数的黑塞矩阵的命令吗?有的话是什么 ?hess
The function hess has a new syntax of the form
[AA,BB,Q,Z] = hess(A,B)
where A and B are square matrices, and returns an upper Hessenberg matrix AA, an upper triangular matrix BB, and unitary matrices Q and Z such that
QAZ = AA
and
QBZ = BB
请问,f(x)=x∧3的反函数是什么?怎么求出原函数的反函数?反函数为 y=三次根号下x 说简单点,设函数y=f(x),根据这个函数中x,y 的关系,用y把x表示出,得到x= g(y),就是它的反函数 (原函数的自变量就是反函数的因变量,他们的值域和定义域也正好反的)
双曲线x^2/a^2-y^2/b^2=1的参数方程可以表示为:x=ach
t
(双曲余弦),y=bsh
t
(双曲正弦)
与三角函数表示的椭圆的参数方程有相同的形式,很优美
这可以算是一个联系吧!
反双曲函数是双曲函数的反函数,
MLPClassifier是一个监督学习算法,下图是只有1个隐藏层的MLP模型 ,左侧是输入层,右侧是输出层。
上图的整体结构可以简单的理解为下图所示:
MLP又名多层感知机,也叫人工神经网络(ANN,Artificial Neural Network),除了输入输出层,它中间可以有多个隐藏层,如果没有隐藏层即可解决线性可划分的数据问题。最简单的MLP模型只包含一个隐藏层,即三层的结构,如上图。
从上图可以看到,多层感知机的层与层之间是全连接的(全连接的意思就是:上一层的任何一个神经元与下一层的所有神经元都有连接)。多层感知机最底层是输入层,中间是隐藏层,最后是输出层。
输入层没什么好说,你输入什么就是什么,比如输入是一个n维向量,就有n个神经元。
隐藏层的神经元怎么得来?首先它与输入层是全连接的,假设输入层用向量X表示,则隐藏层的输出就是
f(W1X+b1),W1是权重(也叫连接系数),b1是偏置,函数f 可以是常用的sigmoid函数或者tanh函数:
最后就是输出层,输出层与隐藏层是什么关系?其实隐藏层到输出层可以看成是一个多类别的逻辑回归,也即softmax回归,所以输出层的输出就是softmax(W2X1+b2),X1表示隐藏层的输出f(W1X+b1)。
MLP整个模型就是这样子的,上面说的这个三层的MLP用公式总结起来就是,函数G是softmax
因此,MLP所有的参数就是各个层之间的连接权重以及偏置,包括W1、b1、W2、b2。对于一个具体的问题,怎么确定这些参数?求解最佳的参数是一个最优化问题,解决最优化问题,最简单的就是梯度下降法了(sgd):首先随机初始化所有参数,然后迭代地训练,不断地计算梯度和更新参数,直到满足某个条件为止(比如误差足够小、迭代次数足够多时)。这个过程涉及到代价函数、规则化(Regularization)、学习速率(learning rate)、梯度计算等。
下面写了一个超级简单的实例,训练和测试数据是mnist手写识别数据集:
from sklearnneural_network import MLPClassifier
import gzip
import pickle
with gzipopen('/mnistpklgz') as f_gz:
train_data,valid_data,test_data = pickleload(f_gz)
clf = MLPClassifier(solver='sgd',activation = 'identity',max_iter = 10,alpha = 1e-5,hidden_layer_sizes = (100,50),random_state = 1,verbose = True)
clffit(train_data[0][:10000],train_data[1][:10000])
print clfpredict(test_data[0][:10])
print(clfscore(test_data[0][:100],test_data[1][:100]))
print(clfpredict_proba(test_data[0][:10]))
参数说明:
参数说明:
1 hidden_layer_sizes :例如hidden_layer_sizes=(50, 50),表示有两层隐藏层,第一层隐藏层有50个神经元,第二层也有50个神经元。
2 activation :激活函数,{‘identity’, ‘logistic’, ‘tanh’, ‘relu’}, 默认relu
- identity:f(x) = x
- logistic:其实就是sigmod,f(x) = 1 / (1 + exp(-x))
- tanh:f(x) = tanh(x)
- relu:f(x) = max(0, x)
3 solver: {‘lbfgs’, ‘sgd’, ‘adam’}, 默认adam,用来优化权重
- lbfgs:quasi-Newton方法的优化器
- sgd:随机梯度下降
- adam: Kingma, Diederik, and Jimmy Ba提出的机遇随机梯度的优化器
注意:默认solver ‘adam’在相对较大的数据集上效果比较好(几千个样本或者更多),对小数据集来说,lbfgs收敛更快效果也更好。
4 alpha :float,可选的,默认00001,正则化项参数
5 batch_size : int , 可选的,默认’auto’,随机优化的minibatches的大小batch_size=min(200,n_samples),如果solver是’lbfgs’,分类器将不使用minibatch
6 learning_rate :学习率,用于权重更新,只有当solver为’sgd’时使用,{‘constant’,’invscaling’, ‘adaptive’},默认constant
- ‘constant’: 有’learning_rate_init’给定的恒定学习率
- ‘incscaling’:随着时间t使用’power_t’的逆标度指数不断降低学习率learning_rate_ ,effective_learning_rate = learning_rate_init / pow(t, power_t)
- ‘adaptive’:只要训练损耗在下降,就保持学习率为’learning_rate_init’不变,当连续两次不能降低训练损耗或验证分数停止升高至少tol时,将当前学习率除以5
7 power_t: double, 可选, default 05,只有solver=’sgd’时使用,是逆扩展学习率的指数当learning_rate=’invscaling’,用来更新有效学习率。
8 max_iter: int,可选,默认200,最大迭代次数。
9 random_state:int 或RandomState,可选,默认None,随机数生成器的状态或种子。
10 shuffle: bool,可选,默认True,只有当solver=’sgd’或者‘adam’时使用,判断是否在每次迭代时对样本进行清洗。
11 tol:float, 可选,默认1e-4,优化的容忍度
12 learning_rate_int:double,可选,默认0001,初始学习率,控制更新权重的补偿,只有当solver=’sgd’ 或’adam’时使用。
14 verbose : bool, 可选, 默认False,是否将过程打印到stdout
15 warm_start : bool, 可选, 默认False,当设置成True,使用之前的解决方法作为初始拟合,否则释放之前的解决方法。
16 momentum : float, 默认 09,动量梯度下降更新,设置的范围应该00-10 只有solver=’sgd’时使用
17 nesterovs_momentum : boolean, 默认True, Whether to use Nesterov’s momentum 只有solver=’sgd’并且momentum > 0使用
18 early_stopping : bool, 默认False,只有solver=’sgd’或者’adam’时有效,判断当验证效果不再改善的时候是否终止训练,当为True时,自动选出10%的训练数据用于验证并在两步连续迭代改善,低于tol时终止训练。
19 validation_fraction : float, 可选, 默认 01,用作早期停止验证的预留训练数据集的比例,早0-1之间,只当early_stopping=True有用
20 beta_1 : float, 可选, 默认09,只有solver=’adam’时使用,估计一阶矩向量的指数衰减速率,[0,1)之间
21 beta_2 : float, 可选, 默认0999,只有solver=’adam’时使用估计二阶矩向量的指数衰减速率[0,1)之间
22 epsilon : float, 可选, 默认1e-8,只有solver=’adam’时使用数值稳定值。
属性说明:
- classes_:每个输出的类标签
- loss_:损失函数计算出来的当前损失值
- coefs_:列表中的第i个元素表示i层的权重矩阵
- intercepts_:列表中第i个元素代表i+1层的偏差向量
- n_iter_ :迭代次数
- n_layers_:层数
- n_outputs_:输出的个数
- out_activation_:输出激活函数的名称。
方法说明:
- fit(X,y):拟合
- get_params([deep]):获取参数
- predict(X):使用MLP进行预测
- predic_log_proba(X):返回对数概率估计
- predic_proba(X):概率估计
- score(X,y[,sample_weight]):返回给定测试数据和标签上的平均准确度
-set_params(params):设置参数。
双曲余切有反函数
双曲函数(hyperbolic function)可借助指数函数定义
双曲正弦
sh z =(ez-e-z)/2 (1)
双曲余弦
ch z =(ez+e-z)/2 (2)
双曲正切
th z = sh z /ch z =(ez-e-z)/(ez+e-z) (3)
双曲余切
cth z = ch z/sh z=(ez+e-z)/(ez-e-z) (4)
双曲正割
sech z =1/ch z (5)
双曲余割
csch z =1/sh z (6)其中,指数函数(exponential function)可由无穷级数定义
ez=1+z/1!+z2/2!+z3/3!+z4/4!+…+zn/n!+… (7)
双曲函数的反函数(inverse hyperbolic function)分别记为ar sh z、ar ch z、ar th z等。
双曲函数并非单纯是数学家头脑中的抽象,在物理学众多领域可找到丰富的实际应用实例。
1、阻尼落体
在空气中由静止开始下落的小石块既受重力的作用又受到阻力的作用。设小石块的质量为m,速度为v,重力加速度为g,所受空气阻力假定与v2正比,阻尼系数为μ。设初始时刻小石块静止。求其小石块运动速度与时间的关系。
解:
小石块遵循的运动方程为
mdv/dt=mg―μv2 (8)
这是Riccati方程,它可以精确求解。
依标准变换方式,设
v=(m/μ)(z′/z) (9)
代入(8)式,再作化简,有
z'' ―(gμ /m)z=0 (10)
(10)式的通解是
z=C1exp(√gμ /m t)+ C2exp(-√gμ /m t) (11)
其中,C1和C2是任意常数。
由于小石块在初始时刻是静止的,初始条件为
v(0)=0 (12)
这等价于
z′(0)=0 (13)
因此,容易定出
C2=-C1 (14)
将(14)式代入(11)式,再将(11)式代入(9)式,就可得
满足初始条件的解
v=√mg/μ tanh(√μg/m t ) (15)
图1:阻尼落体时速度和时间的关系
我们可以作一下定性的分析。小石块初始时刻静止。因此,随着时间增加,开始时小石块速度较小,小石块所受的阻力影响较小,此时,小石块与不受阻力的自由落体运动情况相类似,小石块加速度几乎是常数。反映在图1中,起始段t和v的关系是直线。当小石块速度很大时,重力相对于阻力来说可以忽略,阻力快速增加到很大的数值,导致小石块的速度几乎不再增加。此时,小石块加速度接近零,v几乎不随时间而变化。从图1中可以看到,一段时间后,v相不多是一平行于t轴的直线。
2、导线电容
真空中两条圆柱形无穷长平行直导线,横截面的半径分别为R1和R2,中心线相距为d(d >R1+R2)。试求它们间单位长度的电容。
解:
设这两条导线都带电,单位长度的电荷量分别是为λ和―λ。
我们可以用电像法精确求解。电像法的思路是:
由于在静电平衡情况时,导线是等势体,因而我们可设想用偶极线来取代这两条圆柱形带电导线,适当地选择偶极线的位置,使它们所产生的两个等势面恰好与原来两导线的表面重合。这样就满足了边界条件。这里采用的偶极线是两条无穷长的均匀带电平行直线,它们单位长度的电荷量也分别为λ和―λ。这偶极线便是原来两带电导线的电像。于是就可以计算电势,从而求出电容来。为此先求偶极线的等势面。
以偶极线所在的平面为z-x平面,取笛卡儿坐标系,使偶极线对称地处在z轴的两侧,它们到z轴的距离都是a。如图2所示。这偶极线所产生的电势便为
φ=φ1+φ2
=(λ/2πε0)In(r1′ / r1)+(―λ/2πε0)In(r2′ / r2)
=(λ/2πε0)In[(r2 / r1)(r1′/ r2′)] (16)
y
P
r2 r1
R2 ―λ +λ R1 x
O
a a
a2 a1
图2:带电导线与其镜像
式中r1′和r2′分别是偶极线λ和―λ到某个电势参考点的距离。为方便起见,我们取z轴上的电势为零,这样,r1′=r2′= a,于是,(16)式便化为
φ=(λ/2πε0)In(r2 / r1) (17)
由于对称性,平行于z轴的任何一条直线都是偶极线的等势线。所以,我们只须考虑z-y平面内任意一点P(z,y)的电势即可。于是
φ=(λ/4πε0)In{[(x2+a2)+y2] /[(x2―a2)+y2] } (18)
故偶极线的等势面方程便为
[(x2+a2)+y2] /[(x2―a2)+y2]=k2 (19)
式中
k2 =e4πε0φ/λ (20)
令
c=[(k2+1)/( k2―1)]a (21)
则(19)式可化为
(x―c)2+y2=[4k2/( k2―1)2]a 2 (22)
这表明,偶极线的等势面都是轴线平行于z轴的圆柱面,它们的轴线都在z轴上z=c处,其横截面的半径为
R=∣2k/( k2―1) ∣a (23)
这个结果启示,我们可以找到偶极线的两个等势面,使它们分别与原来两导线的表面重合。这只要下列等式成立就可以了:
a1= ∣c1∣=[(k12+1)/( k12―1)]a (24)
R1=∣2k1/( k12―1) ∣a (25)
a2= ∣c2∣=[(k22+1)/( k22―1)]a (26)
R2=∣2k2/( k22―1) ∣a (27)
d=a1+a2 (28)
由(24)至(27)式得
a12―R12=a2= a22―R22 (29)
原来两导线表面的方程是
R1:(x―a1)2+y2= R12 (30)
R2:(x+a2)2+y2= R22 (31)
利用(29)式,可以把(30)和(31)式分别化为
x2+y2+ a2= 2a1 x (32)
x2+y2+ a2= ―2a2 x (33)
利用(32)和(33)两式,由(18)式得出,半径为R1和R2的两导线的电势分别为
φ1=(λ/4πε0)In[(a1+a)/ (a1―a)] (34)
φ2=―(λ/4πε0)In[(a2+a)/ (a2―a)] (35)
于是两导线的电势差便为
U=φ1+φ2=(λ/2πε0)In[(a1+a)(a2―a)/ R1R2] (36)
用已知的量消去未知数,可以得出
U=(λ/2πε0)In[(d2―R12―R2)/ 2R1R2+√[(d2―R12―R2)/ 2R1R2]2―1] (37)
最后得出原来两导线为l一段的电容为
C=Q/U=2πε0l/ In[(d2―R12―R22)/ 2R1R2+√[(d2―R12―R22)/ 2R1R2]2―1] (38)
单位长度的电容为
c=2πε0/ In[(d2―R12―R22)/ 2R1R2+√[(d2―R12―R22)/ 2R1R2]2―1] (39)
利用反两曲余弦关系式
archx= In[(x+√x2―1)] (40)
对本题的精确解表示作简洁表示
c=2πε0/ arch[(d2―R12―R22)/ 2R1R2] (41)
最后一式可以在一般手册上查到。
3、粒子运动轨迹
一电荷量为q、静质量为m0的粒子从原点出发,在一均匀电场E中运动,E=Eez沿z轴方向,粒子的初速度沿y轴方向,试证明此粒子的轨迹为
x=(W0/qE)[cosh(qEy/p0c)―1] (42)
式中p0是粒子出发时动量的值,W0是它出发时的能量。
解:
带有电荷量q的粒子在电磁场E和B中的相对论性的运动方程为
dp/dt=q(E+v×B) (43)
式中v是粒子的速度,p是粒子的动量
p=mv=mv0/√1-v2/c2 (44)
本题运动方程的分量表示式为
dpx=qE
dpy=0
dpz=0 (45)
解之,有
px =qEt+C1
py = C2
pz = C3 (46)
代入t=0时初始条件
px(0)=0
py(0)= p0
pz(0)= 0 (47)
定出积分常数后,可知
px=qEt
py= p0
pz= 0 (48)
粒子的能量为
W=mc2
=√p2c2+m02c4
=√(px2+ py2+ pz2)c2+m02c4
=√q2E2 c2t2+W02 (49)
因dx/dt=qEt/m=qEc2t/√q2E2 c2t2+W02 (50)
积分得
x=∫[qEc2t/√q2E2 c2t2+W02 ]dt
= [√q2E2 c2t2+W02 -W02]/qE (51)
又由(48)式得
dy/dt=p0/m=p0c2/√q2E2 c2t2+W02 (52)
积分得
y=∫[p0c2 /√q2E2 c2t2+W02 ]dt
=(p0c /qE)arsh(qEct/W0) (53)
或 (qEct/W0)= sinh (qEy/ p0c) (54)
在(51)式和(54)式中消去t,有
x=(W0/qE)[√1+ sinh2(qEy/ p0c)-1 ] (55)
利用恒等变换公式
cosh2x―sinh2x=1 (56)
(55)式可以写成
x=(W0/qE)[cosh2(qEy/ p0c)-1 ] (57)
(57)式是一种悬链线。
图3:匀强电场中粒子的悬链线运动轨迹
讨论:
因双曲余弦泰勒级数展开式是
cosh(x)=1+x2/2!+x4/4!+x6/6!+…… (58)
当v/c →0时,保留前2项,得
x=(qE/2m v02)y2 (59)
(59)式是抛物线轨迹。《普通物理学》教材用经典牛顿力学求解,普遍会给有这个结果。这表示,非相对论确是相对论在v/c →0时的极限。或者说,(59)式成立的条件是v/c<<1,这也是牛顿力学的适用范围。
4、非线性方程求解
如著名的KdV(Korteweg-de Vries)方程的形式为
ux+uux+βuxxx=0 (60)
它是非线性的频散方程,其中β是频散系数。用双曲函数展开法求其某些特殊精确解。
解:
考虑其行波解
u(x,t)=φ(ξ) (61)
其中,
ξ=kx-ωt+ξ0 (62)
KdV方程成为
-ωφξ+kφφξ+k3βφξξξ=0 (63)
记
f=1/(coshξ+r),g=sinhξ/(coshξ+r) (64)
尝试
φ=a0+a1f+a2g (65)
注意存在关系式
df/dξ=-fg
dg/dξ=1-g2-rg
g2=1-2rf+(r2-1)f2 (66)
将(65)式代入(63)式,并在(66)式的帮助下使所得方程中各项只含有f和g的幂次项,且g的幂次项不大于1。合并f和g的同次幂项并取其系数为零,就得到方程(63)对应的非线性代数方程组
-6βk3b1(r2-1)2=0,
-6βk3a1(r2-1)=0,
-2kb1(r2-1)(-6βk2r+ a1)=0,
-k(-6βk2r a1+ a12-b12+ b12r2)=0,
b1(4βk3+ka0-ka0r2+3ka1 r-7βk3 r2+ cr2-c)=0,
ωa1+kb12 r-βk3 a1-ka0a1=0,
-b1(ka1+ωr-βk3r-ka0r)=0 (67)
用计算机代数系统Maple对此超定方程组进行运算,可求得k≠0,ω≠0时的一个非平凡精确解
φ=(ω-βk3)/k+6βk2/(coshξ+1)=0 (68)
其中,k、ω、ξ0为任意常数 。
(68)式是孤波解,图4绘出了其函数图像形状(作图时取了β=1/6 k2,ω=βk3)。
图4: KdV方程的孤波解
从以上的讨论中可知,无论是在经典或近代的物理学内容中,还是在正在发展中的物理学内容中,双曲函数起着不可或缺的重要作用。
1ABS
用途:返回某一参数的绝对值。
语法:ABS(number)
参数:number是需要计算其绝对值的一个实数。
实例:如果A1=-16,则公式“=ABS(A1)”返回16。
2ACOS
用途:返回以弧度表示的参数的反余弦值,范围是0~π。
语法:ACOS(number)
参数:number是某一角度的余弦值,大小在-1~1之间。
实例:如果A1=05,则公式“=ACOS(A1)”返回1047197551(即π/3弧度,也就是600);而公式“=ACOS(-05)180/PI()”返回120°。
3ACOSH
用途:返回参数的反双曲余弦值。
语法:ACOSH(number)
参数:number必须大于或等于1。
实例:公式“=ACOSH(1)”的计算结果等于0;“=ACOSH(10)”的计算结果等于2993223。
4ASIN
用途:返回参数的反正弦值。
语法:ASIN(number)
参数:Number为某一角度的正弦值,其大小介于-1~1之间。
实例:如果A1=-05,则公式“=ASIN(A1)”返回-05236(-π/6弧度);而公式“=ASIN(A1)180/PI()”返回-300。
5ASINH
用途:返回参数的反双曲正弦值。
语法:ASINH(number)
参数:number为任意实数。
实例:公式“=ASINH(-25)”返回-164723;“=ASINH(10)”返回2998223。
6ATAN
用途:返回参数的反正切值。返回的数值以弧度表示,大小在-π/2~π/2之间。
语法:ATAN(number)
参数:number为某一角度的正切值。如果要用度表示返回的反正切值,需将结果乘以180/PI()。
实例:公式“=ATAN(1)”返回0785398(π/4弧度);=ATAN(1)180/PI()返回450。
7ATAN2
用途:返回直角坐标系中给定X及Y的反正切值。它等于X轴与过原点和给定点(x_num,y_num)的直线之间的夹角,并介于-π~π之间(以弧度表示,不包括-π)。
语法:ATAN2(x_num,y_num)
参数:X_num为给定点的X坐标,Y_num为给定点的Y坐标。
实例:公式“=ATAN2(1,1)”返回0785398(即π/4弧度);=ATAN2(-1,-1)返回-235619(-3π/4弧度);=ATAN2(-1,-1)180/PI()返回-1350。
8ATANH
用途:返回参数的反双曲正切值,参数必须在-1~1之间(不包括-1和1)。
语法:ATANH(number)
参数:number是-1<NUMBER<1的任意实数。< p>
实例:公式“=ATANH(05)”返回0549306144;=ATANH(-01)返回-010034。
9CEILING
用途:将参数Number沿绝对值增大的方向,返回一个最接近的整数或基数significance的最小倍数。
语法:CEILING(number,significance)
参数:number为待返回的数值,Significance为待返回的最小倍数。
注意:无论number的正负如何,都是按远离0点的方向返回结果。如果number是Significance的倍数,则返回的数值是其自身。
实例:如果A1=31416,则公式“=CEILING(A1,1)”返回的结果是4;=CEILING(-25,-2)返回的结果为–4。
10COMBIN
用途:返回一组对象所有可能的组合数目。
语法:COMBIN(number,number_chosen)
参数:number是某一对象的总数量,number_chosen则是每一组合中对象的数量。
注意:函数中的参数按照截尾取整的原则参与运算,并且要求number>0、number_chosen>0以及number>number_chosen。
实例:假设有10名乒乓球队员,从中选出任意两人搭配参加双打,则计算公式为“=COMBIN(10,2)”,可以得出45种搭配方案。
11COS
用途:返回某一角度的余弦值。
语法:COS(number)
参数:number为需要求余弦值的一个角度,必须用弧度表示。如果number的单位是度,可以乘以PI()/180转换为弧度。
实例:如果A1=1,则公式“=COS(A1)”返回0540302;若A2=60,则公式“=COS(A2PI()/180)”返回05。
12COSH
用途:返回参数的双曲余弦值。
语法:COSH(number)
参数:number为任意实数。
实例:如果A1=5、A3=6,则公式“=COSH(A1+A3)”返回2993707087;若C1=60,则公式“=COSH(COS(C1PI()/180))”返回1127625965。
13COUNTIF
用途:统计某一区域中符合条件的单元格数目。
语法:COUNTIF(range,criteria)
参数:range为需要统计的符合条件的单元格数目的区域;Criteria为参与计算的单元格条件,其形式可以为数字、表达式或文本(如36、">160"和"男"等)。其中数字可以直接写入,表达式和文本必须加引号。
实例:假设A1:A5区域内存放的文本分别为女、男、女、男、女,则公式“=COUNTIF(A1:A5,"女")”返回3。
14DEGREES
用途:将弧度转换为度。
语法:DEGREES(angle)
参数:angle是采用弧度单位的一个角度。
实例:公式“=DEGREES(1)返回5729577951”,=DEGREES(PI()/3)返回60。
15EVEN
用途:返回沿绝对值增大方向,将一个数值取整为最接近的偶数。
语法:EVEN(number)
参数:number是要取整的一个数值。
实例:如果A1=-26则公式“=EVEN(A1)”返回-4;=EVEN(-456+687)返回4。
16EXP
用途:返回e的n次幂。
语法:EXP(number)
参数:Number为底数e的指数。
注意:EXP函数是计算自然对数的LN函数的反函数。
实例:如果A1=3,则公式“=EXP(A1)”返回20085537即e3。
17FACT
用途:返回一个数的阶乘,即123该数。
语法:FACT(number)
注意:Number是计算其阶乘的非负数。如果输入的Number不是整数,则截去小数部分取整数。
实例:如果A1=3,则公式“=FACT(A1)”返回6;=FACT(55)返回123455即120。
18FACTDOUBLE
用途:返回参数Number的半阶乘。
语法:FACTDOUBLE(number)
Number要计算其半阶乘的数值,如果参数Number为非整数,则截尾取整。
注意:如果该函数不存在,应当运行“安装”程序加载“分析工具库”。
实例:公式“=FACTDOUBLE(4)”返回8。
19FLOOR
用途:将参数Number沿绝对值减小的方向去尾舍入,使其等于最接近的significance的倍数。
语法:FLOOR(number,significance)
参数:Number为要舍入的某一数值,Significance为该数值的倍数。
实例:如果A1=225,则公式“=FLOOR(A1,1)”返回22;=FLOOR(-25,-2)返回-2。
20GCD
用途:返回两个或多个整数的最大公约数。
语法:GCD(number1,number2,)
参数:Number1,number2,为1到29个数值,如果数值为非整数,则截尾取整。
说明:如果该函数不存在,必须运行“安装”程序加载“分析工具库”。
实例:如果A1=16、A2=28、A3=46,则公式“=GCD(A1:A3)”返回2。
21INT
用途:将任意实数向下取整为最接近的整数。
语法:INT(number)
参数:Number为需要处理的任意一个实数。
实例:如果A1=1624、A2=-28389,则公式“=INT(A1)”返回16,=INT(A2)返回-29。
22LCM
用途:返回整数的最小公倍数。最小公倍数是所有整数参数number1、number2、…,的最小正整数倍数。用函数LCM可以将分母不同的分数相加。
语法:LCM(number1,number2,)
参数:Number1,number2,是要计算最小公倍数的1到29个参数。如果参数不是整数,则自动截去小数部分取整。
说明:该函数需要加载“分析工具库”才能使用。
实例:如果A1=4、A2=16、A3=8,则公式“=LCM(A1:A3)”返回16。
23LN
用途:返回一个数的自然对数,即以e(271828182845904)为底的对数(LN函数是EXP函数的反函数)。
语法:LN(number)
参数:Number是待计算其自然对数的正实数。
实例:如果A1=100、A2=67,则公式“=LN(A1+A2)”返回5117993812;=LN(EXP(3))返回3;=EXP(LN(4))返回4。
24LOG
用途:按所指定的底数,返回某个数的对数。
语法:LOG(number,base)
参数:Number是计算对数的任意实数,Base是对数的底数。如果省略底数,则默认它的值为10。
实例:如果A1=8,则公式“=LOG(A1,2)”返回3;=LOG(100,10)返回2。
25LOG10
用途:返回以10为底的对数。
语法:LOG10(number)
参数:Number是待计算常用对数的一个正实数。
实例:如果A1=1000,则公式“=LOG10(A1)”返回3;=LOG10(10^5)返回5。
26MDETERM
用途:返回一个数组的矩阵行列式的值。
语法:MDETERM(array)
参数:Array是一个行列数相等的数值数组。Array可以是单元格区域,例如A1:C3;或是一个数组常量,如{1,2,3;4,5,6;7,8,9};也可以是区域或数组常量的名称。矩阵行列式的值多用于求解多元联立方程。
实例:如果A1=1、A2=2、B1=3、B2=4,则公式“=MDETERM(A1:B2)”返回-2。
27MINVERSE
用途:返回数组矩阵的逆距阵。
语法:MINVERSE(array)
参数:Array是具有相等行列数的数值数组,它可以是单元格区域,例如A1:C3;也可以是常数数组如{1,2,3;4,5,6;7,8,9};或者是两者的名称。
实例:公式“=MINVERSE({4,-1;2,0})”返回{0,05;-1,2};=MINVERSE({1,2,1;3,4,-1;0,2,0})返回{025,025,-075;0,0,05;075,-025,-025}。
28MMULT
用途:返回两数组的矩阵乘积。结果矩阵的行数与array1的行数相同,矩阵的列数与array2的列数相同。
语法:MMULT(array1,array2)
参数:Array1和array2是要进行矩阵乘法运算的两个数组。Array1的列数必须与array2的行数相同,而且两个数组中都只能包含数值。Array1和array2可以是单元格区域、数组常数或引用。
实例:公式“=MMULT({1,2;2,3},{3,4;4,5})”返回11。
29MOD
用途:返回两数相除的余数,其结果的正负号与除数相同。
语法:MOD(number,divisor)
参数:Number为被除数,Divisor为除数(divisor不能为零)。
实例:如果A1=51,则公式“=MOD(A1,4)”返回3;=MOD(-101,-2)返回–1。
30MROUND
用途:返回参数按指定基数舍入后的数值。
语法:MROUND(number,significance)
参数:Number是将要舍入的数值,Significance是要对参数Number进行舍入运算的基数。
注意:如果参数number除以基数Significance的余数大于或等于基数Significance的一半,则函数MROUND向远离零的方向舍入。另外,该函数只有加载了“分析工具库”方可使用。
实例:如果A1=66876,则公式“=MROUND(A1,4)”的计算结果是8。
31MULTINOMIAL
用途:返回参数和的阶乘与各参数阶乘乘积的比值,例如MULTINOMIAL(2,3,4)执行的运算为9!/2!3!4!。
语法:MULTINOMIAL(number1,number2,)
参数:Number1,number2,是用于进行函数Multinomial运算的1到29个数值参数。
注意:该函数只有加载“分析工具库”方可使用。
实例:MULTINOMIAL(2,3,4)返回的结果为1260。
32ODD
用途:将一个正(负数)向上(向下)舍入为最接近的奇数。
语法:ODD(number)
参数:Number是待计算的一个数值。
注意:参数number必须是一个数值参数,不论它的正负号如何,其结果均按远离0的方向舍入。如果number恰好是奇数,则保持原来的数值不变。
实例:如果A1=315,则公式“=ODD(A1)”返回33;=ODD(3)返回3;=ODD(-2638)返回–27。
33PI
用途:返回圆周率π,精确到小数点后14位。
语法:PI()
参数:不需要
实例:公式“=PI()”返回314159265358979。
34POWER
用途:返回给定数字的乘幂。
语法:POWER(number,power)
参数:其中Number为底数,Power为指数,均可以为任意实数。
注意:可以用“^”运算符代替POWER函数执行乘幂运算,例如公式“=5^2”与“=POWER(5,2)”等价。
实例:如果A1=2537,则公式“=POWER(A1,7)”返回6764617901;=POWER(4,5/4)返回5656854。
35PRODUCT
用途:将所有数字形式给出的参数相乘,然后返回乘积值。
语法:PRODUCT(number1,number2,)
参数:Number1,number2,为1到30个需要相乘的数字参数。
实例:如果单元格A1=24、A2=36、A3=80,则公式“=PRODUCT(A1:A3)”返回69120;=PRODUCT(12,26,39)返回12168。
36QUOTIENT
用途:返回商的整数部分,即舍去商的小数部分。
语法:QUOTIENT(numerator,denominator)
参数:Numerator为被除数,Denominator为除数。
注意:该函数只有加载“分析工具库”方可使用。
实例:如果A1=86、A2=9,则公式“=QUOTIENT(A1,A2)”返回9;=QUOTIENT(-10,3)返回–3。
37RADIANS
用途:将一个表示角度的数值或参数转换为弧度。
语法:RADIANS(angle)
参数:Angle为需要转换成弧度的角度。
实例:如果A1=90,则公式“=RADIANS(A1)”返回157,=RADIANS(360)返回628(均取两位小数)。
38RAND
用途:返回一个大于等于0小于1的随机数,每次计算工作表(按F9键)将返回一个新的数值。
语法:RAND()
参数:不需要
注意:如果要生成a,b之间的随机实数,可以使用公式“=RAND()(b-a)+a”。如果在某一单元格内应用公式“=RAND()”,然后在编辑状态下按住F9键,将会产生一个变化的随机数。
实例:公式“=RAND()1000”返回一个大于等于0、小于1000的随机数。
39RANDBETWEEN
用途:产生位于两个指定数值之间的一个随机数,每次重新计算工作表(按F9键)都将返回新的数值。
语法:RANDBETWEEN(bottom,top)
参数:Bottom是RANDBETWEEN函数可能返回的最小随机数,Top是RANDBETWEEN函数可能返回的最大随机数。
注意:该函数只有在加载了“分析工具库”以后才能使用。
实例:公式“=RANDBETWEEN(1000,9999)”将返回一个大于等于1000、小于等于9999的随机数。
40ROMAN
用途:将阿拉伯数字转换为文本形式的罗马数字。
语法:ROMAN(number,form)
参数:Number为需要转换的阿拉伯数字。Form则是一个数字,它指定要转换的罗马数字样式。可以从经典到简化,随着form值的增加趋于简单。
实例:公式“=ROMAN(499,0)”返回“CDXCIX”;=ROMAN(499,1)返回“LDVLIV”。
41ROUND
用途:按指定位数四舍五入某个数字。
语法:ROUND(number,num_digits)
参数:Number是需要四舍五入的数字;Num_digits为指定的位数,Number按此位数进行处理。
注意:如果num_digits大于0,则四舍五入到指定的小数位;如果num_digits等于0,则四舍五入到最接近的整数;如果num_digits小于0,则在小数点左侧按指定位数四舍五入。
实例:如果A1=6525,则公式“=ROUND(A1,1)”返回653;=ROUND(82149,2)返回8215;=ROUND(215,-1)返回20。
42ROUNDDOWN
用途:按绝对值减小的方向舍入某一数字。
语法:ROUNDDOWN(number,num_digits)
参数:Number是需要向下舍入的任意实数,Num_digits指定计算的小数位数。
注意:ROUNDDOWN函数和ROUND函数的用途相似,不同之处是ROUNDDOWN函数总是向下舍入数字。
实例:如果A1=65251,则公式“=ROUNDDOWN(A1,0)”返回65;=ROUNDDOWN(A1,2)返回6525;=ROUNDDOWN(314159,3)返回3141;=ROUNDDOWN(-314159,1)返回-31;=ROUNDDOWN(3141592654,-2)返回31400。
43ROUNDUP
用途:按绝对值增大的方向舍入一个数字。
语法:ROUNDUP(number,num_digits)
参数:Number为需要舍入的任意实数,Num_digits指定舍入的数字位数。
注意:如果num_digits为0或省略,则将数字向上舍入到最接近的整数。如果num_digits小于0,则将数字向上舍入到小数点左边的相应位数。
实例:如果A1=65251,则公式“=ROUNDUP(A1,0)”返回66;=ROUNDUP(A1,1)返回66;=ROUNDUP(A1,2)返回6526;=ROUNDUP(-314159,1)返回-32;=ROUNDUP(3141592654,-2)返回31500。
44SERIESSUM
用途:返回幂级数的和。
语法:SERIESSUM(x,n,m,coefficients)
参数:X幂级数的输入值,N为x的首项乘幂,M为级数中每一项的乘幂n的步长增加值,Coefficients为一系列与x各级乘幂相乘的系数。Coefficients的值决定了幂级数的项数。
注意:SERIESSUM函数只有加载“分析工具库”以后方能使用。
实例:如果单元格A1=6525,则公式“=SERIESSUM(A1,3,2,6)”返回1666835719。
45SIGN
用途:返回数字的符号。正数返回1,零返回0,负数时返回-1。
语法:SIGN(number)
参数:Number是需要返回符号的任意实数。
实例:如果A1=6525,则公式“=SIGN(A1)”返回1;=SIGN(6-12)返回-1;=SIGN(9-9)返回0。
46SIN
用途:返回某一角度的正弦值。
语法:SIN(number)
参数:Number是待求正弦值的一个角度(采用弧度单位),如果它的单位是度,则必须乘以PI()/180转换为弧度。
实例:如果A1=60,则公式“=SIN(A1PI()/180)”返回0866,即60度角的正弦值。
47SINH
用途:返回任意实数的双曲正弦值。
语法:SINH(number)
参数:Number为任意实数。
实例:公式“=SINH(10)”返回1101323287,=SINH(-6)返回-2017131574。
48SQRT
用途:返回某一正数的算术平方根。
语法:SQRT(number)
参数:Number为需要求平方根的一个正数。
实例:如果A1=81,则公式“=SQRT(A1)”返回9;=SQRT(4+12)返回6。
49SQRTPI
用途:返回一个正实数与π的乘积的平方根。
语法:SQRTPI(number)
参数:Number是用来与π相乘的正实数。
注意:SQRTPI函数只有加载“分析工具库”以后方能使用。如果参数number<0,则函数SQRTPI返回错误值#NUM!。
实例:公式“=SQRTPI(1)”返回1772454,=SQRTPI(2)返回2506628。
50SUBTOTAL
用途:返回数据清单或数据库中的分类汇总。如果用户使用“数据”菜单中的“分类汇总”命令创建了分类汇总数据清单,即可编辑SUBTOTAL函数对其进行修改。
语法:SUBTOTAL(function_num,ref1,ref2…)
参数:Function_num为1到11之间的自然数,用来指定分类汇总计算使用的函数(1是AVERAGE;2是COUNT;3是COUNTA;4是MAX;5是MIN;6是PRODUCT;7是STDEV;8是STDEVP;9是SUM;10是VAR;11是VARP)。Ref1、ref2…则是需要分类汇总的1到29个区域或引用。
实例:如果A1=1、A2=2、A3=3,则公式“=SUBTOTAL(9,A1:A3)”将使用SUM函数对“A1:A3”区域进行分类汇总,其结果为6。
51SUM
用途:返回某一单元格区域中所有数字之和。
语法:SUM(number1,number2,)。
参数:Number1,number2,为1到30个需要求和的数值(包括逻辑值及文本表达式)、区域或引用。
注意:参数表中的数字、逻辑值及数字的文本表达式可以参与计算,其中逻辑值被转换为1、文本被转换为数字。如果参数为数组或引用,只有其中的数字将被计算,数组或引用中的空白单元格、逻辑值、文本或错误值将被忽略。
实例:如果A1=1、A2=2、A3=3,则公式“=SUM(A1:A3)”返回6;=SUM("3",2,TRUE)返回6,因为"3"被转换成数字3,而逻辑值TRUE被转换成数字1。
52SUMIF
用途:根据指定条件对若干单元格、区域或引用求和。
语法:SUMIF(range,criteria,sum_range)
参数:Range为用于条件判断的单元格区域,Criteria是由数字、逻辑表达式等组成的判定条件,Sum_range为需要求和的单元格、区域或引用。
实例:某单位统计工资报表中职称为“中级”的员工工资总额。假设工资总额存放在工作表的F列,员工职称存放在工作表B列。则公式为“=SUMIF(B1:B1000,"中级",F1:F1000)”,其中“B1:B1000”为提供逻辑判断依据的单元格区域,"中级"为判断条件,就是仅仅统计B1:B1000区域中职称为“中级”的单元格,F1:F1000为实际求和的单元格区域。
53SUMPRODUCT
用途:在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。
语法:SUMPRODUCT(array1,array2,array3,)
参数:Array1,array2,array3,为2至30个数组,其相应元素需要进行相乘并求和。
实例:公式“=SUMPRODUCT({3,4;8,6;1,9},{2,7;6,7;5,3})”的计算结果是156。
54SUMSQ
用途:返回所有参数的平方和。
语法:SUMSQ(number1,number2,)
参数:Number1,number2,为1到30个需要求平方和的参数,它可以是数值、区域、引用或数组。
实例:如果A1=1、A2=2、A3=3,则公式“=SUMSQ(A1:A3)返回14(即12+22+32=14)。
55SUMX2MY2
用途:返回两数组中对应数值的平方差之和。
语法:SUMX2MY2(array_x,array_y)
参数:Array_x为第一个数组或数值区域。Array_y为第二个数组或数值区域。
实例:如果A1=1、A2=2、A3=3、B1=4、B2=5、B3=6,则公式“=SUMX2MY2(A1:A3,B1:B3)”返回-63。
56SUMX2PY2
用途:返回两数组中对应数值的平方和的总和,此类运算在统计中经常遇到。
语法:SUMX2PY2(array_x,array_y)
参数:Array_x为第一个数组或数值区域,Array_y为第二个数组或数值区域。
实例:如果A1=1、A2=2、A3=3、B1=4、B2=5、B3=6,则公式“=SUMX2PY2(A1:A3,B1:B3)”返回91。
57SUMXMY2
用途:返回两数组中对应数值之差的平方和。
语法:SUMXMY2(array_x,array_y)
参数:Array_x为第一个数组或数值区域。Array_y为第二个数组或数值区域。
实例:如果A1=1、A2=2、A3=3、B1=4、B2=5、B3=6,则公式“=SUMXMY2(A1:A3,B1:B3)”返回27。
58TAN
用途:返回某一角度的正切值。
语法:TAN(number)
参数:Number为需要求正切的角度,以弧度表示。如果参数的单位是度,可以乘以P1()/180转换为弧度。
实例:如果A1=60,则公式“=TAN(A1PI()/180)”返回1732050808;TAN(1)返回1557407725。
59TANH
用途:返回任意实数的双曲正切值。
语法:TANH(number)
参数:Number为任意实数。
实例:如果A1=60,则公式“=TANH(A1)”返回1,=TANH(05)返回0462117。
60TRUNC
用途:将数字的小数部分截去,返回整数。
语法:TRUNC(number,num_digits)
参数:Number是需要截去小数部分的数字,Num_digits则指定保留小数的精度(几位小数)。
注意:TRUNC函数可以按需要截取数字的小数部分,而INT函数则将数字向下舍入到最接近的整数。INT和TRUNC函数在处理负数时有所不同:TRUNC(-43)返回-4,而INT(-43)返回-5。
实例:如果A1=78652,则公式“=TRUNC(A1,1)”返回786,=TRUNC(A1,2)返回7865,=TRUNC(-8963,2)返回–896。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)