Skip to content

Framework for gradually activation of elements based on a function of element indices #751

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

Merged
merged 13 commits into from
May 7, 2025

Conversation

kmokstad
Copy link
Contributor

With automatic suppression of all DOFs without contributions .

<geometry>
  <activation patch="1">1*x</activation>
</geometry>

where x in the expression will be the element index within the specified patch.

<linearsolver>
  <class fixzeros="true"/>
</linearsolver>

This enables the suppresion of equations with no contributions yet.

@kmokstad kmokstad marked this pull request as draft April 11, 2025 14:02
@kmokstad
Copy link
Contributor Author

jenkins build this with downstreams please

@kmokstad kmokstad changed the title Rramework for gradually activation of elements based on a function of element indices Framework for gradually activation of elements based on a function of element indices Apr 11, 2025
@kmokstad kmokstad force-pushed the element-activation branch from 83fffdd to eb73e27 Compare April 13, 2025 06:26
@kmokstad
Copy link
Contributor Author

jenkins build this with downstreams ifem-stokes=322 please

@kmokstad kmokstad force-pushed the element-activation branch from eb73e27 to 353491d Compare April 14, 2025 08:48
@kmokstad
Copy link
Contributor Author

jenkins build this with downstreams ifem-stokes=322 ifem-finitedeformation=47 please

@kmokstad kmokstad force-pushed the element-activation branch from 353491d to 677de2a Compare April 14, 2025 10:54
@kmokstad
Copy link
Contributor Author

jenkins build this with downstreams ifem-stokes=322 ifem-finitedeformation=47 please

@kmokstad kmokstad force-pushed the element-activation branch from 677de2a to 1dbe05e Compare April 14, 2025 11:46
@kmokstad
Copy link
Contributor Author

jenkins build this with downstreams ifem-stokes=322 ifem-finitedeformation=47 please

@kmokstad kmokstad force-pushed the element-activation branch from 1dbe05e to 49642fe Compare April 15, 2025 13:14
@kmokstad
Copy link
Contributor Author

jenkins build this with downstreams ifem-stokes=322 ifem-finitedeformation=47 please

@kmokstad
Copy link
Contributor Author

kmokstad commented May 6, 2025

jenkins build this with downstreams ifem-elasticity=181 ifem-finitedeformation=47 please

@kmokstad kmokstad marked this pull request as ready for review May 6, 2025 12:19
@kmokstad kmokstad force-pushed the element-activation branch from 5a8e355 to bf399d8 Compare May 6, 2025 15:42
@kmokstad
Copy link
Contributor Author

kmokstad commented May 6, 2025

jenkins build this with downstreams ifem-elasticity=181 ifem-finitedeformation=47 please

kmokstad added 6 commits May 7, 2025 14:27
…on during assembly

and add a trivial equation 1.0e9*x = 0 for those such that the remaining can be solved.
Changed: Check matvec.empty() in loop to avoid the need for two loops.
… method

be a char and use the value 2 to flag that we want to trace equations with
no contribution in the AlgEqSystem method
Removed: Unused methods SAM::initForAssembly() and SAM::getNoElmEquations().
Changed: Use std::accumulate to calculate element size from connectivity.
Changed: Don't check return value for methods that will never fail.
be a char to enable forced preassembly in addition to
delayed sparsity pattern lock.
Force preassembly when element activation functions are used.
kmokstad added 5 commits May 7, 2025 14:29
be reused by several element blocks instead of duplicating them.
Changed: Use null pointer instead of empty ElementBlocks for point grids.
Changed: Range-based for loops and x.data() instead of &x.front().
…gument.

For exporting grids with active/deactive elements. The node blocks defined
for the first step is re-used for all subsequent grids, assuming they
also contain the nodes of deactivated elements.
This also includes something which looked like a syntax error not caught
by any compiler or static check (when extracting level form string).
Minor adjustments for Chebyshev vector/tensor functions such that it
does not crash if only one file is specified.
@kmokstad kmokstad force-pushed the element-activation branch from bf399d8 to 81df1a2 Compare May 7, 2025 12:33
@kmokstad
Copy link
Contributor Author

kmokstad commented May 7, 2025

jenkins build this with downstreams ifem-elasticity=181 ifem-finitedeformation=47 please

@kmokstad kmokstad force-pushed the element-activation branch from 81df1a2 to 67a1dd4 Compare May 7, 2025 13:06
@kmokstad kmokstad merged commit 67a1dd4 into OPM:master May 7, 2025
@kmokstad kmokstad deleted the element-activation branch May 7, 2025 13:31
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

Successfully merging this pull request may close these issues.

1 participant