From ed480ee1f614f9966bca31ce413608dd684b65f7 Mon Sep 17 00:00:00 2001 From: Michel Juillard <michel.juillard@mjui.fr> Date: Thu, 3 Sep 2015 11:45:28 +0200 Subject: [PATCH] choose LU preconditioner by default --- others/cpp/tests/snes_1.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/others/cpp/tests/snes_1.cc b/others/cpp/tests/snes_1.cc index a3ffb0c0bb..d3880edeb8 100644 --- a/others/cpp/tests/snes_1.cc +++ b/others/cpp/tests/snes_1.cc @@ -55,7 +55,7 @@ int main(int argc, char **argv) user.exogenous = new double[exo_nbr]; user.params = params; user.steady_state = steady_state; - user.periods = 40; + user.periods = 4000; user.first_col = endo_nbr; user.endo_nbr = endo_nbr; user.exo_nbr = exo_nbr; @@ -197,6 +197,12 @@ int main(int argc, char **argv) Set SNES/KSP/KSP/PC runtime options, e.g., -snes_view -snes_monitor -ksp_type <ksp> -pc_type <pc> */ + KSP ksp; + PC pc; + ierr = SNESGetKSP(snes,&ksp);CHKERRQ(ierr); + ierr = KSPGetPC(ksp,&pc);CHKERRQ(ierr); + ierr = PCSetType(pc,PCLU);CHKERRQ(ierr); + // PetscOptionsSetValue("-pc_type","lu"); ierr = SNESSetFromOptions(snes);CHKERRQ(ierr); /* @@ -390,7 +396,7 @@ PetscErrorCode FormJacobian(SNES snes,Vec y,Mat J, Mat B,void *ctx) xsi - starting interior grid index xei - ending interior grid index */ - int row = 0; + int row = ys; if (ys == 0) /* left boundary */ { PetscReal *y1 = new PetscReal[3*user->endo_nbr]; -- GitLab