[petsc-dev] (no subject)

Matthew Knepley knepley at gmail.com
Sat Feb 16 05:53:49 CST 2013


On Fri, Feb 15, 2013 at 10:02 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:

>
> On Feb 15, 2013, at 8:56 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
>
> > On Fri, Feb 15, 2013 at 8:33 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> >
> >  We should probably have a petscconf.h and a
> petsc-private/petscconfimpl.h
> >
> > What would that do?
>
>    Now everything that is figured out is visible in user code. Yes it is
> name spaced but 80+% of it is likely never relevant for user code and if
> the rule is don't expose stuff that is not relevant it does violate that :-)
> >
> > I think splitting petscsys.h (plus transitive includes) may be the best
> value. petscsys.h itself has a lot of comments (man pages for each numbered
> PetscMallocN, ...), but so many of its functions are needed by every caller
> that it may not provide much value to split it. Of course variadic macros
> would drastically consolidate that (and the error handling).
> >
> > Splitting petscconf.h by package or something would be cool because when
> reconfigure runs, any changes to petscconf.h usually don't affect anything,
> but I think trying to do that would be a maintenance disaster.
>
>    Might not be too bad actually. If the Package class itself just handled
> it as a matter of course, declaring Info with a package (and when called
> from within a package) would automatically to into its own list and then
> its own file.


The file that it outputs into is set by the object, so all you need to do
is reset the header filename in the
constructor for Package.

   Matt


>
>    Barry
>
> >
> >
> > wc -l include/*.h include/petsc-private/*.h arch-gnu/include/petscconf.h
> | sort
> >     102 include/petsccharacteristic.h
> >      113 include/petscbt.h
> >      114 include/petsc-private/petscaxpy.h
> >      122 include/petscblaslapack.h
> >      124 include/petsc-private/logimpl.h
> >      131 include/petsc-private/petscfptimpl.h
> >      140 include/petscctable.h
> >      176 include/petsctime.h
> >      181 include/petsc-private/threadcommimpl.h
> >      182 include/petscblaslapack_c.h
> >      182 include/petscblaslapack_caps.h
> >      185 include/petscdmplex.h
> >      193 include/petscsf.h
> >      218 include/petsc-private/dmimpl.h
> >      219 include/petsc-private/tsimpl.h
> >      223 include/petsc-private/fortranimpl.h
> >      242 include/petsc-private/snesimpl.h
> >      250 include/petscoptions.h
> >      256 include/petscdm.h
> >      262 include/petscblaslapack_uscore.h
> >      266 include/petscdmda.h
> >      276 include/petsc-private/kspimpl.h
> >      282 include/petscblaslapack_stdcall.h
> >      304 include/petscdmmesh.h
> >      314 include/petscdraw.h
> >      334 include/petsc-private/vecimpl.h
> >      451 include/petscmath.h
> >      455 include/petscviewer.h
> >      461 include/petscis.h
> >      533 include/petsclog.h
> >      564 include/petscvec.h
> >      596 include/petscpc.h
> >      649 include/petscksp.h
> >      741 include/petscsnes.h
> >      754 include/petscerror.h
> >      845 include/petscts.h
> >      858 include/petsc-private/petscimpl.h
> >     1036 arch-gnu/include/petscconf.h
> >     1504 include/petsc-private/matimpl.h
> >     1930 include/petscmat.h
> >     2399 include/petscsys.h
> >    20713 total
> >
> >
> >
>
>


-- 
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20130216/7976e32a/attachment.html>


More information about the petsc-dev mailing list