[MOAB-dev] iMeshP and parallel imesh

tautges at mcs.anl.gov tautges at mcs.anl.gov
Tue Feb 2 10:32:54 CST 2010


Will that exchange ghosts?  I think you also need an option for that,  
look at mbparallelcomm_test (search for GHOST, I think it's  
EXCHANGE_GHOST=dim.bridge, e.g. 3.2 for 3d ghosts connected to bdy  
faces.

- tim


On Feb 2, 2010, at 10:12 AM, Jason Kraftcheck <kraftche at cae.wisc.edu>  
wrote:

> acaceres at mcs.anl.gov wrote:
>> Hi,
>>
>> I'm using iMesh in parallel and trying to see if I can use iMeshP  
>> to get
>> information like whether a local vertex is a ghost or not. I  
>> haven't quite
>> figured out the interface, but it seems like a lot of the iMeshP  
>> calls want
>> an iMeshP_PartitionHandle, so my first attempt was just:
>>
>> call iMesh_newMesh("PARALLEL",iMesh, err)
>> call iMesh_load(%val(iMesh), %val(IMESH_NULL), input_filename,
>> ";P 
>> ARALLEL= 
>> READ_DELETE;PARTITION=PARALLEL_PARTITION;PARTITION_DISTRIBUTE;",
>> err)
>> call iMeshP_getNumPartitions(%val(iMesh), numPartitions, err)
>>
>>
>> (the file I'm reading has a partition defined on it using the
>> "PARALLEL_PARTITION" tag, pre-computed with zoltan). This is with 2
>> processors. I'm getting numPartitions==0. I'm probably completely
>> misunderstanding how iMeshP is supposed to be used, so can somebody  
>> clarify
>> the following:
>>
>> - am I getting the correct behavior? - when I load a mesh using the  
>> first
>> two calls above, how do I find out if
> an entity is a ghost or not?
>>
>
> Note that MOAB's iMeshP implementation is rather incomplete and may  
> not work
> correctly.
>
> You need to do the load through the iMeshP API:
>
> call iMesh_newMesh("",iMesh,err)
> call iMeshP_createPartitionAll(%val(iMesh),%val 
> (MPI_COMM_WORLD),partn,err)
> call iMeshP_loadAll(%val(iMesh),%val(partn),%val(root),input_filename,
>                   ";PARALLEL=READ_DELETE",err)
>
> - jason


More information about the moab-dev mailing list