-
Notifications
You must be signed in to change notification settings - Fork 578
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge Pull Request #4820 from gsjaardema/Trilinos/april-seacas-snapshot
Automatically Merged using Trilinos Pull Request AutoTester PR Title: Automatic snapshot commit from seacas at ee0f81875 PR Author: gsjaardema
- Loading branch information
Showing
200 changed files
with
6,299 additions
and
2,693 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
After a look and run through the debugger; I'm not sure how the nodal | ||
variable interpolation *ever* worked in the past. It looks totally | ||
wrong and I can understand why it isn’t working now; I just can't | ||
understand how it ever worked correctly for multi-element block | ||
models. | ||
|
||
As I see it, it does the following for the interpolation: | ||
|
||
* For all blocks | ||
|
||
* For all time steps | ||
|
||
* For all nodal variables | ||
* Iterate all nodes in this block; map from A->B | ||
* Write values for *all* B nodes at this step for this variable | ||
|
||
* For all time steps | ||
|
||
* For all element variables | ||
* Iterate all elements in this block; map from A->B | ||
* Write values for all elements in this block at this step for this variable | ||
|
||
This works for element variables since the exodus API can output | ||
elements a block and variable at a time. For nodes, it doesn't work | ||
and you will end up with the values at the last step for all | ||
nodes/variables except for nodes which are only in the last element | ||
block which seems to be what you are seeing. | ||
|
||
Fixing this would be a major undertaking and I'm not sure it would get | ||
prioritized (although you are welcome to try). | ||
|
||
This *should* work OK if you only do a single timestep or if you only | ||
have a single element block. With a single timestep and multiple | ||
element blocks, there is an issue of what happens if the node is | ||
shared between multiple element blocks -- it will only get the | ||
interpolated value from the last block. | ||
|
||
Now, what to do... | ||
* I think that the Percept code can do some mapping from mesh to mesh... | ||
* Klugy, but can do a timestep at a time and then rejoin all timesteps using `conjoin` | ||
* Klugy, but can subset down to one block / mesh and then run mapvar on each submesh and then join using `ejoin` | ||
|
||
Sorry for the bearer of bad news, but hopefully there is a path to get | ||
done what you need... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.