[cig-commits] r14106 - mc/3D/CitcomS/trunk/lib
tan2 at geodynamics.org
tan2 at geodynamics.org
Thu Feb 19 15:46:53 PST 2009
Author: tan2
Date: 2009-02-19 15:46:52 -0800 (Thu, 19 Feb 2009)
New Revision: 14106
Modified:
mc/3D/CitcomS/trunk/lib/Full_tracer_advection.c
mc/3D/CitcomS/trunk/lib/Process_buoyancy.c
mc/3D/CitcomS/trunk/lib/Tracer_setup.c
Log:
Partially back out r11218, since the AVM stuff is redesigned.
Modified: mc/3D/CitcomS/trunk/lib/Full_tracer_advection.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Full_tracer_advection.c 2009-02-19 23:41:16 UTC (rev 14105)
+++ mc/3D/CitcomS/trunk/lib/Full_tracer_advection.c 2009-02-19 23:46:52 UTC (rev 14106)
@@ -169,6 +169,8 @@
E->trace.number_of_extra_quantities = 0;
if (E->trace.nflavors > 0)
E->trace.number_of_extra_quantities += 1;
+ else if (E->trace.itracer_interpolate_fields)
+ E->trace.number_of_extra_quantities += 2;
E->trace.number_of_tracer_quantities =
Modified: mc/3D/CitcomS/trunk/lib/Process_buoyancy.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Process_buoyancy.c 2009-02-19 23:41:16 UTC (rev 14105)
+++ mc/3D/CitcomS/trunk/lib/Process_buoyancy.c 2009-02-19 23:46:52 UTC (rev 14106)
@@ -179,13 +179,10 @@
void post_processing(struct All_variables *E)
{
- void dump_and_get_new_tracers_to_interpolate_fields(struct All_variables *E);
+ if (E->trace.itracer_interpolate_fields && E->control.tracer)
+ output_interpolated_fields(E);
- if (E->trace.itracer_interpolate_fields && E->control.tracer) {
- dump_and_get_new_tracers_to_interpolate_fields(E);
- output_interpolated_fields(E);
- }
- return;
+ return;
}
Modified: mc/3D/CitcomS/trunk/lib/Tracer_setup.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Tracer_setup.c 2009-02-19 23:41:16 UTC (rev 14105)
+++ mc/3D/CitcomS/trunk/lib/Tracer_setup.c 2009-02-19 23:46:52 UTC (rev 14106)
@@ -79,7 +79,6 @@
static void check_sum(struct All_variables *E);
static int isum_tracers(struct All_variables *E);
static void init_tracer_flavors(struct All_variables *E);
-static void free_tracer_arrays(struct All_variables *E, int j);
static void reduce_tracer_arrays(struct All_variables *E);
static void put_away_later(struct All_variables *E, int j, int it);
static void eject_tracer(struct All_variables *E, int j, int it);
@@ -679,8 +678,9 @@
-static void get_new_tracers(struct All_variables *E)
+void initialize_tracers(struct All_variables *E)
{
+
if (E->trace.ic_method==0)
make_tracer_array(E);
else if (E->trace.ic_method==1)
@@ -705,13 +705,7 @@
find_tracers(E);
- return;
-}
-void initialize_tracers(struct All_variables *E)
-{
- get_new_tracers(E);
-
/* count # of tracers of each flavor */
if (E->trace.nflavors > 0)
@@ -721,23 +715,6 @@
}
-void dump_and_get_new_tracers_to_interpolate_fields(struct All_variables *E)
-{
- int j;
-
- for (j=1;j<=E->sphere.caps_per_proc;j++)
- free_tracer_arrays(E, j);
-
- E->trace.number_of_extra_quantities = 2;
- E->trace.number_of_tracer_quantities =
- E->trace.number_of_basic_quantities +
- E->trace.number_of_extra_quantities;
-
- get_new_tracers(E);
- return;
-}
-
-
/************** MAKE TRACER ARRAY ********************************/
/* Here, each processor will generate tracers somewhere */
/* in the sphere - check if its in this cap - then check radial */
@@ -940,7 +917,7 @@
len = read_double_vector(fptracer, ncol, buffer);
if (len != ncol) {
- fprintf(E->trace.fpt,"ERROR(read tracer file) - wrong input file format: %d-th tracer in %s\n", kk, E->trace.tracer_file);
+ fprintf(E->trace.fpt,"ERROR(read tracer file) - wrong input file format: %s\n", E->trace.tracer_file);
fflush(E->trace.fpt);
exit(10);
}
@@ -1490,31 +1467,7 @@
}
-/****** FREE TRACER ARRAYS *****************************************/
-static void free_tracer_arrays(struct All_variables *E, int j)
-{
- int kk;
- if (E->trace.nflavors > 0) {
- for (kk=0;kk<E->trace.nflavors;kk++)
- free(E->trace.ntracer_flavor[j][kk]);
- free(E->trace.ntracer_flavor[j]);
- }
-
- for (kk=0;kk<E->trace.number_of_extra_quantities;kk++)
- free(E->trace.extraq[j][kk]);
-
- for (kk=0;kk<E->trace.number_of_basic_quantities;kk++)
- free(E->trace.basicq[j][kk]);
-
- free(E->trace.ielement[j]);
-
- E->trace.max_ntracers[j] = E->trace.ntracers[j] = 0;
-
- return;
-}
-
-
/****** EXPAND TRACER ARRAYS *****************************************/
void expand_tracer_arrays(struct All_variables *E, int j)
More information about the CIG-COMMITS
mailing list