




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
采用Fortran编程提取系统时间文一猪编程中我们往往需要提取系统时间,从而确定程序或子程序的运行时间。我想在这里上有几个目的,比如说要对程序进行优化,当然你得先优化比较费时的子程序,或者你要直接从实际计算上计算出程序的复杂度,简单说就是计算时间同计算量的函数关系。在这里给出关于采用Fortran95语言编写的提取系统时间程序。Example1是网上帖子里的程序,不过该程序采用的time程序似乎不是Fortran95的标准程序。在Example2给出的是自编的采用模块化编程调用cpu_time程序,使用F95的朋友可以很容易地将该程序嵌入到你们的程序中使用。Mar. 14, 2013例子1:program TimeNow character*8 : now integer : hh,mm,ss call time (now) ! 读系统时间 write(*,*) now ! 写出时间字符串 ! 用字符变量now作为内部文件,从中将时、分、秒作为整数读出 read(now,(I2,1x,I2,1x,I2) hh,mm,ss ! 字符转换为 write(*,*) hh,mm,ss ! 写出时、分、秒的整数值 stopend program TimeNow帖子:/club/showtxt.asp?id=70407/post-70559.html例子2:module get_timepublic display_timecontainssubroutine display_time()implicit nonedoubleprecision nowtimecall cpu_time(nowtime)write(*,(1x,a,1e10.3) Now Time is , nowtimereturnend subroutineend moduleprogram test_get_timeuse get_timeimplicit doubleprecision (a-h, o-z), integer (i-n)call display_time()do i = 1,1000000do j = 1,2000x = dlog(1.1d0)enddoenddocall display_time()stop The end!end program附录1:第 2 章 Fortran 95 内函数本章列出了 f95 编译器可识别的内函数名称。2.1 标准 Fortran 95 的通用内函数本节中介绍的 Fortran 95 通用内函数按其在 Fortran 95 标准中的功能进行分组。所示参数是在采用关键字形式时可以用作参数关键字的名称,如 cmplx(Y=B, KIND=M, X=A) 中所示。有关这些通用内过程的详细说明,请查阅 Fortran 95 标准。2.1.1 参数存在查询函数通用内函数名说明PRESENT 存在参数2.1.2 数值函数通用内函数名说明ABS (A) 绝对值AIMAG (Z) 复数的虚部AINT (A , KIND) 整数截尾ANINT (A , KIND) 最近的整数CEILING (A , KIND) 大于或等于数值的最小整数CMPLX (X , Y, KIND) 转换为复数类型CONJG (Z) 共轭复数DBLE (A) 转换为双精度实数类型DIM (X, Y) 正偏差DPROD (X, Y) 双精度实数乘积FLOOR (A , KIND) 小于或等于数值的最大整数INT (A , KIND) 转换为整数类型MAX (A1, A2 , A3,.) 最大值MIN (A1, A2 , A3,.) 最小值MOD (A, P) 余数函数MODULO (A, P) 模数函数NINT (A , KIND) 最近的整数REAL (A , KIND) 转换为实数类型SIGN (A, B) 符号传输2.1.3 数学函数通用内函数名说明ACOS (X) 反余弦ASIN (X) 反正弦ATAN (X) 反正切ATAN2 (Y, X) 反正切COS (X) 余弦COSH (X) 双曲余弦EXP (X) 指数LOG (X) 自然对数LOG10 (X) 常用对数(10 为基数)SIN (X) 正弦SINH (X) 双曲正弦SQRT (X) 平方根TAN (X) 正切TANH (X) 双曲正切2.1.4 字符函数通用内函数名说明ACHAR (I) 按 ASCII 整理序列排列时给定位置的字符ADJUSTL (STRING) 齐左调整ADJUSTR (STRING) 齐右调整CHAR (I , KIND) 按处理器整理序列排列时给定位置的字符IACHAR (C) 按 ASCII 整理序列排列时字符的位置ICHAR (C) 按处理器整理序列排列时字符的位置INDEX (STRING, SUBSTRING , BACK) 子串的起始位置LEN_TRIM (STRING) 长度不包含结尾的空白字符LGE (STRING_A, STRING_B) 词法上大于或等于LGT (STRING_A, STRING_B) 词法上大于LLE (STRING_A, STRING_B) 词法上小于或等于LLT (STRING_A, STRING_B) 词法上小于REPEAT (STRING, NCOPIES) 重复并置SCAN (STRING, SET , BACK) 扫描字符串以查找集中的某个字符TRIM (STRING) 删除结尾的空白字符VERIFY (STRING, SET , BACK) 检验字符串中的字符集2.1.5 字符查询函数通用内函数名说明LEN (STRING) 字符实体的长度2.1.6 种类函数通用内函数名说明KIND (X) 种类类型参数值SELECTED_INT_KIND (R) 指定范围的整数种类类型参数SELECTED_REAL_KIND (P, R) 指定精度和范围的实数种类类型参数值2.1.7 逻辑函数通用内函数名说明LOGICAL (L , KIND) 在种类类型参数不相同的逻辑类型对象之间转换2.1.8 数值查询函数通用内函数名说明DIGITS (X) 模型的有效数字数EPSILON (X) 与此相比几乎可以忽略的数值HUGE (X) 模型中最大的数值MAXEXPONENT (X) 模型的最大指数MINEXPONENT (X) 模型的最小指数PRECISION (X) 十进制精度RADIX (X) 模型的基数RANGE (X) 十进制指数范围TINY (X) 模型中最小的正数2.1.9 位查询函数通用内函数名说明BIT_SIZE (I) 模型中的位数2.1.10 位操作函数通用内函数名说明BTEST (I, POS) 位测试IAND (I, J) 逻辑 ANDIBCLR (I, POS) 清除位IBITS (I, POS, LEN) 提取位IBSET (I, POS) 设置位IEOR (I, J) 互斥 ORIOR (I, J) 包容 ORISHFT (I, SHIFT) 逻辑移位ISHFTC (I, SHIFT , SIZE) 循环移位NOT (I) 逻辑补充2.1.11 传送函数通用内函数名说明TRANSFER (SOURCE, MOLD , SIZE) 处理第一个参数,就好象它与第二个参数属于同一种类型2.1.12 浮点处理函数通用内函数名说明EXPONENT (X) 型号的指数部分FRACTION (X) 数值的小数部分NEAREST (X, S) 指定的方向最近的不同处理器RRSPACING (X) 接近指定数值的型号相对间隔的倒数SCALE (X, I) 实数乘以基数得出整数幂SET_EXPONENT (X, I) 设置数值的指数部分SPACING (X) 接近指定数值的型号的绝对间隔2.1.13 向量和矩阵乘法函数通用内函数名说明DOT_PRODUCT (VECTOR_A, VECTOR_B) 两个一级数组的点乘积MATMUL (MATRIX_A, MATRIX_B) 矩阵乘法2.1.14 约简数组函数通用内函数名说明ALL (MASK , DIM) 如果所有的值为 True 则为 TrueANY (MASK , DIM) 如果任意值为 True 则为 TrueCOUNT (MASK , DIM) 数组中 True 元素数MAXVAL (ARRAY, DIM , MASK) 或 MAXVAL (ARRAY , MASK) 数组中的最大值MINVAL (ARRAY, DIM , MASK) 或 MINVAL (ARRAY , MASK) 数组中的最小值PRODUCT (ARRAY, DIM , MASK) 或 PRODUCT (ARRAY , MASK) 数组元素的乘积SUM (ARRAY, DIM , MASK) 或 SUM (ARRAY , MASK) 数组元素的求和2.1.15 数组查询函数通用内函数名说明ALLOCATED (ARRAY) 数组分配状态LBOUND (ARRAY , DIM) 数组的维数下界SHAPE (SOURCE) 数组或标量的形式SIZE (ARRAY , DIM) 数组中的元素总数UBOUND (ARRAY , DIM) 数组的维数上界2.1.16 数组构造函数通用内函数名说明MERGE (TSOURCE, FSOURCE, MASK) 在屏蔽下合并PACK (ARRAY, MASK , VECTOR) 在屏蔽下将数组压缩为一级数组SPREAD (SOURCE, DIM, NCOPIES) 增加维数以复制数组UNPACK (VECTOR, MASK, FIELD) 在屏蔽下将一级数组解压缩为数组2.1.17 数组整形函数通用内函数名说明RESHAPE (SOURCE, SHAPE, PAD, ORDER) 数组整形2.1.18 数组处理函数通用内函数名说明CSHIFT (ARRAY, SHIFT , DIM) 循环移位EOSHIFT (ARRAY, SHIFT , BOUNDARY, DIM 结束移位TRANSPOSE (MATRIX) 调换两级数组2.1.19 数组位置函数通用内函数名说明MAXLOC (ARRAY, DIM , MASK) 或 MAXLOC (ARRAY , MASK) 数组中最大值的位置MINLOC (ARRAY, DIM , MASK) 或 MINLOC (ARRAY , MASK) 数组中最小值的位置2.1.20 指针关联状态函数通用内函数名说明ASSOCIATED (POINTER , TARGET) 关联状态查询或比较NULL (MOLD) 返回分离的指针2.1.21 系统环境调节过程通用内函数名说明COMMAND_ARGUMENT_COUNT () 返回命令参数的数目GET_COMMAND (COMMAND, LENGTH, STATUS) 返回调用程序的整个命令GET_COMMAND_ARGUMENT (NUMBER , VALUE, LENGTH, STATUS)返回一个命令参数GET_ENVIRONMENT_VARIABLE (NAME , VALUE, LENGTH, STATUS, TRIM_NAME)获得环境变量的值。2.1.22 内子例程通用内函数名说明CPU_TIME (TIME) 获取处理器的时间DATE_AND_TIME (DATE, TIME, ZONE, VALUES) 获取日期和时间MVBITS (FROM, FROMPOS, LEN, TO, TOPOS) 将位从一个整数复制到另一个整数RANDOM_NUMBER (HARVEST) 返回伪随机数值RANDOM_SEED (SIZE, PUT, GET) 初始化或重新启动伪随机数据产生器SYSTEM_CLOCK (COUNT, COUNT_RATE, COUNT_MAX) 从系统时钟中获取数据2.1.23 内函数的专用名称表 21 Fortran 95 内函数的专用名称和通用名称 专用名称通用名称参数类型ABS (A) ABS (A) 缺省实数ACOS (X) ACOS (X) 缺省实数AIMAG (Z) AIMAG (Z) 缺省复数AINT (A) AINT (A) 缺省实数ALOG (X) LOG (X) 缺省实数ALOG10 (X) LOG10 (X) 缺省实数#AMAX0 (A1, A2 , A3,.) REAL (MAX (A1, A2 , A3,.) 缺省整数#AMAX1 (A1, A2 , A3,.) MAX (A1, A2 , A3,.) 缺省实数#AMIN0 (A1, A2 , A3,.) REAL (MIN (A1, A2 , A3,.) 缺省整数#AMIN1 (A1, A2 , A3,.) MIN (A1, A2 , A3,.) 缺省实数AMOD (A, P) MOD (A, P) 缺省实数ANINT (A) ANINT (A) 缺省实数ASIN (X) ASIN (X) 缺省实数ATAN (X) ATAN (X) 缺省实数ATAN2 (Y, X) ATAN2 (Y, X) 缺省实数CABS (A) ABS (A) 缺省复数CCOS (X) COS (X) 缺省复数CEXP (X) EXP (X) 缺省复数#CHAR (I) CHAR (I) 缺省整数CLOG (X) LOG (X) 缺省复数CONJG (Z) CONJG (Z) 缺省复数COS (X) COS (X) 缺省实数COSH (X) COSH (X) 缺省实数CSIN (X) SIN (X) 缺省复数CSQRT (X) SQRT (X) 缺省复数DABS (A) ABS (A) 双精度DACOS (X) ACOS (X) 双精度DASIN (X) ASIN (X) 双精度DATAN (X) ATAN (X) 双精度DATAN2 (Y, X) ATAN2 (Y, X) 双精度DCOS (X) COS (X) 双精度DCOSH (X) COSH (X) 双精度DDIM (X, Y) DIM (X, Y) 双精度DEXP (X) EXP (X) 双精度DIM (X, Y) DIM (X, Y) 缺省实数DINT (A) AINT (A) 双精度DLOG (X) LOG (X) 双精度DLOG10 (X) LOG10 (X) 双精度#DMAX1 (A1, A2 , A3,.) MAX (A1, A2 , A3,.) 双精度#DMIN1 (A1, A2 , A3,.) MIN (A1, A2 , A3,.) 双精度DMOD (A, P) MOD (A, P) 双精度DNINT (A) ANINT (A) 双精度DPROD (X, Y) DPROD (X, Y) 缺省实数DSIGN (A, B) SIGN (A, B) 双精度DSIN (X) SIN (X) 双精度DSINH (X) SINH (X) 双精度DSQRT (X) SQRT (X) 双精度DTAN (X) TAN (X) 双精度DTANH (X) TANH (X) 双精度EXP (X) EXP (X) 缺省实数#FLOAT (A) REAL (A) 缺省整数IABS (A) ABS (A) 缺省整数#ICHAR (C) ICHAR (C) 缺省字符IDIM (X, Y) DIM (X, Y) 缺省整数#IDINT (A) INT (A) 双精度IDNINT (A) NINT (A) 双精度#IFIX (A) INT (A) 缺省实数INDEX (STRING, SUBSTRING) INDEX (STRING, SUBSTRING) 缺省字符#INT (A) INT (A) 缺省实数ISIGN (A, B) SIGN (A, B) 缺省整数LEN (STRING) LEN (STRING) 缺省字符#LGE (STRING_A, STRING_B) LGE (STRING_A, STRING_B) 缺省字符#LGT (STRING_A, STRING_B) LGT (STRING_A, STRING_B) 缺省字符#LLE (STRING_A, STRING_B) LLE (STRING_A, STRING_B) 缺省字符#LLT (STRING_A, STRING_B) LLT (STRING_A, STRING_B) 缺省字符#MAX0 (A1, A2 , A3,.) MAX (A1, A2 , A3,.) 缺省整数#MAX1 (A1, A2 , A3,.) INT (MAX (A1, A2 , A3,.) 缺省实数#MIN0 (A1, A2 , A3,.) MIN (A1, A2 , A3,.) 缺省整数#MIN1 (A1, A2 , A3,.) INT (MIN (A1, A2 , A3,.) 缺省实数MOD (A, P) MOD (A, P) 缺省整数NINT (A) NINT (A) 缺省实数#REAL (A) REAL (A) 缺省整数SIGN (A, B) SIGN (A, B) 缺省实数SIN (X) SIN (X) 缺省实数SINH (X) SINH (X) 缺省实数#SNGL (A) REAL (A) 双精度SQRT (X) SQRT (X) 缺省实数TAN (X) TAN (X) 缺省实数TANH (X) TANH (X) 缺省实数标有 # 号的函数不能用作实际参数。“双精度”表示双精度实数。2.2 Fortran 2003 Module RoutinesFortran 2003 标准提供了一组内模块,它们定义了支持 IEEE 算术以及与 C 语言的互操作性所需的功能。2.2.1 IEEE 算术和异常模块Fortran 2003 标准内模块 IEEE_EXCEPTIONS、IEEE_ARITHMETIC 和 IEEE_FEATURES 支持采用建议的语言标准的新功能,从而支持 IEEE 算术和 IEEE 异常处理。草案标准定义了一组查询函数、基本函数、种类函数、基本子例程和非基本子例程。后面的表中列出了这些函数和子例程。要访问这些函数和子例程,调用例程必须包括USE, INTRINSIC : IEEE_ARITHMETIC, IEEE_EXCEPTIONS有关详细信息,请参见 Fortran 标准 ()。 查询函数模块 IEEE_EXCEPTIONS 包含下列查询函数。功能说明IEEE_SUPPORT_FLAG(FLAG,X) 查询处理器是否支持异常。IEEE_SUPPORT_HALTING(FLAG) 查询处理器是否支持在出现异常后控制停止异常。模块 IEEE_ARITHMETIC 包含下列查询函数。功能说明IEEE_SUPPORT_DATATYPE(X) 查询处理器是否支持 IEEE 算术。IEEE_SUPPORT_DENORMAL(X) 查询处理器是否支持非规范化的数值。IEEE_SUPPORT_DIVIDE(X) 查询处理器是否支持按 IEEE 标准规定的精度进行除法运算。IEEE_SUPPORT_INF(X) 查询处理器是否支持 IEEE 无穷大。IEEE_SUPPORT_IO(X) 查询处理器是否支持在格式化输入/输出期间进行 IEEE 基本转换舍入。IEEE_SUPPORT_NAN(X) 查询处理器是否支持 IEEE 非数值。IEEE_SUPPORT_ROUNDING(VAL,X) 查询处理器是否支持特定的舍入模式。IEEE_SUPPORT_SQRT(X) 查询处理器是否支持 IEEE 平方根。IEEE_SUPPORT_STANDARD(X) 查询处理器是否支持所有的 IEEE 功能。 基本函数模块 IEEE_ARITHMETIC 包含参数为实数且满足特定条件(即下表中实数参数 X 和 Y 满足 IEEE_SUPPORT_DATATYPE(X) 和 IEEE_SUPPORT_DATATYPE(Y) 为 true)的下列基本函数。功能说明IEEE_CLASS(X) IEEE 类IEEE_COPY_SIGN(X,Y) IEEE 复制符号函数IEEE_IS_FINITE(X) 确定值是否为有限值。IEEE_IS_NAN(X) 确定值是否为 IEEE 非数值。IEEE_IS_NORMAL(X) 确定值是否正常。IEEE_IS_NEGATIVE(X) 确定值是否为负数。IEEE_LOGB(X) 采用 IEEE 浮点格式的无偏指数。IEEE_NEXT_AFTER(X,Y) 返回趋向 Y 的下一个可表示的 X 邻数。IEEE_REM(X,Y) IEEE REM 余数函数 X - Y*N,其中 N 是最接近 X/Y 精确值的整数。IEEE_RINT(X) 根据当前的舍入模式舍入为整数值。IEEE_SCALB(X,I) 返回 X*2*I IEEE_UNORDERED(X,Y) IEEE 无序函数。如果 X 或 Y 为 NaN,则为 true,否则为 false。IEEE_VALUE(X,CLASS) 生成 IEEE 值。 种类函数模块 IEEE_ARITHMETIC 包含以下转换函数:功能说明IEEE_SELECTED_REAL_KIND(P,R) 具有指定精度和范围的 IEEE 实数的种类类型参数值。 基本子例程模块 IEEE_EXCEPTIONS 包含下列基本子例程。子例程说明IEEE_GET_FLAG(FLAG,FLAG_VALUE) 获取异常标志。IEEE_GET_HALTING_MODE(FLAG,HALTING) 获取异常的停止模式。 非基本子例程模块 IEEE_EXCEPTIONS 包含下列非基本子例程。子例程说明IEEE_GET_STATUS(STATUS_VALUE) 获取浮点环境的当前状态。IEEE_SET_FLAG(FLAG,FLAG_VALUE) 设置异常标志。IEEE_SET_HALTING_MODE(FLAG,HALTING) 控制异常持续或停止。IEEE_SET_STATUS(STATUS_VALUE) 恢复浮点环境的状态。模块 IEEE_ARITHMETIC 包含下列非基本子例程。子例程说明IEEE_GET_ROUNDING_MODE(ROUND_VAL) 获取当前的 IEEE 舍入模式。IEEE_SET_ROUNDING_MODE(ROUND_VAL) 设置当前的 IEEE 舍入模式。2.2.2 C 绑定模块Fortran 2003 标准提供了一种引用 C 语言过程的方式。ISO_C_BINDING 模块按内模块函数形式定义了三个支持过程。访问这些函数需要在调用例程中使用 USE, INTRINSIC : ISO_C_BINDING, ONLY: C_LOC, C_PTR, C_ASSOCIATED。该模块中定义的过程如下功能说明C_LOC(X) 返回参数的 C 地址C_ASSOCIATED(C_PTR_1 , C_PTR_2) 表示 C_PTR_1 的关联状态,或者表示 C_PTR_1 和 C_PTR_2 是否与同一个实体关联。C_F_POINTER(CPTR, FPTR , SHAPE) 将指针与 C 指针的目标关联并指定其形式。有关 ISO_C_BINDING 内模块的详细信息,请参见 上的 Fortran 2003 标准的第 15 章。2.3 非标准 Fortran 95 内函数下列函数在 f95 编译器中视为内函数,但它们不属于 Fortran 95 标准。2.3.1 基本线性代数函数 (BLAS)在使用 -xknown_lib=blas 进行编译时,编译器会将对下列例程的调用识别为内函数,并对其进行优化,然后将其链接到 Sun Performance Library 实现。编译器会忽略用户提供的这些例程版本。表 22 BLAS 内函数 功能说明CAXPY DAXPY SAXPY ZAXPY 标量和向量的乘积并加上向量CCOPY DCOPY SCOPY ZCOPY 复制向量CDOTC CDOTU DDOT SDOT ZDOTC ZDOTU 点乘积(内部乘积)CSCAL DSCAL SSCAL ZSCAL 按比例缩放向量有关这些例程的更多信息,请参见Sun 性能库用户指南。2.3.2 区间运算内函数下表列出了在针对区间运算进行编译 (-xia) 时编译器可识别的内函数。有关详细信息,请参见Fortran 95 Interval Arithmetic 编程参考。DINTERVAL DIVIX INF INTERVAL ISEMPTY MAG MID MIG NDIGITS QINTERVAL SINTERVAL SUP VDABS VDACOS VDASIN VDATAN VDATAN2 VDCEILING VDCOS VDCOSH VDEXP VDFLOOR VDINF VDINT VDISEMPTY VDLOG VDLOG10 VDMAG VDMID VDMIG VDMOD VDNINT VDSIGN VDSIN VDSINH VDSQRT VDSUP VDTAN VDTANH VDWID VQABS VQCEILING VQFLOOR VQINF VQINT VQISEMPTY VQMAG VQMID VQMIG VQNINT VQSUP VQWID VSABS VSACOS VSASIN VSATAN VSATAN2 VSCEILING VSCOS VSCOSH VSEXP VSFLOOR VSINF VSINT VSISEMPTY VSLOG VSLOG10 VSMAG VSMID VSMIG VSMOD VSNINT VSSIGN VSSIN VSSINH VSSQRT VSSUP VSTAN VSTANH VSWID WID 2.3.3 其他供应商的内函数f95 编译器可识别许多由其他供应商(包括 Cray Research, Inc.)的 Fortran 编译器定义的传统内函数。这些内函数现已过时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025设备采购合同
- 2025关于合资企业的合作协议
- 物权法学试题及答案
- 2025年基孔肯雅热知识测试试卷题库及答案
- 2025年广西壮族自治区合同范本
- 2025年统编版五升六语文暑假专项提升:扩句与缩句(有答案)
- 2025餐饮后厨租赁合同模板
- 2025年卫星数据采集系统项目建议书
- 2025年氯金酸项目合作计划书
- 2025年工业互联网平台漏洞扫描技术安全漏洞检测与预警系统研究
- 河南科学技术出版社六年级劳动与技术上册教案(全套)
- 部编道德与法治四年级上册教材分析解读
- 西宁金鑫气体有限公司湿法工艺生产溶解乙炔气项目环评报告
- 广东省工商局授权委托书格式
- 高中音乐-保卫黄河(钢琴协奏曲《黄河》第四乐章)教学课件设计
- 深圳大学 答辩3
- 2023年湖南高速铁路职业技术学院单招职业适应性测试题库及答案解析
- 高一英语练字字帖
- 学校食堂教师就餐付费记录表
- 第一章工程材料(机械制造基础)
- GB/T 40073-2021潜水器金属耐压壳外压强度试验方法
评论
0/150
提交评论