dyn1d/abort_gcm.F

路径

LMDZ.MARS\libf\phymars\dyn1d\abort_gcm.F

文件定位

dyn1d/abort_gcm.F 在当前源码树中不是独立实现,而是一行相对路径:

../../../../LMDZ.COMMON/libf/dyn3d/abort_gcm.F

它把 1D testphys 编译路径中的 abort_gcm 符号解析到 LMDZ.COMMON/libf/dyn3d/abort_gcm.F 的公共中止例程。

定义的符号

符号 类型 行号 作用
abort_gcm.F path stub 1 指向 LMDZ.COMMON/libf/dyn3d/abort_gcm.F
abort_gcm subroutine common target line 6 打印调用模块、原因和严重级别,关闭 XIOS/IOIPSL 相关输出,并停止程序。

公共实现摘要

目标文件 LMDZ.COMMON\libf\dyn3d\abort_gcm.F 定义 abort_gcm(modname, message, ierr)

输入 类型 含义
modname character 调用方名称。
message character 中止原因。
ierr integer 严重级别;0 表示正常停止,非零表示错误停止。

公共实现会按编译宏关闭可选 XIOS/IOIPSL 输出,调用 getin_dump,向 lunout 写入中止位置和原因,最后 ierr==0stop,否则 stop 1

dyn1d 调用关系

调用方 行号 调用 作用
init_testphys1d_mod.F90 246 call abort_gcm('infotrac_init','Un traceur est orphelin',1) infotrac_init 路径发现孤儿 tracer 时中止。

同一 dyn1d 初始化文件还在 280 行调用 abort_physic(...);该符号不是本文件定义的 abort_gcm,需要在对应文件页中继续追踪。

输入输出和副作用

项目 说明
文件 I/O dyn1d stub 本身无 I/O;公共实现按编译宏关闭 XIOS、IOIPSL 历史和 restart 文件。
全局状态 依赖 iniprint.h 中的 lunout
配置输出 调用 getin_dump,用于记录已读取的配置键。
程序控制 最终执行 stopstop 1,不会返回调用方。

复现要点

待确认

相关页面