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

Add jacobian contributions from parsed function rate coefficients #53

Open
keniley1 opened this issue Apr 29, 2020 · 3 comments
Open

Add jacobian contributions from parsed function rate coefficients #53

keniley1 opened this issue Apr 29, 2020 · 3 comments

Comments

@keniley1
Copy link
Collaborator

Many rate coefficients are given in functional forms, often in terms of electron and/or gas temperature. Occasionally other species are also included. Automatic differentiation does not work with parsed materials at the moment, so these need to be added manually.

Parsed rate coefficients are already using the DerivativeParsedMaterial class so the groundwork is in place. The actual derivative calculations need to be added and a new class of Kernels should be included to handle the parsed function jacobian contributions.

@dcurreli
Copy link
Contributor

Automatic differentiation would be really useful here.

@keniley1
Copy link
Collaborator Author

It would, but it's unfortunately just not possible at the moment. See this thread if you want a bit more detail:

https://groups.google.com/forum/#!topic/moose-users/UtXfmsN4cqU

That said, this really shouldn't be too complicated to implement. The DerivativeParsedMaterial class in Moose can compute the derivative of a function with respect to nonlinear variables already. I just need to make sure the derivatives are specified and added automatically in the Action, and then create another class of Kernels that accepts those derivatives as input. (All of this will be completely hidden from the end user, of course.)

I've been getting away with not having this because the preconditioned jacobian-free solver doesn't require perfect jacobians. I've been using that for air discharge simulations. Only a few rate coefficients are given in terms of electron temperature anyway so the jacobian contribution is negligible. If we add gas temperature to the mix we might run into some issues though.

@keniley1
Copy link
Collaborator Author

My last comment is rendered obsolete by PR #58, which is related to a recent MOOSE update that allows for automatic differentiation with parsed functions. Cool stuff!

I'll leave this issue open until I add ADParsedMaterials to the Crane action.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants