[cig-commits] r6247 - in long/3D/Gale/trunk/src/PICellerator: . Apps/BuoyancyBenchmark/tests/AnalyticPressure

walter at geodynamics.org walter at geodynamics.org
Tue Mar 13 11:14:07 PDT 2007


Author: walter
Date: 2007-03-13 11:14:07 -0700 (Tue, 13 Mar 2007)
New Revision: 6247

Modified:
   long/3D/Gale/trunk/src/PICellerator/
   long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c
Log:
 r574 at earth (orig r441):  LukeHodkinson | 2007-03-13 00:22:53 -0700
 Updating a new test in PICellerator to use the new
 branch code.
 



Property changes on: long/3D/Gale/trunk/src/PICellerator
___________________________________________________________________
Name: svk:merge
   - 00de75e2-39f1-0310-8538-9683d00a49cc:/branches/decomp3d:440
00de75e2-39f1-0310-8538-9683d00a49cc:/trunk:381
aee11096-cf10-0410-a191-eea5772ba81f:/cig:524
   + 00de75e2-39f1-0310-8538-9683d00a49cc:/branches/decomp3d:441
00de75e2-39f1-0310-8538-9683d00a49cc:/trunk:381
aee11096-cf10-0410-a191-eea5772ba81f:/cig:524

Modified: long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c	2007-03-13 18:14:03 UTC (rev 6246)
+++ long/3D/Gale/trunk/src/PICellerator/Apps/BuoyancyBenchmark/tests/AnalyticPressure/AnalyticPressure.c	2007-03-13 18:14:07 UTC (rev 6247)
@@ -53,6 +53,7 @@
 
 typedef struct {
 	__AnalyticSolution
+	FeVariable*		pressureField;
 	double                  density;
 	double                  gravity;
 	double                  maxY;
@@ -74,14 +75,12 @@
 	
 void _AnalyticPressure_Construct( void* analyticSolution, Stg_ComponentFactory* cf, void* data ) {
 	AnalyticPressure*        self           = (AnalyticPressure*)analyticSolution;
-	FeVariable*              pressureField;
 
 	/* Construct Parent */
 	_AnalyticSolution_Construct( self, cf, data );
 
 	/* Create Analytic Fields */
-	pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True, data ); 
-	AnalyticSolution_CreateAnalyticField( self, pressureField, _AnalyticPressure_PressureFunction );
+	self->pressureField = Stg_ComponentFactory_ConstructByName( cf, "PressureField", FeVariable, True, data ); 
 	
 	self->density  = Stg_ComponentFactory_GetDouble( cf, "layer", "density", 0.0 );
 	self->gravity  = Stg_ComponentFactory_GetRootDictDouble( cf, "gravity", 0 );
@@ -89,6 +88,17 @@
 	self->minY     = Stg_ComponentFactory_GetRootDictDouble( cf, "minY", 0 );
 }
 
+void _AnalyticPressure_Build( void* analyticSolution, void* data ) {
+	AnalyticPressure*	self = (AnalyticPressure*)analyticSolution;
+
+	assert( self && Stg_CheckType( self, AnalyticPressure ) );
+
+	Build( self->pressureField, data, False );
+	AnalyticSolution_CreateAnalyticField( self, self->pressureField, _AnalyticPressure_PressureFunction );
+
+	_AnalyticSolution_Build( self, data );
+}
+
 void* _AnalyticPressure_DefaultNew( Name name ) {
 	return _AnalyticSolution_New(
 			sizeof(AnalyticPressure),
@@ -98,7 +108,7 @@
 			_AnalyticSolution_Copy,
 			_AnalyticPressure_DefaultNew,
 			_AnalyticPressure_Construct,
-			_AnalyticSolution_Build,
+			_AnalyticPressure_Build,
 			_AnalyticSolution_Initialise,
 			_AnalyticSolution_Execute,
 			_AnalyticSolution_Destroy,



More information about the cig-commits mailing list