-
ADAMS/View
函数及
ADAMS/Solver
函数、
ADAMS/View
设计函数(转)
主要介绍
ADAMS/View
提供的各类函数,以及
ADAMS/Solver
支持的各类函数,
并通过实例介绍一
些重要函数的具体用法。
通过本章的学习可以深入了解和具体
掌
握函数
的基本使用方法,利用这些函数能够定义更为复杂的结
构、更为灵活地应用
ADAMS
软件
进行精确高效的建模与仿真。
1
ADAMS/View
函数及
ADAMS/Solver
函数的类型及建立
ADAMS/View
函数包括设计函数与运行函数两种类型
,函数的建立对应有表达式
模式
和运
行模式两种。
表达式模式下在设计过程中对设计函数求值,
而运
行模式下会
在仿真过
程中对运行函数进行计算更新。
ADAMS/Solver <
/p>
函数支持
ADAMS/View
运行模式
下
的函数,
在仿真过程中采用
ADAMS/Solver
解算时对这些函数进行计算更新。
1.1
建立表达式模式下的函数
<
/p>
在进行建立表达式、
产生和修改需要计算的度量及建立设计函数等
操作时,
会采
用表
达式模式。
在建立表达式时,首先在
接受表达式的文本框处右击,然后选择
“Parameterize”再选
择“Expression
Euilder”,
进入建立设计函数表达式对话框。在该对话框中输
入表达式,然
后单击“OK”完成操作。
在产生和
修改需要计算的度量时,
首先在“Build”菜单中选择“Measure”,
然
后指向
“Com
puted”,再选择“New”或“Modified”确定是新建还是修改,进入产生
和修改需要
计算的度量对话框。在该对话框中输入表达式,
然后单击“OK”完成操作。
在建立设计函数时,首先在“B
uild”菜单中选择“Function”,然后选择
“New”或
< br>
“Modified”确定是新建还是修改,
进入产生
和修改设计函数对话框。
在该对话
框中输入
表达式,然后单击“OK”完成操作。
1.2
建立运行模式下的函数
p>
在进行建立运行函数、产生和修改函数型的度量等操作时,会采用运行模式。
在建立运行函数时,首先在接受表达式的文本框处右击,然后选择“Function
Euilder”,
进入建立运行函
数表达式对话框。
在该对话框中输入表达式,
然后单击“OK”
完
成操作。
在产生和修改函数型的度
量时,
首先在“Build”菜单中选择“Measure”,
然后
指向
“Function”,再
选择“New”或“Modified”确定是新建还是修改,进入产生
和修改函数
p>
型的度量对话框。在该对话框中输入表达式,然后单击“OK”完
成操作。
2 ADAMS/View
设计函数
ADAMS/View <
/p>
设计函数在设计过程中模型定义时有效,而不需到仿真过程中仿真
分析时
再进行计算更新。设计函数可用来将模型参数化以便进
行优化和灵敏度分析。
设计函数包括系统提供的函数和用户自
定义函数,
这里仅对系统提供的函数做扼
要介
< br>
绍。
2.1
数学函数
数学函数适用于对标量和矩
阵进行数学计算,
如果输入变量为标量其返回值就是
标
量,如果输入变量为矩阵其返回值就是矩阵。
ADAMS/View
中系统提供的数学函
数大致分
类介绍如下。
(
1
)基本数学函数
ABS(x)
数字表达式
x
的绝对值
DIM(x1
,
x2) x1>x2
时
x1
与
x2
之间的差值,
x1
时返回
0
EXP(x)
数字表达式
x
的指数值
LOG(x)
数字表达式
x
的自然对数值
LOG10(x)
数字表达式
x
的以
10
为底的对数值
MAG(x
,
y
,
z)
向量
[x
,
y
,
z]
求模
MOD(x1
,
x2)
数字表达式
x1
对另一个数字表达式
x2
取余数
RAND(x)
返回
0
到
1
之间的随机数
SIGN(x1
,
x2)
符号函数,当
x2>0
时返回
ABS(x)
,当
x2<0
时返回-
ABS(x)
SQRT(x)
数字表达式
x
的平方根值
(
2
)三角函数
SIN(x)
数字表达式
x
的正弦值
SINH(x)
数字表达式
x
的双曲正弦值
COS(x)
数字表达式
x
的余弦值
COSH(x)
数字表达式
x
的双曲余弦值
TAN(x)
数字表达式
x
的正切值
TANH(x)
数字表达式
x
的双曲正切值
ASIN(x)
数字表达式
x
的反正弦值
ACOS(x)
数字表达式
x
的反余弦值
CEIL(x)
数字表达式
x
向正无穷的方向取整
FLOOR(x)
数字表达式
x
向负无穷的方向取整
NINT(x)
最接近数字表达式
x
的整数值
RTOI(x)
返回数字表达式
x
的整数部分
2.2
位置
/
方向函数
位置
/
方向函数用于根据不同输入变量计算有关位
置或方向的参数。
ADAMS/View
中
系统提供的位置
< br>/
方向函数分类介绍如下。
(
1
)位置函数
LOC_ALONG_LINE
返回两点连线上与第一点距离为指定值的点
LOC_CYLINDRICAL
将圆柱坐标系下坐标值转化为笛卡儿坐标系下坐标值
LOC_FRAME_MIRROR
返回指定点关于指定坐标系下平面的对称点
LOC_GLOBAL
返回参考坐标系下的点在全局坐标系下的坐标值
LOC_INLINE
将一个参考坐标系下的坐标值转化为另
一参考坐标系下的坐标值并
归一化
LOC_LOC
将一个参考坐标系下的坐标值转化为另一参考坐标系下的坐标值
LOC_LOCAL
返回全局坐标系下的点在参考坐标系下的坐标值
LOC_MIRROR
返回指定点关于指定坐标系下平面的对称点
LOC_ON_AXIS
沿轴线方向平移
LOC_ON_LINE
返回两点连线上与第一点距离为指定值的点
< br>LOC_PERPENDICULAR
返回平面法线上距离指定点单位长度的点<
/p>
LOC_PLANE_MIRROR
返回特定点关于指定平面的对称点
LOC_RELATIVE_TO
返回特定点在指定坐标系下的坐标值
LOC_SPHERICAL
将球面坐标转化为笛卡儿坐标
LOC_X_AXIS
坐标系
x
轴在全局坐标中的单位矢量
LOC_Y_AXIS
坐标系
y
轴在全局坐标中的单位矢量
LOC_Z_AXIS
坐标系
z
轴在全局坐标中的单位矢量
(
2
)方向函数
ORI_ALIGN_AXIS
将坐标系按指定方式旋转至与指定方向对齐所需旋转的角度
<
/p>
ORI_ALONG_AXIS_EUL
将坐标系按指定方式旋转
至与全局坐标系一个轴方向对齐
所
需旋转的角度
ORI_ALL_AXES
将坐标系旋转至由平面上的点定义的特定方向(第一轴与指定
平面上两点连线平行,第二轴与指定平面平行)时所需旋转的
角度
ORI_ALONG_AXIS
将坐标系旋转至其一轴线沿指定轴线方向时所需旋转的角度
ORI_FRAME_MIRROR
返回坐标系旋转镜像到指定坐标系下所需旋转的角度
ORI_GLOBAL
返回参考坐标系在全局坐标系下的角度值
ORI_IN_PLANE
将坐标系旋转至特定方向(与指定两点连线平行、与指定平面
ORI_LOCAL
返回全局坐标系在参考坐标系下的角度值
ORI_MIRROR
返回坐标系旋转镜像到指定坐标系下所需旋转的角度
ORI_ONE_AXIS
将坐标系旋转至其一轴线沿两点连线方向时所需旋转的角度
ORI_ORI
将一个参考坐标系转化为另一参考坐标系所需旋转的角度
ORI_PLANE_MIRROR
返回坐标系旋转生成关于某平面的镜像所需旋转的角度
ORI_RELATIVE_TO
返回全局坐标系下角度值相对指定坐标系的旋转角度
2.3
建模函数
运动学建模函数返回
marker
点
或构件之间位移的度量。
这些函数有些与运行函
数重
名,
但只是计算设计函数在前后关系中的瞬时值
,
只在模型定义时起作用,
而不
在仿真
分
析的时间步中起作用。
(
1
)距离函数
DM
返回两点之间的距离
DX
返回在指定参考坐标系中两点间的
X
坐标值之差
DY
返回在指定参考坐标系中两点间的
Y
坐标值之差
DZ
返回在指定参考坐标系中两点间的
Z
坐标值之差
(
2
)角度函数
AX
返回在指定参考坐标系中两点间关于
X
轴的角度差
AY
返回在指定参考坐标系中两点间关于
Y
轴的角度差
AZ
返回在指定参考坐标系中两点间关于
Z
轴的角度差
(
3
)按
313
顺序的旋转角度
PSI
按照
313
旋转顺序
,
返回指定坐标系相对于参考坐标系的第一旋转角度
THETA
按照
313
旋转顺序
,
返回指定坐标系相对于参考坐标系的第
二旋转角度
PHI
按照
313
旋转系列
,
返回指定坐标系相对于参考坐标系的第三旋转角度
(
4
)按照
3
21
顺序的旋转角度
YAW
按照
321
旋转顺序
,
返回指定坐标系相对于参考坐标系的第一旋转角度
PITCH
按照
321
旋转顺序
,
返回指定坐标系相对于参考坐标系的第
二旋转角度
的相
反数
ROLL
按照
321
旋转顺序
,
返回指定坐标系相对于参考坐标系的第三旋转角度
2.4
矩阵
/
数组函数
矩阵
/
< br>数组函数可很方便地完成针对矩阵
/
数组的操作。
(
1
)矩阵
/
数组的基本操作函数
ALIGN
将数组转换到从特定值开始
ALLM
返回矩阵元素的逻辑值
ANGLES
将方向余弦矩阵转换为指定旋转顺序下的角度矩阵
ATAN(x)
数字表达式
x
的反正切值
ATAN2(x1
,
x2)
两个数字表达式
x1
,
x2
的四象限反正切值
(
3
)取整函数
INT(x)
数字表达式
x
取整
AINT(x)
数字表达式
x
向绝对值小的方向取整
ANINT(x)
数字表达式
x
向绝对值大的方向取整
ANYM
返回矩阵元素的逻辑和
APPEND
将一个矩阵中的行添加到另一矩阵
CENTER
返回数列最大、最小值的中间值
CLIP
返回矩阵的一个子阵
COLS
返回矩阵列数
COMPRESS
压缩数组、删除其中的空值元素
(
零
,
空字符及空格
p>
)
CONVERT ANGLES
将
313
旋转顺序转化为用户自定义的旋转顺序
CROSS
返回两矩阵的向量积
DET
返回方阵
M
的行列式值
DIFF
返回给定数据组的逼近值
DIFFERENTIATE
曲线微分
DMAT
返回对角线方阵
DOT
返回两矩阵的内积
ELEMENT
判断元素是否属于指定数组
EXCLUDE
删除数组中某元素
FIRST
返回数组的第一个元素
FIRST_N
返回数组的前
N
个元素
INCLUDE
向数组中添加元素
INTEGR
返回数据积分的逼近值
INTERATE
拟合样条曲线后再积分
INVERSE
方阵求逆
LAST
返回矩阵最后一个元素
LAST_N
返回矩阵最后
N
个元素
MAX
返回矩阵元素的最大值
MAXI
返回矩阵元素最大值的位置索引
MEAN
返回矩阵元素的平均值
MIN
返回矩阵元素的最小值
MINI
返回矩阵元素最小值的位置索引
NORM2
返回矩阵元素平方和的平方根
NORMALIZE
矩阵归一化处理
RECTANGULAR
返回矩阵所有元素的值
RESAMPLE
按照指定内插算法对曲线重新采样
RESHAPE
按指定行数列数提取矩阵元素生成新矩阵
RMS
计算矩阵元素的均方根值
ROWS
返回矩阵行数
SERIES
按指定初值、增量和数组长度生成数组
SERIES2
按指定初值、终值和增量数生
SIM_TIME
返回仿真时间
SORT
依据一定顺序对数组元素排序
SORT_BY
依据一定的排列位置索引对数组元素排序
SORT_INDEX
依据一定顺序的数组元素排列位置索引
SSQ
返回矩阵元素平方和
STACK
合并相同列数的矩阵成一个新矩阵
STEP
生成阶跃曲线
SUM
矩阵元素求和
TILDE
数组的
TILDE
函数
TMAT
符合指定方向顺序的变换矩阵
TRANSPOSE
求矩阵转置
UNIQUE
删除矩阵中的重复元素
VAL
返回数组中与指定值最接近的元素
VALAT
返回数组中与另一数组指定位置对应处的元素
VALI
返回数组中与指定数值最接近元素的位置索引
(
2
)样条插值
AKIMA_SOLINE
使用
Akima
迭代插值法生成内插样条曲线
CSPLINE
生成
3
次内插样条曲线
CUBIC_SPLINE
生成
3
阶内插多项式曲线