有没有人知道如何在集群中应用abaqus的子程序的

浏览:1061 回答:4

我们学校集群应该是linux系统的,有没有大神有过这方面经验的,我需要应用一个UMAT子程序,自己的PC没法计算

邀请回答 我来回答

全部回答

(3)
默认 最新
蓝牙

你要用集群主要是用它的并行功能,按照并行的方式只要有两种:Thread和 MPI两种,代表共享内存和分布式两种


abaqus的并行计算针对隐式和显式算法是不同:

以显式为例

首先显式算法:

    共享内存的提交方式为:

      abaqus job=job-name cpus=n

       举例,两个核心 作业名为beam

      abaqus job=beam cpus=2

       如果包含用户自定义子程序

      abaqus job=beam user=umat-name cpus=2


    分布式的提交方式为:

       abaqus job=job-name cpus=n parallel=domain domains=m dynamic_load_balancing 

        举例,两个核心 作业名为beam

     abaqus job=beam cpus=2 parallel=domain domains=2

       

     如果包含用户自定义子程序

      abaqus job=beam user=umat-name cpus=2  parallel=domain domains=2


还需要提醒,对于子程序请阅读下面一段文字

Use with user subroutines

      User subroutines can be used when running jobs in parallel. In a distributed run, the entire model is decomposed into separate domains (partitions). Each domain is serviced by a separate MPI process. Abaqus provides well-defined synchronization points at which it is possible to exchange information across all MPI ranks, using the MPI communications facilities. All native MPI calls are supported, in both Fortran and C++. In addition, for cases of hybrid execution, user subroutines and any subroutines called by them must be thread safe. This precludes the use of common blocks, data statements, and save statements. To work around these limitations and for guidelines and techniques


2016年6月6日
评论 1 点赞
奈more
@周游 @袁钎广州地铁 @蓝牙@梵音静思
2016年5月31日
评论 点赞
奈more
你可以在我们的每天10点半红包群里问问专家有没有
2016年5月31日
评论 点赞

没解决?试试专家一对一服务

换一批