| dcca6d9d | 03-Dec-2013 |
Jed Brown <jedbrown@mcs.anl.gov> |
PetscMalloc[2-7]: remove type arguments, infer from pointer type
This change can be performed almost entirely by this script:
git grep -l PetscMalloc[2-7] $1 | xargs perl -pi \ -e ' s@PetscMalloc
PetscMalloc[2-7]: remove type arguments, infer from pointer type
This change can be performed almost entirely by this script:
git grep -l PetscMalloc[2-7] $1 | xargs perl -pi \ -e ' s@PetscMalloc2\(([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+)\)@PetscMalloc2($1,$3,$4,$6)@; s@PetscMalloc3\(([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+)\)@PetscMalloc3($1,$3,$4,$6,$7,$9)@; s@PetscMalloc4\(([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+)\)@PetscMalloc4($1,$3,$4,$6,$7,$9,$10,$12)@; s@PetscMalloc5\(([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+)\)@PetscMalloc5($1,$3,$4,$6,$7,$9,$10,$12,$13,$15)@; s@PetscMalloc6\(([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+)\)@PetscMalloc6($1,$3,$4,$6,$7,$9,$10,$12,$13,$15,$16,$18)@; s@PetscMalloc7\(([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+),([^,;()]+)\)@PetscMalloc7($1,$3,$4,$6,$7,$9,$10,$12,$13,$15,$16,$18,$19,$21)@; '
show more ...
|
| 21635b76 | 31-Mar-2013 |
Jed Brown <jed@59A2.org> |
PCFieldSplit: make Schur complement use normal iterative solver by default
Consider the block system
J = [A B; C D]
where S = D - C A_inner^{-1} B. It is common that if an iterative solve is per
PCFieldSplit: make Schur complement use normal iterative solver by default
Consider the block system
J = [A B; C D]
where S = D - C A_inner^{-1} B. It is common that if an iterative solve is performed with S, that A_inner^{-1} uses the same solver configuration as A^{-1}. PCFieldSplit required this until 514bf10dab8e522ec43f5ccc117d5d97e4aaca18, when the option of a distinct A_inner was added. In that commit, the default inner solver for A^{-1} was (likely unintentionally) changed to KSPPREONLY, as a side-effect of calling MatSchurComplementSetKSP() with no modifications.
This patch reinstates the original default, in which A^{-} = A_inner^{-1} is defined by GMRES instead of PREONLY. Note that it is also common to use PREONLY for S, in which case S may not be used directly, and the user is responsible for setting an inexact method for fieldsplit's A^{-1}.
show more ...
|