[cig-commits] r17261 - mc/3D/CitcomS/trunk/lib
becker at geodynamics.org
becker at geodynamics.org
Mon Oct 11 23:36:01 PDT 2010
Author: becker
Date: 2010-10-11 23:36:01 -0700 (Mon, 11 Oct 2010)
New Revision: 17261
Modified:
mc/3D/CitcomS/trunk/lib/Anisotropic_viscosity.c
mc/3D/CitcomS/trunk/lib/Drive_solvers.c
mc/3D/CitcomS/trunk/lib/Ggrd_handling.c
mc/3D/CitcomS/trunk/lib/Instructions.c
Log:
More accurate computation of element coordinates in anisotropic part.
Modified: mc/3D/CitcomS/trunk/lib/Anisotropic_viscosity.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Anisotropic_viscosity.c 2010-10-12 00:43:08 UTC (rev 17260)
+++ mc/3D/CitcomS/trunk/lib/Anisotropic_viscosity.c 2010-10-12 06:36:01 UTC (rev 17261)
@@ -253,6 +253,9 @@
if(E->viscosity.allow_anisotropic_viscosity){
if(init_stage){
+ if(E->parallel.me == 0)
+ fprintf(stderr,"set_anisotropic_viscosity: allowing for %s viscosity\n",
+ (E->viscosity.allow_anisotropic_viscosity == 1)?("orthotropic"):("transversely isotropic"));
if(E->viscosity.anisotropic_viscosity_init)
myerror(E,"anisotropic viscosity should not be initialized twice?!");
/* first call */
Modified: mc/3D/CitcomS/trunk/lib/Drive_solvers.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Drive_solvers.c 2010-10-12 00:43:08 UTC (rev 17260)
+++ mc/3D/CitcomS/trunk/lib/Drive_solvers.c 2010-10-12 06:36:01 UTC (rev 17261)
@@ -175,17 +175,18 @@
#ifdef CITCOM_ALLOW_ANISOTROPIC_VISC
/* anisotropic viscosity */
if(E->viscosity.allow_anisotropic_viscosity){
- if((E->monitor.solution_cycles == 0) &&
- E->viscosity.anivisc_start_from_iso) /* first step will be
+ if(E->viscosity.anivisc_start_from_iso) /* first step will be
solved isotropically at
first */
return TRUE;
else
return (E->viscosity.SDEPV || E->viscosity.PDEPV)?(TRUE):(FALSE);
- }
-#else
+ }else{
+#endif
/* regular operation */
return ((E->viscosity.SDEPV || E->viscosity.PDEPV)?(TRUE):(FALSE));
+#ifdef CITCOM_ALLOW_ANISOTROPIC_VISC
+ }
#endif
}
void general_stokes_solver_pseudo_surf(struct All_variables *E)
Modified: mc/3D/CitcomS/trunk/lib/Ggrd_handling.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Ggrd_handling.c 2010-10-12 00:43:08 UTC (rev 17260)
+++ mc/3D/CitcomS/trunk/lib/Ggrd_handling.c 2010-10-12 06:36:01 UTC (rev 17261)
@@ -489,11 +489,11 @@
EVAL FORM FUNCTION???)
*/
xloc[1] = xloc[2] = xloc[3] = 0.0;
- for(inode=1;inode <= 4;inode++){
+ for(inode=1;inode <= ends;inode++){
ind = E->ien[m][el].node[inode];
xloc[1] += E->x[m][1][ind];xloc[2] += E->x[m][2][ind];xloc[3] += E->x[m][3][ind];
}
- xloc[1]/=4.;xloc[2]/=4.;xloc[3]/=4.;
+ xloc[1]/=ends;xloc[2]/=ends;xloc[3]/=ends;
xyz2rtpd(xloc[1],xloc[2],xloc[3],rout);
/*
material
@@ -1450,13 +1450,13 @@
find average coordinates
*/
xloc[1] = xloc[2] = xloc[3] = 0.0;
- for(inode=1;inode <= 4;inode++){
+ for(inode=1;inode <= ends;inode++){
ind = E->ien[m][el].node[inode];
xloc[1] += E->x[m][1][ind];
xloc[2] += E->x[m][2][ind];
xloc[3] += E->x[m][3][ind];
}
- xloc[1]/=4.;xloc[2]/=4.;xloc[3]/=4.;
+ xloc[1]/=ends;xloc[2]/=ends;xloc[3]/=ends;
xyz2rtpd(xloc[1],xloc[2],xloc[3],rout); /* convert to spherical */
/* vis2 */
Modified: mc/3D/CitcomS/trunk/lib/Instructions.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Instructions.c 2010-10-12 00:43:08 UTC (rev 17260)
+++ mc/3D/CitcomS/trunk/lib/Instructions.c 2010-10-12 06:36:01 UTC (rev 17261)
@@ -1085,10 +1085,6 @@
}
}
E->viscosity.anisotropic_viscosity_init = FALSE;
- if(E->parallel.me == 0)
- fprintf(stderr,"allocated for anisotropic viscosity (%s) levmax %i\n",
- (E->viscosity.allow_anisotropic_viscosity == 1)?("orthotropic"):("transversely isotropic"),
- E->mesh.gridmax);
}
#endif
More information about the CIG-COMMITS
mailing list