-
Notifications
You must be signed in to change notification settings - Fork 36
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
Questions about Nonlinear elasticity, PROM #185
Comments
About the errors reported in the edit above: The position and velocity errors are reported at the final time. Perhaps the errors at the final time are not a monotonic function of the basis size. |
Unfortunately, matching velocity is much more difficult job than matching displacement because velocity field is one more derivative of displacement. It is analogous to the fact that it is more difficult to match stress than to match displacement. |
Thank you, that's interesting. |
But still, a velocity error of 12.33 (1233% !!!) seems too high. |
yeah, that is very high. One way of reducing velocity error is to introduce reduced basis for velocity field as well, which we do not do for this nonlinear elasticity example. However, we do that for Sedov Blast example. Please take a look at that as well. The journal paper for that is here ( https://www.sciencedirect.com/science/article/pii/S0045782521005739 ) and here ( https://www.sciencedirect.com/science/article/pii/S0021999122007185 ). |
Thanks. I was under the impression that |
Oh, I missed that. Maybe we are indeed using velocity basis for nonlinear elasticity examples. I think that @axla-io implemented both. Not sure which one is being run currently. |
Hi @gokhalen , can you paste the entire code you use for both the offline and online phase? Also the reason your accuracy decreases when you increase the Try You can toggle to use only the displacement basis by passing the keyword -xbo. |
Hi, @axla-io I've used the example non-linear elasticity code without modifications. https://github.com/LLNL/libROM/blob/master/examples/prom/nonlinear_elasticity_global_rom.cpp I've used the instructions for the "Nonlinear elasticity, PROM" without modification https://www.librom.net/examples.html Except that I've replaced XXX with 4.0 in the FOM Phase and Online Phase. I'm getting the following errors Relative error of ROM position (x) at t_final: 5 is 0.00677831 Nachiket |
Ah now I see what you mean. My bad, I did not know that the sampling was done for |
Hi @axla-io Sorry for the late reply. Here is what seems to happen. With -rvdim 40 Elapsed time for time integration loop 350.778 With -rvdim 800 Elapsed time for time integration loop 723.551 So, no joy. Errors in both position and velocity have increased and so has the simulation time (which was to be expected). Is there any theoretical guidance (error estimates etc.) for picking the number of basis vectors correctly? Larger the basis, the lower errors should be, but this doesn't seem to be occurring here. The rest of the simulation parameters were the same as in my first message. Also, should I be looking at error calculated over all time, instead of error at just the final time-step? Thanks again for your help, Nachiket |
This is a really interesting find @gokhalen It's not always straightforward to tell what -rvdim that will give the best result. In the meanwhile, could you print the contents of the summary file? |
I will run the cases you suggested. |
With
With
Results are better. Still 35% error in the velocity is a lot. Perhaps a reason for better results at low values of |
Thank you @gokhalen for taking the time to do these experiments!
Here
A final remark on the velocity error is that for structures we are not always interested in accurately predicting the velocity field. It can be useful in structural dynamics, but typically the deformation is more interesting for studying structures under static loading. |
I'm working with the nonlinear elasticity example:
https://github.com/LLNL/libROM/blob/master/examples/prom/nonlinear_elasticity_global_rom.cpp
https://www.librom.net/examples.html
My command line is
I have the following questions:
Edit: Changing the rvdim to 80 in the command line above increases the errors. The position error is 0.00749 and velocity error is 12.33 both of which have increased inspite of number of basis vectors increasing, and I fail to understand this.
Thanks,
Nachiket
The text was updated successfully, but these errors were encountered: