Getting started and posting guidelines for new users

1,681 views
Skip to first unread message

Jean-Paul Pelteret

unread,
Jun 30, 2016, 8:40:18 AM6/30/16
to dea...@googlegroups.com
Hi there, and welcome to the deal.II user group forum!

Presumably you've found yourself here from a web search or from the deal.II website.
Are we interested in hearing your question and assisting you? Absolutely! 
We strive to be a friendly, helpful and inclusive community that fosters interesting discussions on topics related to deal.II.

Here are some tips for getting started with deal.II and some guidance on how to best interact though this forum.

Information resources

The starting point to find information on deal.II and its interface is located at the main help page within the official documentation.
Here you will find links to a number of useful resources, namely
  • The ReadMe file with installation instructions.
  • A list of Frequently Asked Questions, or FAQ.
  • The comprehensive manual with descriptions of the functionality of, and the interface to the deal.II library.
  • Numerous tutorials and a code-gallery that demonstrate how deal.II can be used to solve problems.
    • They also highlight specific features of the library and could be used as a starting point for your own work.
    • Examples of physics tackled in the tutorials include, amongst many others, the Laplace equation, fluid dynamics (Stokes flow and Navier-Stokes), solid mechanics (linear small strain, non-linear finite-strain, and contact mechanics) and transient problems (such as the heat equation).
    • Additionally, there are a series of video lectures provided by Wolfgang Bangerth that go through some of the tutorials in a systematic manner, and provide further insights into Finite Element Analysis and numerical methods.
  • The publication list gives some insights into the classes of problems that have been solved with the aid of the deal.II library.
Asking questions What sort of questions are appropriate for the forum? The forum is aimed primarily at deal.II oriented questions, ranging from installation through to the use of library functions in your code, as well as questions on how best to design and implement a numerical algorithm for a particular purpose. It is also open to some broader discussions on the finite element method, numerical methods, C++ and similar. However, you should be aware that there may be better platforms to have these discussions. For example, issues with the third-party libraries that deal.II links to should typically be raised on their own discussion platforms unless it is related specifically to how deal.II interfaces with those libraries. All of the source code for the library is hosted on GitHub. You can directly report bugs and other issues that pertain directly to the library itself through the issues page. If you are unsure as to whether or not any issue that you are having is a genuine bug, or rather a user-generated error then go ahead and post a question keeping in mind what is written below. Minimum expectations of you before posting a question Let's say that you have a problem that you can't immediately resolve. Should you quickly fire off a question to the mailing list? Woah, woah, woah... not so fast cowboy. Frequently, you can find a quick solution to your problem by consulting the standard resources. The forum is run by volunteers with limited time, and it helps us greatly if you try to research your problem a bit before posting. So, we kindly request that you first ask yourself a couple of critical questions before posting: Firstly, have you actually tried to solve the problem yourself? No? Well, we encourage you to give it a go! In our experience, that's the best way to learn deal.II. It may take some time but it's definitely worth the effort. Next, have you looked at the documentation? We do our best to make it thorough and as easy to read as is reasonably possible. Solutions to many commonly asked questions can be found in
  • the FAQ,
  • application in the tutorials, and
  • in previous postings on the google groups page.
Browsing these will not only help you become more familiar with the documentation over time, but you will also indirectly expose yourself to the features that deal.II has to offer. It's easy to search the google groups page, and you can do this by category as well. You can find out a little more about the effort to improve this functionality in this post. If you're unsure as to how to use a specific function, you can often find examples of their usage in at least one of four places, namely
  • the user manual itself,
  • the tutorials,
  • the code gallery,
  • in the unit tests that ship with deal.II (although we do acknowledge that you might need to do a little digging to find the right example). If you've downloaded the deal.II source code, then you can search through the tests for a specific keyword using grep:
dealii/tests$ grep --include=\*.{h,cc} -rnw '.' -e "KEYWORD"

How to best formulate a question Assuming that you've tried your best to resolve your problem and still haven't had success, now is a good time to post a question. What is important is that you pose your question in such a way that you can expect a meaningful answer from some kind soul who's willing to take the time to help you out. Its not very useful to ask open-ended questions, and you certainly cannot expect someone to provide a detailed explanation to such generic questions. So please avoid questions with a lack of depth and focus, like
My code doesn't work. Please help.
and
I need to solve the elasticity equations. How do I do that?
For answers to these types of questions, at best you could directly consult the documentation and tutorials, although consultation of a textbook, a colleague or professor at your institution, or perhaps Google or StackOverflow may be better for you. Understand that you are the only person that knows what you're trying to accomplish, and you should provide context to the issue that you're trying to resolve. It is important that you describe the problem in detail; typical points that should be covered in your post include
  • what the symptoms of the problem are,
  • a summary as to how/why doesn't it work, or some indication as to the result differs from that which you had expected,
  • an explanation of what you've already attempted, and
  • any error messages that may have been output by deal.II when your program runs in debug mode.
Please note that if you're not using the most up-to-date stable release of deal.II, then its critical to mention which version you've compiled your code against. The functionality provided by deal.II and technologies used within it are continuously evolving, and each release of deal.II resolves a number of bugs that exist in older versions. We highly recommend that you provide a minimal working example that illustrates the issue. This goes a long way to helping someone determining what the underlying cause of any problems are. On occasion, the source of issue is not necessarily located around the line of code at which the problem becomes known. Having an entire program can assist an experienced eye locate the problematic code with minimal time and effort. If your question is related to compiling and installing deal.II itself, then please provide the two build log files titled `summary.log` and `detailed.log`. These provide critical details (such as the compiler version, compile options etc.) to the developers and help determine whether your problem is related to your system, third-party libraries or deal.II itself. You are occasionally not the first person with your question, and you will likely not be the last. This forum offers a useful database of questions and answers to which you are implicitly contributing. We understand that it may be tempting to directly contact the developers with your issue. Please do not be surprised if they back refer you to the user group (or post your email there) if the question falls into the scope of this forum. Contributing to the project Willing to lend a hand to improve the library? Thanks, that's great! You can find out how to go about it by looking at the participation page on the website. If you have an idea about a new feature that can be added, or want to contribute to the larger problems listed on the ideas page, then please first take a look at the guidelines for contribution to the project and give it a go! There is always that pesky list of issues that is there to be tackled, or perhaps the documentation can be improved or made a little clearer. No contribution is too small, and any help is always appreciated!


If you have any questions related to the forum or contributing to deal.II, feel free to post a comment in this thread.

Jean-Paul and Bruno

on behalf of all deal.II developers
Reply all
Reply to author
Forward
Message has been deleted
Message has been deleted
0 new messages