在abaqus 用python做前后处理的二次开发,很多时候需要用到第三方库。而由于种种原因,安装这些库对很多人来说是一件非常头痛的事。渐进式二次开发的技术能完美解决。
截至abaqus 2019版本,abaqus内置的python环境都是python2版本的。但是python3是趋势,相当多的开源算法、功能都基于python3来开发,并且不一定兼容python2。如果只是简单的导入python脚本来运行,肯定是不行的。让python2和python3和谐的一起使用,渐进式二次开发的技术也能完美解决。
用python做比较复杂的模型,往往会积累下一些不错的算法或代码片段。出于对成果的保护,作者不会直接发布源码,只发布一些对代码功能的介绍。这一方面不利于有需求的人快速的使用到这些稀缺的“脚本”,另一方面这些辛辛苦苦积累下来的代码少了很多用武之地,对于作者和潜在需求者都挺遗憾的。渐进式二次开发的技术很容易就化解了这对矛盾。
那Abaqus python 渐进式二次开发是如何解决这些问题的?简单来说就是:采用网络接口,让函数上云。
你在下图中创建的包,不只是可以放置到本地的对应文件夹,其中的核心功能、关键函数还可以部署到网络上,成为一个通过IP地址就能使用的网络接口。网络接口不仅能用python3来开发,甚至可以用任意一种更适合你开发需求的代码来开发。网络接口的环境和abaqus的python2环境是天然隔离的,安装各种第三方库自然不在话下了。
说到成果保护,作者可以精准对具体某个函数进行访问控制,包括“哪个账号可以访问?”、“可以访问几次?”、“在哪个时间段可以访问?”等等。
而且,这里提到的网络可以是局域网。最小的局域网就是同一台计算机访问自身的不同端口,所以完全可以在你的计算机上配置好网络服务器应用,然后在abaqus的python2环境中访问、交互,实现上述的各种功能。
对于那些饱含作者心血的宝贵函数,完全可以部署到各种云服务器上,在代码“绝对安全”和用户“绝对方便”的前提上让有需要的人能够方便快捷的使用到。
以上,都可以基于Abaqus python 渐进式二次开发的技术来实现。代码的使用方法很大程度决定了代码使用的场景和边界。
所以,希望突破限制复制粘贴“长长”脚本的你,欢迎参加《Abaqus python 渐进式二次开发(二)》直播课,从基础的开发“套路”开始,重新认识Abaqus python二次开发。
报名链接https://www.jishulink.com/live/10820
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删