[cig-commits] r13479 - in long/3D/Gale/trunk: . src/Gale/Utils/src

walter at geodynamics.org walter at geodynamics.org
Tue Dec 9 12:44:00 PST 2008


Author: walter
Date: 2008-12-09 12:43:59 -0800 (Tue, 09 Dec 2008)
New Revision: 13479

Modified:
   long/3D/Gale/trunk/
   long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.c
   long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.h
Log:
 r2399 at dante:  boo | 2008-12-09 12:09:08 -0800
 Add a scale factor for MixedStabiliserTerm



Property changes on: long/3D/Gale/trunk
___________________________________________________________________
Name: svk:merge
   - 3a629746-de10-0410-b17b-fd6ecaaa963e:/cig:2398
   + 3a629746-de10-0410-b17b-fd6ecaaa963e:/cig:2399

Modified: long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.c
===================================================================
--- long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.c	2008-12-09 20:43:56 UTC (rev 13478)
+++ long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.c	2008-12-09 20:43:59 UTC (rev 13479)
@@ -108,6 +108,8 @@
    self->Ni = NULL;
    self->GNx = NULL;
    self->elStiffMat = NULL;
+   self->length=1;
+   self->scale_factor=0;
 }
 
 void _MixedStabiliserTerm_Delete( void* _self ) {
@@ -135,6 +137,10 @@
    self->storeVisc =
      Stg_ComponentFactory_ConstructByKey(cf, self->name, "storeVisc",
                                          StoreVisc, True, data );
+   self->length =
+     Stg_ComponentFactory_GetDouble( cf, self->name, "height", 1.0);
+   self->scale_factor =
+     Stg_ComponentFactory_GetDouble( cf, self->name, "scale_factor", 0.0);
 }
 
 void MixedStabiliserTerm_Build( void* _self, void* data ) {
@@ -271,20 +277,13 @@
       largely hydrostatic */
 
    {
-     double viscosity=1/viscFac;
-     double velocity=1.0e16;
-     double length=1.0e5;
-     double gravity=9.81;
-     double density=3300;
-
-     double *coord, pressure, temp_factor;
+     double *coord, temp_factor;
      unsigned nInc, *inc;
      Mesh_GetIncidence(mesh,nDims,elementIndex,MT_VERTEX,&nInc,&inc);
-     
      coord=Mesh_GetVertex( mesh, inc[0] );
-     pressure=(length-coord[1])*gravity*density;
-     temp_factor=viscosity*velocity/(length*pressure)*1000;
 
+     temp_factor=self->scale_factor/
+       (viscFac*(self->length-coord[1])*self->length);
      if(temp_factor<1  && temp_factor>0)
        viscFac*=temp_factor;
    }

Modified: long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.h
===================================================================
--- long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.h	2008-12-09 20:43:56 UTC (rev 13478)
+++ long/3D/Gale/trunk/src/Gale/Utils/src/MixedStabiliserTerm.h	2008-12-09 20:43:59 UTC (rev 13479)
@@ -48,7 +48,9 @@
    StoreVisc* storeVisc;                 \
    double* Ni;                                  \
    double** GNx;                                \
-   double** elStiffMat;
+   double** elStiffMat; \
+   double scale_factor; \
+   double length;
 
 struct MixedStabiliserTerm { __MixedStabiliserTerm };
 



More information about the CIG-COMMITS mailing list