diff options
author | diener <diener@2a26948c-0e4f-0410-aee8-f1d3e353619c> | 2003-06-03 11:38:10 +0000 |
---|---|---|
committer | diener <diener@2a26948c-0e4f-0410-aee8-f1d3e353619c> | 2003-06-03 11:38:10 +0000 |
commit | 2a08e3557f90854b71565d03c5aa4175e4ff4923 (patch) | |
tree | 02bd6743d7862c43e998eb435c75370fa3eb12c3 | |
parent | 4dbb942521d87557b1cc99da5f87ba5346f5c2d1 (diff) |
Added parameters to choose interpolators and orders. Added support for
a different way of calculating the rhs of the generator evolution equations
and parameters to choose between them.
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/EHFinder/trunk@111 2a26948c-0e4f-0410-aee8-f1d3e353619c
-rw-r--r-- | interface.ccl | 6 | ||||
-rw-r--r-- | param.ccl | 37 | ||||
-rw-r--r-- | schedule.ccl | 21 |
3 files changed, 61 insertions, 3 deletions
diff --git a/interface.ccl b/interface.ccl index ebb03d0..4eae7cc 100644 --- a/interface.ccl +++ b/interface.ccl @@ -182,3 +182,9 @@ CCTK_REAL generators_arrays TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=number_of_generat { alpg, betaxg, betayg, betazg, gxxg, gxyg, gxzg, gyyg, gyzg, gzzg, dfxg, dfyg, dfzg, psig } + +CCTK_REAL generator_gf TYPE=GF TIMELEVELS=1 +{ + xgf, ygf, zgf +} "Temporary grid function used in calculating the right hand side of the generator evolution equation" + @@ -224,6 +224,43 @@ KEYWORD generator_distribution "What initial distribution should be used" { "line" :: "Put the generatos on a line on the x-axis" } "line" + +STRING surface_interpolator "What interpolator should be used to locate the surface" +{ + ".+" :: "A valid interpolator name" +} "Hermite polynomial interpolation" + +CCTK_INT surface_interpolation_order "What order should be used for the surface interpoation" +{ + 1:* :: "A valid positive interpolation order" +} 2 + +STRING area_interpolator "What interpolator should be used for the area" +{ + ".+" :: "A valid interpolator name" +} "Lagrange polynomial interpolation" + +CCTK_INT area_interpolation_order "What order should be used for the area interpoation" +{ + 1:* :: "A valid positive interpolation order" +} 3 + +STRING generator_interpolator "What interpolator should be used for the generators" +{ + ".+" :: "A valid interpolator name" +} "Lagrange polynomial interpolation" + +CCTK_INT generator_interpolation_order "What order should be used for the generator interpoation" +{ + 1:* :: "A valid positive interpolation order" +} 3 + +KEYWORD generator_tracking_method "What method should be used for tracking the generators" +{ + "interpolate_before" :: "Interpolate first, then calculate" + "interpolate_after" :: "Calculate first, then interpolate" +} "interpolate_before" + shares: grid USES KEYWORD domain diff --git a/schedule.ccl b/schedule.ccl index 1839b22..b26c5ab 100644 --- a/schedule.ccl +++ b/schedule.ccl @@ -29,6 +29,11 @@ else } } +if (CCTK_Equals(generator_tracking_method,"interpolate_after")) +{ + STORAGE: generator_gf +} + # Check for metric_state if (!CCTK_EQUALS(mode,"analysis")) @@ -305,10 +310,20 @@ if (CCTK_Equals(mode,"normal")) if ( evolve_generators) { - schedule EHFinder_Generator_Sources in MoL_CalcRHS + if (CCTK_Equals(generator_tracking_method,"interpolate_before")) { - LANG: Fortran - } "Calculate the source terms for the generator evolution" + schedule EHFinder_Generator_Sources in MoL_CalcRHS + { + LANG: Fortran + } "Calculate the source terms for the generator evolution" + } + if (CCTK_Equals(generator_tracking_method,"interpolate_after")) + { + schedule EHFinder_Generator_Sources2 in MoL_CalcRHS after EHFinder_Sources + { + LANG: Fortran + } "Calculate the source terms for the generator evolution" + } } schedule GROUP EHFinder_PostStep in MoL_PostStep |