A PR was merged today that changes an internal detail of the ACBulk class, which a lot of Allen-Cahn type Kernels inherit from. This class is now a class template. The template argument is the type of the Mobility parameter. Previously this has been assumed to be a scalar number.

To update your code retaining the previous behavior perform the following replacements for classes that inherit from ACBulk:

  1. in the header change public ACBulk to public ACBulk<Real>
  2. in the implementation file
  3. change validParams<ACBulk>() to ACBulk<Real>::validParams() in the body of the validParams function for your class
  4. In the initializer list of your class' constructor change ACBulk() to ACBulk<Real>()

This change mirrors a similar change from a few months ago, which made CHBulk a template. The point is to allow tensorial mobilities to be specified by templating the new class template on a RealValueTensor instead of a Real. This will utilize the same underlying code to allow for models with anisotropic mobilities.

Additionally the MOOSE object name ACParsed has been deprecated. The new preferred name is AllenCahn. The kernel is not specific to "parsed" functions, but is our main Kernel for any type of material based free energy. Again this mirrors a change from a few months ago, which renamed CHParsed to CahnHilliard.

Currently unrated


There are currently no comments

New Comment


required (not published)


R&D 100

Recent Blog Posts

Using our new clang-format Style

1 month, 2 weeks ago

Steady State Algorithm Change

10 months, 3 weeks ago

Making an App inherit from an App

11 months ago

Changing a published API (Deprecation)

11 months, 1 week ago

DiscreteMaterial Objects

1 year, 1 month ago

Recent Posts






RSS / Atom