Flow123d  JS_before_hm-1621-g63a12c7
schur.cc File Reference

Assembly explicit Schur complement for the given linear system. Provides method for resolution of the full original vector of unknowns. More...

#include <petscvec.h>
#include <algorithm>
#include <limits>
#include <petscmat.h>
#include <armadillo>
#include <petscis.h>
#include "system/sys_profiler.hh"
#include "la/distribution.hh"
#include "la/local_to_global_map.hh"
#include "system/system.hh"
#include "la/linsys.hh"
#include "la/schur.hh"

Go to the source code of this file.

Detailed Description

Assembly explicit Schur complement for the given linear system. Provides method for resolution of the full original vector of unknowns.

 * Copyright (C) 2015 Technical University of Liberec. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation. (http://www.gnu.org/licenses/gpl-3.0.en.html)

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Aim: Explicit schur should be faster then implicit, i.e.

Todo:
  • vyresit navaznost na lin sys - solve a export seq vektoru, redukce ... ?
  • inv_a - predava se pri konstrukci, ale neumoznuje jeji reuse - aktualizaci assemblace resp. nutno si na ni drzet ukazatel venku ... reseni ?
  • ? remove old_4_new - just for LSView
  • automatic preallocation
  • eliminated block given by IS
  • in place Schur
  • ? nemodifikovat puvodni system, leda skrze jeho metody

Definition in file schur.cc.