aboutsummaryrefslogtreecommitdiff
path: root/src/Startup.c
blob: 9537d3901c89860a29e6a81d007590b862b89054 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "cctk.h"
#include "cctk_Parameters.h"

#include "EllBase.h"

static const char *rcsid = "$Header$";

CCTK_FILEVERSION(CactusElliptic_EllPETSc_Startup_c)

void petsc_confmetric(cGH *GH, int *MetricPsiI, int *FieldI, int *MI,
                      int *NI, int *AbsTol, int *RelTol);

void petsc_metric(cGH *GH, int *MetricI, int *FieldI, int *MI,
                  int *NI, int *AbsTol, int *RelTol);

void petsc_flat(cGH *GH, int *FieldIndex, int *MIndex, int *NIndex, 
                int *AbsTol, int *RelTol);

/* Registration of the petsc solvers with the Elliptic solver registry.
   This routine registers petsc_confmetric under the name "petsc" for 
   the class of elliptic equations "LinConfMetric" */
   
void EllPETSc_Register(cGH *GH) 
{
  DECLARE_CCTK_PARAMETERS 
  
  Ell_RegisterSolver(petsc_confmetric,"petsc","Ell_LinConfMetric");
  Ell_RegisterSolver(petsc_metric,"petsc","Ell_LinMetric");
  Ell_RegisterSolver(petsc_flat,"petsc","Ell_LinFlat");
}