[cig-commits] r5808 - in long/3D/Gale/trunk/src/StGermain: .
Discretisation/Swarm/src
walter at geodynamics.org
walter at geodynamics.org
Wed Jan 17 16:09:29 PST 2007
Author: walter
Date: 2007-01-17 16:09:28 -0800 (Wed, 17 Jan 2007)
New Revision: 5808
Modified:
long/3D/Gale/trunk/src/StGermain/
long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ElementCellLayout.c
Log:
r3299 at earth (orig r3967): LukeHodkinson | 2007-01-15 21:06:46 -0800
Must recognise particles inside domain elements.
Property changes on: long/3D/Gale/trunk/src/StGermain
___________________________________________________________________
Name: svk:merge
- 1ef209d2-b310-0410-a72d-e20c9eb0015c:/cig:3196
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/branches/decomp3d/StGermain:3966
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/trunk/StGermain:3899
+ 1ef209d2-b310-0410-a72d-e20c9eb0015c:/cig:3196
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/branches/decomp3d/StGermain:3967
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/trunk/StGermain:3899
Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ElementCellLayout.c
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ElementCellLayout.c 2007-01-18 00:09:25 UTC (rev 5807)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/ElementCellLayout.c 2007-01-18 00:09:28 UTC (rev 5808)
@@ -342,43 +342,17 @@
Bool _ElementCellLayout_IsInCell( void* elementCellLayout, Cell_Index cellIndex, void* _particle ) {
ElementCellLayout* self = (ElementCellLayout*)elementCellLayout;
GlobalParticle* particle = (GlobalParticle*)_particle;
-
unsigned elDim, elInd;
- if( Mesh_ElementHasPoint( self->mesh, cellIndex, particle->coord, &elDim, &elInd ) ) {
- if( elInd < Mesh_GetLocalSize( self->mesh, elDim ) )
- return True;
- }
-
- return False;
+ return Mesh_ElementHasPoint( self->mesh, cellIndex, particle->coord, &elDim, &elInd );
}
Cell_Index _ElementCellLayout_CellOf( void* elementCellLayout, void* _particle ) {
ElementCellLayout* self = (ElementCellLayout*)elementCellLayout;
GlobalParticle* particle = (GlobalParticle*)_particle;
- unsigned elDim, elInd;
+ unsigned elInd;
- if( Mesh_Search( self->mesh, particle->coord, &elDim, &elInd ) ) {
- if( elInd >= Mesh_GetLocalSize( self->mesh, elDim ) )
- elInd = Mesh_GetDomainSize( self->mesh, Mesh_GetDimSize( self->mesh ) );
- else if( elDim != Mesh_GetDimSize( self->mesh ) ) {
- unsigned nInc;
- unsigned* inc;
- unsigned inc_i;
-
- Mesh_GetIncidence( self->mesh, elDim, elInd, Mesh_GetDimSize( self->mesh ),
- &nInc, &inc );
- for( inc_i = 0; inc_i < nInc; inc_i++ ) {
- if( inc[inc_i] < Mesh_GetLocalSize( self->mesh, elDim ) ) {
- elInd = inc[0];
- break;
- }
- if( inc_i == nInc )
- elInd = Mesh_GetDomainSize( self->mesh, Mesh_GetDimSize( self->mesh ) );
- }
- }
- }
- else
+ if( !Mesh_SearchElements( self->mesh, particle->coord, &elInd ) )
elInd = Mesh_GetDomainSize( self->mesh, Mesh_GetDimSize( self->mesh ) );
return elInd;
More information about the cig-commits
mailing list