ParameterHandler extension suggetions

44 views
Skip to first unread message

secanell

unread,
Aug 21, 2013, 3:51:17 PM8/21/13
to dea...@googlegroups.com

Hi all,

I would like to suggest the following three enhancement to the ParameterHandler class:

a) Extend capability of Patterns::List() from just being a comma-separated value other separators, e.g. colon-separated values. This would help to have to structures of List inside List and so on. Same thing for Patterns::Map. For example, I would like to read something like:
1:2.5;3.8 , 3:4.3;-3.8
Currently, I have to Patterns::Map(Patterns::Integer, Patterns::Anything) . It would more logical to use:
Patterns::Map(Patterns::Integer, Patterns::List(;) )

b) Extend ParameterHandler to read a directive like include file = parameters.prm

c) Create a new member function that reads a specific section of the input file. For example, we currently have virtual bool read_input (const std::string &filename, const bool optional=false, const bool write_stripped_file=false). Would it be possible to create a new member function like:
virtual bool read_input_subsection (const std::string &filename, const std::string &subsection_to_read, const bool optional=false, const bool write_stripped_file=false)
This member function would search for the subsection with name subsection_to_read and read the content of everything inside the subsection. Then, it would exit.

Would these enhancements be useful to anyone else?

Best,

Marc

Wolfgang Bangerth

unread,
Aug 21, 2013, 7:08:07 PM8/21/13
to dea...@googlegroups.com, secanell

Can you open bug reports at the google code site for each of these three
issues? This way we can track what has already been achieved.
Best
W.

On 08/21/2013 02:51 PM, secanell wrote:
>
> Hi all,
>
> I would like to suggest the following three enhancement to the
> ParameterHandler class:
>
> a) Extend capability of Patterns::List() from just being a comma-separated
> value other separators, e.g. colon-separated values. This would help to have
> to structures of List inside List and so on. Same thing for Patterns::Map. For
> example, I would like to read something like:
> 1:2.5;3.8 , 3:4.3;-3.8
> Currently, I have to Patterns::Map(Patterns::Integer, Patterns::Anything) . It
> would more logical to use:
> Patterns::Map(Patterns::Integer, Patterns::List(;) )
>
> b) Extend ParameterHandler to read a directive like include file = parameters.prm
>
> c) Create a new member function that reads a specific section of the input
> file. For example, we currently have virtual bool read_input
> <http://www.dealii.org/8.0.0/doxygen/deal.II/classParameterHandler.html#a5946f967a214445cc645027a9a13bd3e>
> (const std::string &filename, const bool optional=false, const bool
> write_stripped_file=false). Would it be possible to create a new member
> function like:
> virtual bool read_input_subsection (const std::string &filename, const
> std::string &subsection_to_read, const bool optional=false, const bool
> write_stripped_file=false)
> This member function would search for the subsection with name
> subsection_to_read and read the content of everything inside the subsection.
> Then, it would exit.
>
> Would these enhancements be useful to anyone else?
>
> Best,
>
> Marc
>
> --
> The deal.II project is located at http://www.dealii.org/
> For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "deal.II User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to dealii+un...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.


--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@math.tamu.edu
www: http://www.math.tamu.edu/~bangerth/

Reply all
Reply to author
Forward
0 new messages