天文望远镜集成建模研究 杨德华 南京天文光学技术研究所 30 NOV, 2006 2006年中国虚拟天文台年会 广西师范大学 桂林 中国科学院 南京天文光学技术研究所 天文望远镜集成建模研究 杨德华 南京天文光学技术研究所 30 NOV, 2006 2006年中国虚拟天文台年会 广西师范大学 桂林
内容 概述—名词含义、目的意义、发展历程… 集成建模的基本方法 集成建模的基本工作内容 涉及的有关技术—计算技术,并行技术… 探讨
天文望远镜设计方法 科学目标 技术要求和误差分配 光学系统设计 机械结构设计及分析 自动控制系统设计 观测系统设计 误差分配和技术要求为接口纽带,交流反馈不即时,总体性能难以优化和估价
集成建模—integrated modeling 基于天文望远镜设计中光学系统设计、机械结构设计及分析和自动控制系统设计三大基本模块,建立各自相对独立的计算机模型(一般采用常用软件),并结合传感检测系统和各种环境影响因素的计算机模型,通过编制计算机程序构成一个集成的整体的望远镜模型,经仿真分析得到望远镜各种响应乃至最终成像质量,据此评价望远镜工作性能和优化设计方案。
Motivation & Benefit 在项目执行较早的阶段即可评价望远镜工作性能,直到项目结束 识别影响系统性能的关键因素 从系统层面上来优化和平衡各子系统的设计 从系统层面上来权衡和克服各种干扰因素 寻求更有效的提升望远镜性能的方法,优化设计方案 集成化模型仿真可较真实有效地进行望远镜设计方案整体性能造价评估和方便迅速地进行优化改进。
简史和现况 可追溯到七十年代提出的虚拟望远镜概念 八十年代到九十年代ESO VLT的设计中就指向性能进行了大量研究—简化的集中质量的多自由度的 九十年代中期前后以来开始引入集成化模型仿真技术,北欧提出的50米Euro50方案,美国提出的30米TMT,25米NGST方案,加拿大提出的20米VLOT方案等等 我国尚处于传统设计方法阶段,其实各部分均有实际经验和基础,也拥有和掌握国际上较为通用的相关软件,缺的是集成。
基本方法和流程 采用MATLAB/SIMULINK 软件进行各子模型集成和仿真运行 光学设计软件多采用ZEMAX/Code V 对于含自适应光学AO/主动光学ao拼镜面望远镜,进行波前重建和分解,执行和校正 用有限元分析软件ANSYS/I-Deas… 来建立望远镜整体结构有限元模型,用来分析外界因素如大气、热、风载、重力和地震等对望远镜的干扰作用,并提取望远镜系统的固有频率和振型 转换和建立为状态空间导入SIMULINK 进行控制系统仿真 具有完整性和参数化设置功能 具有图形用户界面(GUI)
功能结构框图
光学模块 两部分 ZEMAX
光机接口 C-结构坐标系 M-光学镜面坐标系 -ZEMAX T-转换矩阵
环境因素模型—wind load 一般用Davenport谱和Simiu谱(风速功率谱)来描述近地面风的运动的模型。用后者: 转换成风压谱:
Wind & Structure in Simulink
涉及的相关技术 计算机编程技术 软件接口技术 计算技术 并行计算技术
计算机编程 MATLAB/Simulink开发 界面规划和开发( MATLAB GUIDE/VC/VF…) 不同软件的二次开发,不同的数据结构和格式,需编程读出 (如ANSYS—UPF-User Programmable Features, PDL-Parametric Design Language) 不同软件的调用运行和通信管理 并行计算: MATLAB并行化—MIT,Interactive Supercomputing Parallel MATLAB survey 构成一个总体软件
软件接口技术 MATLAB和光学软件ZEMAX之间采用windows Dynamic Data Exchange(DDE)技术实现接口,光学系统的参数化定义均可采用MATLAB导入ZEMAX ANSYS二次开发功能很强,具有自己的类Fortran解释语言,并提供高级语言接口和函数。(UPF/PDL/UIDL-User Interface Design Language) 还具有批处理行命令功能。
计算技术 各子模型集成为整体模型后,计算规模急剧增大从实用性角度考虑,计算机能力和计算时间要求进行模型简化 有限元分析中单元划分疏密引起计算规模悬殊,特别是固有频率和振型(刚度矩阵的特征向量和特征值)的提取耗时—选合适的模型和计算方法 采用状态空间描述机械结构系统所需要截取的固有频率和振型的数量涉及到存储空间、仿真精度和计算时间等问题—合适地截取的固有频率和振型,凝聚自由度 自适应光学/主动光学模块波面检测和重建
并行计算技术 Figure 3 shows how the parallelization is implemented for the Euro 50 integrated model. The master node runs the Ordinary Differential Equation (ODE) solver and controls interaction between the subsystems. The master saves results for later post-processing and, if plots of the results are needed during the simulation, the master also does this. At a later moment, “embarrassingly parallel execution” with many similar and simultaneous calculations in parallel, transparent to the application programmer, may be desirable for some of the subsystems. Prototyping and subsystem development, not demanding cluster performance, can be done on a single PC with only minor changes in the master node’s main code. The code for the subsystems is unchanged. A facility is foreseen to allow the user to select single or parallel computation on an ad hoc basis. MATLAB does not include any parallel functionality however there are basic interfaces to the TCP/IP network stack, C and Fortran. By building upon these interfaces there have been of the order of 30 attempts4 to produce ‘toolkits’ to allow MATLAB to be used in a parallel fashion. They have used a variety of techniques and approaches. Communication between the nodes is generally handled in either of two ways, via a shared file system e.g. NFS or a TCP/IP connection. 时频的意义上 Euro50--A Beowulf cluster with 2 masters and 20 nodes, all running Debian Linux---MIT MATLAB toolkits
Q & A… 谢谢!