[Dune-devel] Draft for GSoC application

Dedner, Andreas A.S.Dedner at warwick.ac.uk
Sat Feb 19 13:45:39 CET 2022


1: I would like to have a look at geometries based on higher order grid functions. That is discussed a bit in
https://gitlab.dune-project.org/core/dune-geometry/-/merge_requests/170
and fits in with some of the points Simon suggested.

2: Adding some improvements wrt efficiency and then also Python bindings to the new virtual grid interface
https://gitlab.dune-project.org/core/dune-grid/-/merge_requests/573
would certainly be nice.

I don't know if any of these projects are 'exiting' enough to get a student interested. They are quite 'localized'. The 'virtualized grid' might have been a nice project but @Samuel Burbulla<mailto:samuel.burbulla at mathematik.uni-stuttgart.de> ruined that a bit by already putting in so much work ??

3: Reimplementing the 'generic lfe' would of course be nice - I was thinking about combining that with some code generation so that the local degrees of freedom are prescribed in some python script (perhaps using sympy or UFL) and then the corresponding LFE is generated similar to what is done now on the C++ side.

4: there has been some new work on using vtk to visualize higher order elements. Would be nice to have something like that (could perhaps be combined with (1) and some other points that Simon raised).

5: the whole 'twist' thing is I believe still open...

Andreas
________________________________
From: Dune-devel <dune-devel-bounces at lists.dune-project.org> on behalf of Christoph Grüninger <foss at grueninger.de>
Sent: 19 February 2022 12:19
To: dune-devel at lists.dune-project.org <dune-devel at lists.dune-project.org>
Subject: Re: [Dune-devel] Draft for GSoC application

Hi Simon,
thanks for sharing your project ideas and your general offer to become a
mentor.
We should create an ideas page already for our org application. Then
Google decides whether we can participate. Once this is announced,
students/contributors look at the ideas pages. It gives them an
impression what is possible and they can use our ideas for their own
applications.

Andreas, Christian, Oliver, and Simon evinced general interest in an
application to GSoC. To some extend it is luck whether we be accepted. I
know from past GSoC applications, that they note project, that couldn't
make at and these projects have a small advantage next year.

Any improvements to my texts are welcome. Tonight I will prepare an
ideas page.

Bye
Christoph


Am 19.02.22 um 11:37 schrieb Simon Praetorius:
> Hi Christoph,
>
> thanks for your effort and work on this already. I was not part of the
> last GSoC application and thus don't know how this work. Do we just
> state that we want to be a mentoring organization and the participants
> think about own project ideas, or do we need to propose ideas and then
> assign these to mentors or... ?
>
> I would have several project ideas that I would like to be finished but
> have no time to do it myself:
>
> 1. dune-quadrature: Proposed 2017 to redesign the quadrature rules. In
> the attempt I wanted to implement an independent library that collects
> the latest published quadrature rules, provides a portable and
> high-precision data format and an export utility to generate the
> quadrature code for any library, e.g. for dune-geometry. Additionally,
> the code should be able to increase the quadrature precision, using
> existing values as initial data for a nonlinear solver implemented with
> arbitrary precision arithmetic. Outcome for us: The existing quadrature
> rules are old and outdated. Even for 2d and especially for 3d rules with
> much lower number of points are available. Additionally, the library
> could provide extra information about the location and properties of the
> quadrature points, e.g., all inside the element, or points on the
> boundary or positive/negative weights, or symmetry properties of the
> points...
>
> 2. There is a project started by Lukas Keller about Lobatto shape
> function in dune-localfunction that would allow for "arbitrary" high
> polynomial order elements with automatic reorientation of the basis
> functions depending on the orientation of the real element it is bound
> to. Additionally, the basis allows to specify polynomial order on all
> subentities separately. This would give the chance to implement curved
> boundary grids easily, based on the dune-curvedgrid framework, where
> higher-order geometry nodes are located only on the boundary and all
> inner elements are still linear. The implementation is already quiet
> far, but needs cleanup and a finish for the missing 3d geometry types
> Prism and Pyramid. Additionally, an associated global basis in
> dune-functions is started that also needs to be finished.
>
> 3. A proper periodic grid-wrapper: There are some old implementation
> that allow to wrap GridParts of dune-fem and also a sketch on a
> meta-grid based on dune-grid, but nothing is finished yet. The idea is
> to have a meta-grid plus some association/geometry-transformation that
> wraps an existing grid and transforms the index-set such that associated
> entities give the same index. For non-parallel grids this is not so
> complicated but technical, but for parallel grids it is not so trivial.
> Either the domain partitioning is controlled to guarantee that
> associated entities are always on the same partition, or a virtual inner
> interface must be established to have communication of these entites in
> a domain-decomposition sense.
>
> 4. dune-gmsh: During the development of dune-curvedgrid Florian Stenger
> and I have written a new GMsh reader for the version 4 format. In this
> context there was the idea to implement a reader that can read
> distributed grids including the partitioning information from the gmsh
> files. The file format provides lots of information and we currently
> only read a small subset. Additionally, the encoding of boundary data is
> changed compared to the old format. The project would be about reading
> as much information as possible from the gmsh file format and provide a
> way to construct grids from this. Currently it is possible to construct
> curved grids automatically.
>
> 5. ...
>
> I could do a mentoring job.
>
> Currently I'm super busy. That is why I have not answered the last call.
> Thus, if there is no one else and this is too short notice and there
> will be a next GSoC next year, we could also postpone this application
> and have a proper preparation for the next application round.
>
> Best,
> Simon
>
>
> Am 19.02.22 um 00:18 schrieb Christoph Grüninger:
>> Hi,
>> I am still not fully convinced that we have enough mentors and ideas
>> to make a good GSoC application. But as I promised, I prepared
>> everything for an application. Unfortunately, we have only two days
>> left to apple (deadline February 21).
>> What do you think?
>>
>> Please find attached my answers. If you have any improvements, please
>> share them or send me a private mail. I am also locking for a second
>> org admin. Who wants to do so?
>>
>> Bye
>> Christoph
>>
>> == Organization Profile ==
>>
>> If your organization is accepted into Google Summer of Code all of the
>> Profile information on this page will be publicly visible on the
>> program site.
>>
>> Website URL for Organization
>> "https://dune-project.org"
>>
>> Logo Preview: dune-logo6.png
>>
>>
>> Tagline
>> Describe the organization's mission. This is often the only thing a
>> participant will read about your org, be sure to make it clear and
>> concise. 50 characters maximum.
>> "C++ lib for solving PDEs with grid-based methods"
>>
>> Primary Open Source License
>> "GNU General Public License version 2 (GPL-2.0)"
>>
>> What year was your project started?
>> "2002"
>>
>> Link to your source code location
>> https://gitlab.dune-project.org/
>>
>> Organization Categories
>> Select which categories fit your organization best. You may select up
>> to 2 categories. This helps GSoC contributors filter the large list of
>> organizations by their interests.
>>
>> [ ] Data (databases, analytics, visualization, AI/ML, etc)
>> [ ] Development tools (version control systems, CICD tools, text
>> editors, issue managers, q/a tools, etc)
>> [ ] End user applications
>> [ ] Infrastructure and cloud (hardware, software defined
>> infrastructure, cloud native tooling, orchestration and automation, etc)
>> [ ] Media (graphics, video, audio, VR, streaming, gaming, content
>> management, etc)
>> [ ] Operating systems
>> [ ] Programming languages (libraries, package managers, testing tools,
>> etc)
>> [x] Science and medicine (healthcare, biotech, life sciences, academic
>> research, etc)
>> [ ] Security (tools and frameworks)
>> [ ] Social and communications (Blog, chat, forums, wikis, etc)
>> [ ] Web (tools and frameworks)
>> [ ] Other
>>
>> Organization Technologies
>> Enter up to 5 keywords for the primary specific technologies your
>> organization uses. Examples: Python, Javascript, MySQL, Hadoop,
>> OpenGL, Arduino
>>
>> [c++]
>> [templates]
>> [python]
>> [cmake]
>>
>> Organization Topics
>> Enter keywords for general topics that describe your organization.
>> Examples: Robotics, Cloud, Graphics, Web, etc. Select up to 5.
>>
>> [Numerics]
>> [scientific computing]
>> [hpc]
>> [Grid manager]
>> [FEM]
>>
>> Organization Description
>> Describe what it is your organization does. This information will also
>> be included in the archive once the program has ended.
>>
>> "DUNE, the Distributed and Unified Numerics Environment is a modular
>> toolbox for solving partial differential equations (PDEs) with
>> grid-based methods. It supports the easy implementation of methods
>> like Finite Elements (FE), Finite Volumes (FV), and also Finite
>> Differences (FD).
>>
>> The underlying idea of DUNE is to create slim interfaces allowing an
>> efficient use of legacy and/or new libraries. Modern C++ programming
>> techniques enable very different implementations of the same concept
>> using a common interface at a very low overhead. Thus DUNE ensures
>> efficiency in scientific computations and supports high-performance
>> computing applications."
>>
>> Contributor Guidance
>> Provide your potential contributors with a page containing tips on how
>> to write a successful proposal for your organization. Let them know
>> what you want included, how you want it structured, and how to best
>> get in touch. Examples.
>>
>> Link for contributor guidance (Wiki, blog, et cetera)
>> "https://dune-project.org/dev/gsoc/"
>>
>>
>> Communication Methods
>> How do you want potential contributors to interact with your
>> organization? Select methods that your community uses daily as you
>> will receive many inquiries if your org is selected.
>>
>>
>> "Mailing List / Forum": "dune-devel at lists.dune-project.org"
>> "Mailing List / Forum": "https://gitlab.dune-project.org/"
>>
>>
>> == Organization Questionnaire ==
>>
>> Please be thorough in your answers. All fields are required, unless
>> noted otherwise.
>>
>> = Why does your organization want to participate in Google Summer of
>> Code?=
>> "
>> * Teach people that are skilled and willing how to contribute to open
>> source. We public share our code and work as a community for almost 20
>> years. Introducing more people into this world is marvelous.
>>
>> * Being caught in everyday live, it becomes difficult to start new
>> features, try new ideas, or break with old habits. Having a GSoC
>> project leads to a joint effort around the student working on the
>> topic. Our 2016 GSoC project was the nucleus to our Python bindings as
>> we have them today.
>>
>> * Being part of GSoC increases our visibility within the programming
>> community, might interest new users, and might attract bright students
>> to graduate with our software."
>>
>>
>> = What would your organization consider to be a successful GSoC program?=
>> "
>> * Be selected as one of the GSoC 2022 organizations.
>>
>> * During bonding phase, to have a handful of interested students which
>> show some effort to learn about our code base.
>>
>> * Have at least one promising application from a student we believe in.
>>
>> * The cherry on the cake would be a successful GSoC, with a happy
>> student, happy mentors, and a future feature we can include. But
>> having the first three points would be enough to consider it a
>> successful GSoC program."
>>
>> =How will you keep mentors engaged with their GSoC contributors?=
>> "
>> * Having regular meeting.
>>
>> * Answering their email that should be sent at least in a to be
>> defined frequency.
>>
>> * Have regular video calls to bound and build up trust.
>>
>> * As many of our project members work as faculty in universities, we
>> are used to keep engaged with our mentees."
>>
>> =How will you keep your GSoC contributors on schedule to complete
>> their projects?=
>> "
>> If we see they
>> * take the wrong routes,
>> * that their original has a flaw, o
>> * that they are just behind schedule,
>> we have to ask them
>> * whether they need more or more specific help,
>> * to adjust their approach,
>> * to discuss with us,
>> * or simply to improve their effort (if we feel that lack of effort is
>> a reason)."
>>
>> =How will you get your GSoC contributors involved in your community
>> during GSoC?=
>> "
>> * Encourage them to take part in discussions related and unrelated to
>> their project.
>> * Not only mentors will provide feedback and answer questions on the
>> mailing list or GitLab discussions.
>> * If possible, merge parts of the project as early as possible.
>> * Invite GSoC contributors to project activities like developer or
>> user meetings, if they happen during the GSoC time.
>> * Some project might lead to a scientific publication, and the GSoC
>> contribution would become one of the authors."
>>
>> =Anything else we should know? (Optional)=
>> ""
>>
>> =Is your organization part of any government?=
>> [ ] Yes
>> [x] No
>>
>> _______________________________________________
>> Dune-devel mailing list
>> Dune-devel at lists.dune-project.org
>> https://lists.dune-project.org/mailman/listinfo/dune-devel
>
>
> _______________________________________________
> Dune-devel mailing list
> Dune-devel at lists.dune-project.org
> https://lists.dune-project.org/mailman/listinfo/dune-devel

--
Because apparently, even the invisible hand [of the market] doesn’t
want to pick beans.         -- Stephen Colbert to US Congress, 2011

_______________________________________________
Dune-devel mailing list
Dune-devel at lists.dune-project.org
https://lists.dune-project.org/mailman/listinfo/dune-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune-devel/attachments/20220219/af67bf16/attachment-0001.htm>


More information about the Dune-devel mailing list