针对大型通用有限元软件MARC在振型分解反应谱法分析中的不足,采用Fortran编制子程序,对MARC进行了二次开发。以某重力坝溢流坝段和挡水坝段为例,利用MARC子程序接口FORCDT编制相应子程序,将每个节点各阶振型对应的地震力读入MARC中,从而计算出大坝各阶振型地震力作用下的位移和内力,并采用SRSS(平方和开方)的方法求解结构响应。结果表明,该重力坝的安全性满足抗震规范的要求。