From 5419bc854c4d9eee18ee8b40c21da5fb7543a32c Mon Sep 17 00:00:00 2001 From: lanfer Date: Fri, 29 Oct 1999 08:42:09 +0000 Subject: SOR now registers the types of boundaries it can handle and all necessary variables that need to be set git-svn-id: http://svn.cactuscode.org/arrangements/CactusElliptic/EllSOR/trunk@27 fa3da13c-9f13-4301-a575-cf5b8c5e1907 --- src/Startup.c | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/src/Startup.c b/src/Startup.c index f252a60..4b825cd 100644 --- a/src/Startup.c +++ b/src/Startup.c @@ -17,14 +17,25 @@ void EllSOR_Register(cGH *GH) { void sor_flat(cGH *GH, int MI, int NI, CCTK_REAL *AbsTol, CCTK_REAL *RelTol); DECLARE_CCTK_PARAMETERS - - if (CCTK_Equals(elliptic_verbose,"yes")) - printf("SOR: Registering sor for Ell_LinConfMetric...\n"); + int err,ell_verb; + CCTK_REAL dummy; + + ell_verb = CCTK_Equals(elliptic_verbose,"yes"); + + /* Register the solver withe the elliptic classes */ + /* These "keys" have to be same in other elliptic solver and in + the routines that sets them ! */ Ell_RegisterSolver(sor_confmetric,"sor","Ell_LinConfMetric"); - - if (CCTK_Equals(elliptic_verbose,"yes")) - printf("SOR: Registering sor for Ell_LinFlat...\n"); Ell_RegisterSolver(sor_flat,"sor","Ell_LinFlat"); + /* Register boundary SOR can handle */ + err = Ell_CreateKey(CCTK_VARIABLE_STRING,"EllSOR::Bbd::Robin"); + err = Ell_CreateKey(CCTK_VARIABLE_STRING,"EllSOR::Bnd::Const"); + + /* Register the variables needed to use these boundaries */ + err = Ell_CreateKey(CCTK_VARIABLE_REAL, "EllLinConfMetric::Bnd::Robin::V0"); + err = Ell_CreateKey(CCTK_VARIABLE_REAL, "EllLinConfMetric::Bnd::Robin::V1"); + err = Ell_CreateKey(CCTK_VARIABLE_REAL, "EllLinConfMetric::BND::Const::V0"); + } -- cgit v1.2.3