-
Notifications
You must be signed in to change notification settings - Fork 27
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
POEM 071: Change ExecComp to use declare_coloring
#148
Conversation
declare_coloring
declare_coloring
declare_coloring
declare_coloring
POEM_071.md
Outdated
The option `has_diag_partials` on ExecComp was added prior to the development of partial derivative coloring to provide a common sparsity pattern for vectorized components. | ||
|
||
With the advent of partial coloring, `has_diag_partials` is no longer needed. | ||
Users should be able to expect that `ExecComp` will determine the sparsity pattern of calualtions involved. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spelling: calualtions
POEM_071.md
Outdated
|
||
## Changes | ||
|
||
1. `has_diag_partials` will be marked as deprecated but still be allowed as an option that does nothing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We ended up leaving the old internal CS stuff intact because that allows us to use CS local to the ExecComp without requiring the full model vectors to be allocated as complex, and has_diag_partials offers a performance improvement over computing the coloring so I left it in (with no deprecation).
POEM_071.md
Outdated
## Changes | ||
|
||
1. `has_diag_partials` will be marked as deprecated but still be allowed as an option that does nothing. | ||
2. `declare_coloring_kwargs` will allow the user to specify any arguments to be passed to [System.declare_coloring](https://openmdao.org/newdocs/versions/latest/features/experimental/approx_coloring.html#dynamic-coloring)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
declare_coloring_kwargs
wasn't used. The thought process was that if a user has specific args they need to pass (usually not the case), then they can just call declare_coloring
and pass them normally. Otherwise, if they don't call declare_coloring
explicitly, they get the internal coloring method that only uses default args.
Updated POEM 071 with implementation details
No description provided.