[petsc-dev] ugliness due to missing lapack routines

Barry Smith bsmith at mcs.anl.gov
Thu Feb 7 17:10:12 CST 2013


On Feb 7, 2013, at 4:31 PM, Matthew Knepley <knepley at gmail.com> wrote:

> 
> 
> I think we have all the facts on the high level discussion. Concrete proposals to be voted on:
> 
>   1) Get rid of all function-like CPP things

    Right now we can get rid of any CPP macro functions that can be trivially converted to C functions. The ones we cannot get rid of are ones that take "types" or block sizes as arguments. (these are used as code generation macros; generating a chunk of C code for each type). 
> 
>   2) Get rid of (Matt says) innocuous CPP things, like CHKERRQ

   We don't need to get rid of them. These can all be swept out by one massive automated regular expression sed type operation when the time is right. In fact I should just write that now for experimentation purposes.

> 
>   3) Generate full functions for missing LAPACK stuff, which will probably necessitate changing petscblaslapack.h

    I don't see that this should require any change to petscblaslapack.h (though we may want to change petscblaslapack.h at some point for other reasons)

4) 
#undef __FUNC__
#define __FUNC__

   Can all be swept out automatically at the right time.

5)
#define KSPGMRES "gmres"

?

6) 
#if defined(PETSC_HAVE_SOMEINCLUDE)
#include <someinclude.h>

   I was thinking we could auto generate empty someinclude.h for these (putting in $PETSC_ARCH/include) Cheesy but ?

7) Some other uses of CPP

  Barry

> 
>     Matt
> 
> -- 
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener




More information about the petsc-dev mailing list