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