← Back to team overview

yade-dev team mailing list archive

[Branch ~yade-pkg/yade/git-trunk] Rev 3379: -add UnsatCellInfo, UnsatVertexInfo

 

------------------------------------------------------------
revno: 3379
committer: Chao Yuan <chaoyuan2012@xxxxxxxxx>
timestamp: Fri 2013-07-26 16:55:13 +0200
message:
  -add UnsatCellInfo, UnsatVertexInfo
modified:
  lib/triangulation/FlowBoundingSphere.cpp
  lib/triangulation/RegularTriangulation.h
  lib/triangulation/Tesselation.h
  lib/triangulation/def_types.h


--
lp:yade
https://code.launchpad.net/~yade-pkg/yade/git-trunk

Your team Yade developers is subscribed to branch lp:yade.
To unsubscribe from this branch go to https://code.launchpad.net/~yade-pkg/yade/git-trunk/+edit-subscription
=== modified file 'lib/triangulation/FlowBoundingSphere.cpp'
--- lib/triangulation/FlowBoundingSphere.cpp	2013-06-26 18:15:55 +0000
+++ lib/triangulation/FlowBoundingSphere.cpp	2013-07-26 14:55:13 +0000
@@ -21,6 +21,8 @@
 #ifdef LINSOLV
 typedef CGT::FlowBoundingSphereLinSolv<FlowBoundingSphere> FlowBoundingSphereLinSolv;
 FlowBoundingSphereLinSolv exls;
+typedef CGT::FlowBoundingSphere<UnsatTesselation> UnsatFlowBoundingSphere;
+UnsatFlowBoundingSphere unex;
 #endif
 
 

=== modified file 'lib/triangulation/RegularTriangulation.h'
--- lib/triangulation/RegularTriangulation.h	2012-01-24 17:14:09 +0000
+++ lib/triangulation/RegularTriangulation.h	2013-07-26 14:55:13 +0000
@@ -48,6 +48,7 @@
 typedef TriangulationTypes<SimpleVertexInfo,SimpleCellInfo>			SimpleTriangulationTypes;
 typedef TriangulationTypes<FlowVertexInfo,FlowCellInfo>				FlowTriangulationTypes;
 typedef TriangulationTypes<PeriodicVertexInfo,PeriodicCellInfo>			PeriFlowTriangulationTypes;
+typedef TriangulationTypes<UnsatVertexInfo,UnsatCellInfo>       			UnsatFlowTriangulationTypes;
 
 } // namespace CGT
 

=== modified file 'lib/triangulation/Tesselation.h'
--- lib/triangulation/Tesselation.h	2012-07-09 12:19:23 +0000
+++ lib/triangulation/Tesselation.h	2013-07-26 14:55:13 +0000
@@ -155,5 +155,5 @@
 typedef CGT::_Tesselation<CGT::SimpleTriangulationTypes>		SimpleTesselation;
 typedef CGT::_Tesselation<CGT::FlowTriangulationTypes>			FlowTesselation;
 typedef CGT::PeriodicTesselation<CGT::_Tesselation<CGT::PeriFlowTriangulationTypes> >	PeriFlowTesselation;
-
+typedef CGT::_Tesselation<CGT::UnsatFlowTriangulationTypes>			UnsatTesselation;
 

=== modified file 'lib/triangulation/def_types.h'
--- lib/triangulation/def_types.h	2013-06-10 17:06:07 +0000
+++ lib/triangulation/def_types.h	2013-07-26 14:55:13 +0000
@@ -88,8 +88,6 @@
 	unsigned int index;
 	int volumeSign;
 	bool Pcondition;
-	bool isWaterReservoir;
-	bool isAirReservoir;
 	Real invVoidV;
 	Real t;
 	int fict;
@@ -109,14 +107,12 @@
 	std::vector<double> RayHydr;
 // 	std::vector<double> flow_rate;
 	std::vector<double> module_permeability;
-	std::vector<double> poreRadius;
 	// Partial surfaces of spheres in the double-tetrahedron linking two voronoi centers. [i][j] is for sphere facet "i" and sphere facetVertices[i][j]. Last component for 1/sum_surfaces in the facet.
 	double solidSurfaces [4][4];
 
 	FlowCellInfo (void)
 	{
 		module_permeability.resize(4, 0);
-		poreRadius.resize(4, 0);
 		cell_force.resize(4);
 		facetSurfaces.resize(4);
 		facetFluidSurfacesRatio.resize(4);
@@ -126,7 +122,7 @@
 		RayHydr.resize(4, 0);
 // 		isInside = false;
 		inv_sum_k=0;
-		isFictious=false; Pcondition = false; isGhost = false; isWaterReservoir = false; isAirReservoir = false;
+		isFictious=false; Pcondition = false; isGhost = false; 
 // 		isInferior = false; isSuperior = false; isLateral = false; isExternal=false;
 		isvisited = false;
 		index=0;
@@ -225,6 +221,28 @@
 };
 
 
+class UnsatCellInfo : public FlowCellInfo {
+  	public:
+	UnsatCellInfo& operator= (const Point &p) { Point::operator= (p); return *this; }
+  	bool isWaterReservoir;
+	bool isAirReservoir;
+	std::vector<double> poreRadius;
+	//pore throat radius for drainage
+	UnsatCellInfo (void)
+	{
+		poreRadius.resize(4, 0);
+		isWaterReservoir = false; isAirReservoir = false;	  
+	}
+};
+
+class UnsatVertexInfo : public FlowVertexInfo {
+//	add later;  
+public:
+	UnsatVertexInfo& operator= (const Vecteur &u) { Vecteur::operator= (u); return *this; }
+	UnsatVertexInfo& operator= (const float &scalar) { s=scalar; return *this; }
+	UnsatVertexInfo& operator= (const unsigned int &id) { i= id; return *this; }
+};
+
 } // namespace CGT
 
 #endif