New MOOSE Module Instructions

80 views
Skip to first unread message

Brycen Wendt

unread,
Dec 14, 2017, 11:57:29 AM12/14/17
to moose-users

I am following the instructions at http://mooseframework.org/wiki/CreatingANewMooseModule/ to create a new module. I’m providing my experiences and comments for items that may need updated or clarifying.

Step 1

  • The correct command (self-reported by stork.sh) to create a new module is:
    $MOOSE_DIR/scripts/stork.sh YourModuleName --module
    
  • Running the above command generates additional directories/files that do not appear on the existing modules. Is this intended, i.e. is the required content of new/future modules being changed?
  • These differences are:
    • scripts/ (contains: install-format-hook.sh)
    • unit/ (contains: include/place_holder, src/SampleTest.C, src/main.C, Makefile, run_tests)
    • LICENSE
    • README.md
  • Also, it may not be necessary to include the example test test/kernels

Step 2

  • There aren’t actually any instructions per se in ModuleApp.C and modules.mk, but the existing code can easily be understood and duplicated to add support for a new module
  • The ModuleApp.C path is: modules/module_loader/src/ModuleApp.C
  • Should combined/src/base/CombinedApp.C also be edited/updated?

Step 3

  • Does an issue also need to be created for the submission of a new module, or just a pull request?

Cody Permann

unread,
Dec 14, 2017, 12:10:15 PM12/14/17
to moose...@googlegroups.com
There are numerous gotchas for creating modules but it's a rare occurrence and has actually never been done by somebody outside of the lab. We have to look at new modules with a lot of scrutiny for rules we need to follow within the lab for our open-sourcing process so we don't typically worry about keeping those instructions at 100% all the time.

Are you planning on proposing a whole new module? If so, awesome, but we may need to chat a little bit offline to make sure everything is in order. 

--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
Visit this group at https://groups.google.com/group/moose-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/17863af0-88d4-454e-8f3c-a3953eda7bef%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Brycen Wendt

unread,
Dec 14, 2017, 12:39:32 PM12/14/17
to moose-users
Yes, we were planning on proposing a new module. I didn't know that this would be a first from outside the lab.

The proposed module is a set of tools for multiphysics coupling, not necessarily new physics. A module seemed to be the best place to put it. From my perspective, this makes the functionality available without adding new code to the framework itself. I understand, from responses to a few of my previous posts, that minimizing unnecessary code additions to the core framework is a focus of the development team.

Cody Permann

unread,
Dec 14, 2017, 2:16:01 PM12/14/17
to moose...@googlegroups.com
On Thu, Dec 14, 2017 at 10:39 AM Brycen Wendt <wend...@isu.edu> wrote:
Yes, we were planning on proposing a new module. I didn't know that this would be a first from outside the lab.

The proposed module is a set of tools for multiphysics coupling, not necessarily new physics. A module seemed to be the best place to put it. From my perspective, this makes the functionality available without adding new code to the framework itself.

It's still a grey area. If the capability is widely applicable and not physics specific, the framework still makes sense. It just depends.
 

Brycen Wendt

unread,
Jan 1, 2018, 8:03:24 PM1/1/18
to moose-users

It is a decent chunk of code. I hope that it will be widely-applicable, but that is left up to the individual user. It is not physics specific, but I view the capabilities as more of a toolset a la stochastic_tools.

How about this plan: I will continue to prepare it as a module. The merits of a module vs. framework addition can be checked when I submit the PR.

Cody Permann

unread,
Jan 2, 2018, 10:51:31 AM1/2/18
to moose...@googlegroups.com
Sounds good to me.

Reply all
Reply to author
Forward
0 new messages