Closed jjalora closed 2 years ago
Hello John,
thank you very much for your interest in our FE-software AMfe and we would be glad, if it could help you in achieving your goals.
I do think, almost everything, you're asking for, is already there, if I got right, what you are trying to do:
you can define time-dependent forces using the force-functions in amfe/forces. As soon as you've chosen your function, you can apply it to boundary-elements, using the UI-function set_neumann_by_group or set_neumann_by_elementids.
the UI-functions do not provide an option to apply a force to a single node, as this will introduce a singularity. Moreover, the element-assembly-routines wouldn't work with node-ids. If you still want to have a force applied to a single node, you could do that manually by assigning a custom f_ext-function to the mechanical system, that returns the force-array, instead of calling the component. The required dofs can be obtained from the component's mapping-object.
Large displacements are actually supported by default. It's the other way around, in case of a linear model, you'll have to explicitly define that via the constants in the mechanical system.
I hope this helps you. If you have further questions, feel free to contact us. If you would like to contribute to this project, you are welcome. I would suggest to have some kind of online-meeting first, though. Such that, we can define a proper workflow.
Best, Andreas
Hi Andreas. Thank you for the very helpful response! I'll continue to parse through the code but I think as it stands, it will do for what I'd like to do. I'll admit, I have no experience working with finite element code, but I'd certainly be happy to contribute once I'm comfortable with the codebase and if your team has interest in providing support for controller design/synthesis.
I will undoubtedly have questions in the future so thank you for the offer! Would you prefer me to continue to open issues or reach out directly?
Best, John
Hi John, as a general advice how to familiarize yourself with AMfe, I highly recommend to start withe the _ui_examplebeam.py in examples. This utilizes the ui-module, which simplifies the usability a bit and wraps up some functions. From there, you can go "top-down" through the routines.
Regarding general support for AMfe, I would recommend to discuss that via e-mail (andreas.seibold@tum.de). The issue-section is supposed to be rather something like a section for bugreports an new proposed features.
Best, Andreas
Great! Thanks Andreas, I'll go ahead and close.
Hello AMfe team!
I was looking around for finite element code that had ECSW implemented and thankfully stumbled upon AMfe!
I'm working on developing real-time, optimization-based controllers (e.g. Model Predictive Control) for reduced order models (with soft robot applications) and so I was hoping to leverage AMfe's very well-established codebase for this research.
What I'd like to do is to compute a reduced model of my mechanical system using ECSW and use it as a surrogate model to compute control policies, which I would then introduce into the original (non-reduced system). My questions are...
Looking forward to hearing from you and thanks for the help!
Best, John