第490章 你们不会自己改嘛?
像整机气动模拟或者结构模拟这种大活,真正的计算过程肯定是要在超算上面完成。 但是作为输入输出终端的PC上面还是可以看到保存下来的日志文件。 这个年头,很多终端和服务器的连接还是跑batch的FTP,一天只抓取一次数据的那种,而不是实时联动的API。 当然因为服务器端的计算速度本来也比较有限,所以倒也不显得效率很低。 “我们主要在两个方向的研究里面遇到了基本相同的麻烦。” 姚梦娜把两台电脑放在桌子上,稍微理了理散乱开的头发之后开始解释道: “一个就是刚刚说过的,对机体部分进行结构分析的计算结构力学问题。” 她说着在其中一台电脑的键盘上敲击几下,进入了一个账号,并调出一系列的运算结果。 紧接着又转向第二台电脑,进行了类似的cao作: “另一个就是,我们同时也在研究飞机投掷大尺寸吊挂物时候的气流干扰问题。” “在之前的风洞测试中发现,有些弹药,尤其是一些本身升力比较强的巡航弹药,它们和机翼形成的整体被破坏之后,不仅不会马上进行自由落体,反而会向上运动损坏机翼,我们希望能在第七批次的飞机投产之前解决这一隐患。” 早期的苏27由于基本不考虑对地攻击,不需要携带什么大尺寸弹药,而且也没有外挂副油箱,所以无需考虑这类问题。 所以,在同一平台开发多用途飞机的时候,就会产生一些很容易被忽视却又奇奇怪怪的问题。 “我来看看……” 常浩南来到刚刚的第一台电脑前面,弯下腰认真地查看起程序的运行日志来。 跟在后面的何明则非常恰到好处地搬来一张椅子放在常浩南身后。 “常总,您先坐。” 过了几秒钟,意识到什么的他又给姚梦娜搬来了第二张,放在紧挨着常浩南的地方。 “用的是双曲型面结构网格和体结构网格……说起来,你们这建模的水平很高啊,几何造型处理步骤只用了几天时间就结束了?” 几何造型处理,是网格生成过程中的前序步骤。 1997年这会,全世界绝大多数计算流体力学和计算结构力学模拟面临的主要难题,其实是缺乏一个成熟的,从CAD模型到表面结构网格生成的应用工具。 对于现有的网格生成工具来说,对于一些精度稍高一些的模型,往往需要6个月左右,甚至更长时间才能完成整个生成工作。 比如波音747LCF的简化模型都用了4个月时间。 而V22鱼鹰更是花了超过9个月。 并且从后来的角度看,显然还存在设计缺陷。 相比之下,耗时几个星期到一个月的几何造型处理并不算什么大问题,也完全可以接受 但是对于TORCHMultiphysics来说,网格生成过程一般会被缩短到1-2个月,这样一来,几何造型处理的速度就显得有点慢了。 只不过常浩南始终没来得及把精力放到建模那边,一直都是直接用达索的软件包。 “苏霍伊那边的工程师带来的一个新建模软件,叫KOMPAS,我稍微调整了一下TORCHMultiphysics的接口兼容性,让它能直接对接kom格式的工程文件。” “本来只是图个省事,结果发现这套建模方式跟我们软件的适配度非常高,就这么一直用下来了。” 尽管这并不是今天要解决的主要问题,但常浩南还是稍稍留意了一下。 大毛的电子工业水平停滞了将近10年,已经逐渐落后,但要论软件和算法这块,倒并没怎么落下。 虽然由于市场不够大的问题很少出什么爆款,但绝对是有一些奇技yin巧在身上的。 一段小插曲过后,常浩南再次把注意力放在了后面的网格生成日志上面。 “子区域网格块数253……” “网格单元数13300万……确实不少,复杂度很高嘛……” “网格装配……” 看到这最后一步时,他很快发现了不对劲: “吔?” 按照正常的流程,TORCHMultiphysics应该把这253个网格块通过重叠区域内的网格间插值自动“拼装”在一起。 但日志却显示,软件在这个步骤上,卡住了。 准确地说,是在这个拼装步骤之前的数据抓取过程中就卡住了。 “数据太多了?” 这是常浩南第一个想到的可能。 但他设计的网格生成算法逻辑里面,特地针对大模型降低了计算复杂度。 也就是说模型再复杂,无非是计算所用时间无限延长,并不会导致爆内存之类的问题。 总之就是不可能卡在这里。 “你们试过手动装配么?” 常浩南思索片刻之后问道。 “试过,但其它部分都好说,到这个中央升力体的时候,哪怕子区域网格只是出现较小的变动,装配输入文件也要做相应的修改,如果全都手动完成,那大概需要……” 姚梦娜微微抬起头计算了一下: “大概需要手动输入大概6万行代码……” “……” 6万行代码听着不太多,但考虑到TORCHMultiphysics都自动进行不下去,必须手动调参,这里面肯定还涉及到很多计算和转化问题。
而且更麻烦的其实是,作为一个新软件,能够熟练完成这个过程的人也比较少。 总之,显然不是短时间内能完成的。 常浩南之前对软件进行测试的时候,因为时间紧任务重,也不可能用这种上百个子区域,几亿网格单元的模型去测试。 实际上TORCHMultiphysics发布这么长时间以来,就各个用户反映上来的情况看,也没有谁用在了这种体量的模型上。 所以之前才一直没发现问题。 “手动装配也进行不下去的话……” 常浩南眉头微蹙,手指在键盘旁边的电脑外壳上轻轻敲击着。 “有没有考虑过放弃网格节点的结构性限制,考虑在表面变形时,根据物体边界的变化动态调整模型规则?” “……” 一阵沉默。 姚梦娜和何明面面相觑。 从二人的表情来看,甚至没能完全理解常浩南这句话的意思。 “比如说。” 看着眼神清澈的二人,常浩南只好做进一步的解释。 但在身上摸了半天,也没找到纸笔。 了解常浩南习惯的姚梦娜赶紧从包里拿出来,放到常浩南手边。 “比如说,我们可以把计算区域比作一个线性弹性体,通过求解弹性力学方程组确定网格节点的位移……” “代数模型是指网格的位移由动边界位移乘以一个系数得到,该系数在动边界上取1,而在远场边界上取0,内场按一定函数规律插值……” “……” 一番计算和说明之后,常浩南在已经被画满了的纸上画下一个圈: “当然,也不是所有地方都能这样,对于太复杂的部分,就可以将网格单元的各边看作弹簧,弹簧系数与边长有关,当边界运动后,通过求解弹簧系统节点受力平衡问题确定新点位置……” “这样就能在计算过程中调整和控制单元的大小、形状以及网格点的位置,对于网格边界的要求会降低很多。” “……” 又是一阵沉默。 “TORCHMultiphysics里面……还有这个功能?” 过了相当长一段时间,姚梦娜才用有些怀疑人生的语气问道。 她明明亲自参与了这个软件的开发,但刚刚思索了半天,实在没想起来还有这种玩法。 “当然没有。” 常浩南咔哒一声把圆珠笔尖按了回去: “但你们可以自己改一下啊!”