第8章View函数及Solver函数.docx
- 文档编号:4062294
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:19
- 大小:81.27KB
第8章View函数及Solver函数.docx
《第8章View函数及Solver函数.docx》由会员分享,可在线阅读,更多相关《第8章View函数及Solver函数.docx(19页珍藏版)》请在冰豆网上搜索。
第8章View函数及Solver函数
第8章ADAMS/View函数及ADAMS/Solver函数
本章主要介绍ADAMS/View提供的各类函数,以及ADAMS/Solver支持的各类函数,并通过实例介绍一些重要函数的具体用法。
通过本章的学习可以深入了解和具体掌握函数的基本使用方法,利用这些函数能够定义更为复杂的结构、更为灵活地应用ADAMS软件进行精确高效的建模与仿真。
8.1ADAMS/View函数及ADAMS/Solver函数的类型及建立
ADAMS/View函数包括设计函数与运行函数两种类型,函数的建立对应有表达式模式和运行模式两种。
表达式模式下在设计过程中对设计函数求值,而运行模式下会在仿真过程中对运行函数进行计算更新。
ADAMS/Solver函数支持ADAMS/View运行模式下的函数,在仿真过程中采用ADAMS/Solver解算时对这些函数进行计算更新。
8.1.1建立表达式模式下的函数
在进行建立表达式、产生和修改需要计算的度量及建立设计函数等操作时,会采用表达式模式。
在建立表达式时,首先在接受表达式的文本框处右击,然后选择“Parameterize”再选择“ExpressionEuilder”,进入建立设计函数表达式对话框。
在该对话框中输入表达式,然后单击“OK”完成操作。
在产生和修改需要计算的度量时,首先在“Build”菜单中选择“Measure”,然后指向“Computed”,再选择“New”或“Modified”确定是新建还是修改,进入产生和修改需要计算的度量对话框。
在该对话框中输入表达式,然后单击“OK”完成操作。
在建立设计函数时,首先在“Build”菜单中选择“Function”,然后选择“New”或“Modified”确定是新建还是修改,进入产生和修改设计函数对话框。
在该对话框中输入表达式,然后单击“OK”完成操作。
8.1.2建立运行模式下的函数
在进行建立运行函数、产生和修改函数型的度量等操作时,会采用运行模式。
在建立运行函数时,首先在接受表达式的文本框处右击,然后选择“FunctionEuilder”,进入建立运行函数表达式对话框。
在该对话框中输入表达式,然后单击“OK”完成操作。
在产生和修改函数型的度量时,首先在“Build”菜单中选择“Measure”,然后指向“Function”,再选择“New”或“Modified”确定是新建还是修改,进入产生和修改函数型的度量对话框。
在该对话框中输入表达式,然后单击“OK”完成操作。
8.2ADAMS/View设计函数
ADAMS/View设计函数在设计过程中模型定义时有效,而不需到仿真过程中仿真分析时再进行计算更新。
设计函数可用来将模型参数化以便进行优化和灵敏度分析。
设计函数包括系统提供的函数和用户自定义函数,这里仅对系统提供的函数做扼要介绍。
8.2.1数学函数
数学函数适用于对标量和矩阵进行数学计算,如果输入变量为标量其返回值就是标量,如果输入变量为矩阵其返回值就是矩阵。
ADAMS/View中系统提供的数学函数大致分类介绍如下。
(1)基本数学函数
ABS(x)数字表达式x的绝对值
DIM(x1,x2)x1>x2时x1与x2之间的差值,x1 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的反余弦值 ATAN(x)数字表达式x的反正切值 ATAN2(x1,x2)两个数字表达式x1,x2的四象限反正切值 (3)取整函数 INT(x)数字表达式x取整 AINT(x)数字表达式x向绝对值小的方向取整 ANINT(x)数字表达式x向绝对值大的方向取整 CEIL(x)数字表达式x向正无穷的方向取整 FLOOR(x)数字表达式x向负无穷的方向取整 NINT(x)最接近数字表达式x的整数值 RTOI(x)返回数字表达式x的整数部分 8.2.2位置/方向函数 位置/方向函数用于根据不同输入变量计算有关位置或方向的参数。 ADAMS/View中系统提供的位置/方向函数分类介绍如下。 (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返回两点连线上与第一点距离为指定值的点 LOC_PERPENDICULAR返回平面法线上距离指定点单位长度的点 LOC_PLANE_MIRROR返回特定点关于指定平面的对称点 LOC_RELATIVE_TO返回特定点在指定坐标系下的坐标值 LOC_SPHERICAL将球面坐标转化为笛卡儿坐标 LOC_X_AXIS坐标系x轴在全局坐标中的单位矢量 LOC_Y_AXIS坐标系y轴在全局坐标中的单位矢量 LOC_Z_AXIS坐标系z轴在全局坐标中的单位矢量 (2)方向函数 ORI_ALIGN_AXIS将坐标系按指定方式旋转至与指定方向对齐所需旋转的角度 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返回全局坐标系下角度值相对指定坐标系的旋转角度 8.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)按照321顺序的旋转角度 YAW按照321旋转顺序,返回指定坐标系相对于参考坐标系的第一旋转角度 PITCH按照321旋转顺序,返回指定坐标系相对于参考坐标系的第二旋转角度的相反数 ROLL按照321旋转顺序,返回指定坐标系相对于参考坐标系的第三旋转角度 8.2.4矩阵/数组函数 矩阵/数组函数可很方便地完成针对矩阵/数组的操作。 (1)矩阵/数组的基本操作函数 ALIGN将数组转换到从特定值开始 ALLM返回矩阵元素的逻辑值 ANGLES将方向余弦矩阵转换为指定旋转顺序下的角度矩阵 ANYM返回矩阵元素的逻辑和 APPEND将一个矩阵中的行添加到另一矩阵 CENTER返回数列最大、最小值的中间值 CLIP返回矩阵的一个子阵 COLS返回矩阵列数 COMPRESS压缩数组、删除其中的空值元素(零,空字符及空格) CONVERTANGLES将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按指定初值、终值和增量数生成数组 SHAPE返回矩阵行数、列数 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阶内插多项式曲线 DETREND返回最小二乘拟合曲线与输入数据的差值 HERMITE_SPLINE使用荷尔米特插值法生成内插样条曲线 LINEAR_SPLINE线性插值生成内插样条曲线 NOTAKNOT_SPLINE生成3次光顺连续插值样条曲线 SPLINE生成插值样条曲线 (3)频域分析 FFTMAG返回快速傅立叶变换后的幅值 FFTPHASE返回快速傅立叶变换后的相位 FILTER返回按指定格式滤波处理后的数据 FREQUENCY返回快速傅立叶变换频率数 HAMMING采用HAMMING窗处理数据 HANNING采用HANNING窗处理数据 WELCH采用WELCH窗处理数据 PSD计算功率谱密度 8.2.5字符串函数 字符串函数允许对字符串进行操作。 STATUS_PRINT将文本字符串返回到状态栏 STR_CASE将字符串按指定方式进行大小写变换 STR_CHR返回ASCII码为指定值的字符 STR_COMPARE返回两字符在字母表上的位置差 STR_DATE按一定格式输出当前时间和日期 STR_DELETE从字符串中一定位置开始删除指定个数的字符 STR_FIND返回字符串在另一字符串中的位置索引 STR_FIND_COUNT返回字符串在另一字符串中出现的次数 STR_FIND_N返回字符串在另一字符串中重复出现指定次数时的位置索引 STR_INSERT将字符串插入到另一字符串的指定位置 STR_IS_SPACE判断字符串是否为空 STR_LENGTH返回字符串长度 STR_MATCH判断字符串中所有字符是否均可以在另一字符串中找到 STR_PRINT将字符串写入aview.log文件 STR_REMOVE_WHITESPACE删除字符串中所有的头尾空格 STR_SPLIT从字符串中出现指定字符处切断字符串 STR_SPRINTF按C语言规则定义的格式得到字符串 STR_SUBSTR在字符串中从指定位置开始截取指定长度的子字符串 STR_TIMESTAMP以缺省格式输出当前时间及日期 STR_XLATE将字符串中所有子串用指定子串代替 8.2.6数据库函数 数据库函数可方便用户访问数据库。 DB_CHANGED标记数据库元素是否被修改 DN_CHILDREN查询对象中符合指定类型的子对象 DB_COUNT查询对象中给定域数值的个数 DB_DEFAULT查询指定类型的缺省对象 DB_DELETE_DEPENDENTS返回与指定对象具有相关性的对象数组 DB_DEPENDENTS返回与指定对象具有相关性且属于指定类型的所有对象 DB_EXIT判断指定字符串表示的对象是否存在 DB_FIELD_FILTER将对象按指定方式过滤 DB_FIELD_TYPE返回在指定对象域中数据类型的字符串 DB_FILTER_NAME名称满足指定过滤参数的对象字符串 DB_FILTER_TYPE数据类型满足指定过滤参数的对象字符串 DB_IMMEDIATE_CHILDREN返回属于指定对象子层的所有对象数组 DB_OBJECT_COUNT返回名称与指定值相同的对象的个数 DB_OF_CLASS判断对象是否属于指定类别 8.2.7GUI函数组 GUI函数组可用来进行图形用户界面的操作。 ALERT返回自定义标题的警告对话框 FILE_ALERT返回自定义文件名的警告对话框 SELECT_FIELD返回按指定对象类型确定的域 SELECT_FILE返回符合指定格式选项的文件名 SELECT_MULTI_TEXT返回多个选定字符串 SELECT_OBJECT返回一个按指定路径、名称和类型确定的对象 SELECT_OBJECTS返回所有按指定路径、名称和类型确定的对象 SELECT_TEXT返回单个选定字符串 SELECT_TYPE返回指定类型对象的列表 TABLE_COLUMN_SELECTED_CELLS返回选定的某单元在表格给定列中所在行的位置 TABLE_GET_CELLS返回在表格指定行列范围内满足指定条件的内容 TABLE_GET_DIMENSION返回指定表格的行数或列数 8.2.8系统函数组 系统函数组提供针对系统的操作。 CHDIR判断是否成功转换到指定目录 EXECUTE_VIEW_COMMAND判断是否成功执行ADAMS/View FILE_EXISTS判断是否存在指定文件 FILE_TEMP_NAME返回一个临时文件名 GETCWD返回当前工作路径 GETENV返回表示环境变量值的字符串 MKDIR判断是否成功创建自定义路径 PUTENV判断是否成功设置环境变量 REMOVE_FILE判断是否成功删除指定文件 RENAME_FILE判断是否成功更改文件名 SYS_INFO返回系统信息 UNIQUE_FILE_NAME返回文件名 8.3ADAMS/View运行函数及ADAMS/Solver函数 ADAMS/View运行函数能够表明定义系统行为的仿真状态间的数学关系。 在ADAMS/View中将这些运行函数与其他不同元素一同创建各种系统变量,这些函数大多数都以施加力和产生运动为目的。 之后在仿真中进行解算时,ADAMS/Solver会用到这些变量函数并进行计算更新,在仿真过程中这些系统状态会发生改变,如随时间的改变而改变、随零件的移动而改变、施加的力以不同方式改变等。 8.3.1位移函数 (1)线位移函数 DX返回位移矢量在坐标系X轴方向的分量 DY返回位移矢量在坐标系Y轴方向的分量 DZ返回位移矢量在坐标系Z轴方向的分量 DM返回位移距离 (2)角位移函数 AX返回一指定标架绕另一标架X轴旋转的角度 AY返回一指定标架绕另一标架Y轴旋转的角度 AZ返回一指定标架绕另一标架Z轴旋转的角度 (3)按313顺序的角位移 PSI按照313旋转顺序,返回指定坐标系相对于参考坐标系的第一旋转角度 THETA按照313旋转顺序,返回指定坐标系相对于参考坐标系的第二旋转角度 PHI按照313旋转系列,返回指定坐标系相对于参考坐标系的第三旋转角度 (4)按照321顺序的角位移 YAW按照321旋转顺序,返回指定坐标系相对于参考坐标系的第一旋转角度 PITCH按照321旋转顺序,返回指定坐标系相对于参考坐标系的第二旋转角度的相反数 ROLL按照321旋转顺序,返回指定坐标系相对于参考坐标系的第三旋转角度 8.3.2速度函数 (1)线速度函数 VX返回两标架相对于指定坐标系的速度矢量差在X轴的分量 VY返回两标架相对于指定坐标系的速度矢量差在Y轴的分量 VZ返回两标架相对于指定坐标系的速度矢量差在Z轴的分量 VM返回两标架相对于指定坐标系的速度矢量差的幅值 VR返回两标架的径向相对速度 (2)角速度函数 WX返回两标架的角速度矢量差在X轴的分量 WY返回两标架的角速度矢量差在Y轴的分量 WZ返回两标架的角速度矢量差在Z轴的分量 WM返回两标架的角速度矢量差的幅值 8.3.3加速度函数 (1)线加速度函数 ACCX返回两标架相对于指定坐标系的加速度矢量差在X轴的分量 ACCY返回两标架相对于指定坐标系的加速度矢量差在Y轴的分量 ACCZ返回两标架相对于指定坐标系的加速度矢量差在Z轴的分量 ACCM返回两标架相对于指定坐标系的加速度矢量差的幅值 (2)角加速度函数 WDTX返回两标架的角加速度矢量差在轴的分量 WDTY返回两标架的角加速度矢量差在Y轴的分量 WDTZ返回两标架的角加速度矢量差在Z轴的分量 WDTM返回两标架的角加速度矢量差的幅值 8.3.4接触函数 IMPACT生成单侧碰撞力 BISTOP生成双侧碰撞力 8.3.5样条差值函数 CUBSPL标准三次样条函数插值 CURVEB样条拟合或用户定义拟合 AKISPL根据Akima拟合方式得到的插值 8.3.6约束力函数 JOINT返回运动副上的连接力或力矩 MOTION返回由于运动约束而产生的力或力矩 PTCV返回点线接触运动副上的力或力矩 CVCV返回线线接触运动副上的力或力矩 JPRIM返回基本约束引起的力或力矩 SFORCE返回单个作用力施加在一个或一对构件上引起的力或力矩 VFORCE返回3个方向组合力施加在一个或一对构件上引起的力或力矩 VTORQ返回3个方向组合力矩施加在一个或一对构件上而引起的力或力矩 GFORCE返回6个方向组合力(力矩)施加在一个或一对构件上而引起的力或力矩 NFORCE返回一个由多点作用力施加在一个或一对构件上而引起的力或力矩 BEAM返回由梁连接施加在一个或一对构件上的力或力矩 BUSH返回由衬套连接施加在一个或一对构件上而引起的力或力矩 FIELD返回一个由场力施加在一个或一对构件上而引起的力或力矩 SPDP返回一个由弹簧阻尼力施加在一个或一对构件上而引起的力或力矩 8.3.7合力函数 FX返回两标架间作用的合力在X轴上的分量 FY返回两标架间作用的合力在Y轴上的分量 FZ返回两标架间作用的合力在Z轴上的分量 FM返回两标架间作用的合力 TX返回两标架间作用的合力矩在X轴上的分量 TY返回两标架间作用的合力矩在Y轴上的分量 TZ返回两标架间作用的合力矩在Z轴上的分量 TM返回两标架间作用的合力矩 8.3.8数学函数 CHEBY计算切比雪夫多项式 FORCOS计算傅立叶余弦级数 FORSIN计算傅立叶正弦级数 HAVSIN定义半正矢阶跃函数 INVPSD依据功率谱密度生成时域信号 MAX计算最大值 MIN计算最小值 POLY计算标准多项式 SHF计算简谐函数 STEP3次多项式逼近阶跃函数 STEP55次多项式逼近阶跃函数 SWEEP返回按指定格式生成的变频正弦函数 还有其他一些常用数学计算的数学函数与ADAMS/View设计函数中的数学函数相同。 8.3.9数据单元 VARVAL返回状态变量的当前值 ARYVAL返回数组中指定元素的值 DIF返回微分方程所定义变量的积分值 DIF1返回微分方程所定义变量的值 PINVAL返回输入信号中指定元素的运
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- View 函数 Solver
![提示](https://static.bdocx.com/images/bang_tan.gif)