Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Including AD (Automatic Differentiation) to the Curl and Coupled Curl Operators #29868

Open
csdechant opened this issue Feb 12, 2025 · 0 comments
Labels
T: task An enhancement to the software.

Comments

@csdechant
Copy link

Motivation

As the development and implementation of the electromagnetic module increases, there is a need to include the option to defined the curl and coupled curl operators as AD functions. This would avoid errors involving more complex formulations that include the curl of variables in lieu of using hand-coded Jacobians.

Design

A function, such as adCurlSln(), that calculates the curl of a variable as an AD variable should be included in the MooseVariableData file. Then the adCurlSln() function should be properly inherited by the additional MooseVariable files. To ensure that the AD curl operators are working as as intended, tests using type = 'PetscJacobianTester' should be added.

Impact

The inclusion of a AD versions of the curl and coupled curl operator will allow for faster development of additional physics into the MOOSE framework that utilizes the curl of variables.

@csdechant csdechant added the T: task An enhancement to the software. label Feb 12, 2025
csdechant added a commit to csdechant/moose that referenced this issue Feb 12, 2025
csdechant added a commit to csdechant/moose that referenced this issue Feb 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T: task An enhancement to the software.
Projects
None yet
Development

No branches or pull requests

1 participant