-
Notifications
You must be signed in to change notification settings - Fork 55
Evaluate BTB penalty parameters by a function #1574
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
base: main
Are you sure you want to change the base?
Evaluate BTB penalty parameters by a function #1574
Conversation
Modifies evaluation of the beam-to-beam penalty value with respect to a function by time.
| for (auto& pair : newbeaminteractionpairs) | ||
| { | ||
| pair->init(beam_contact_params_ptr_, ele_ptrs); | ||
| pair->init(beam_contact_params_ptr_, ele_ptrs, g_state().get_time_n()); |
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.
Here I am not so sure, if we really want to pass the time into the pair, and especially the previous or next time.
| .default_value = -1.0}), | ||
| parameter<int>("BEAMS_BTBPENALTYPARAM_BY_FUNCT", | ||
| {.description = "Penalty parameter for beam-to-beam point contact by function id", | ||
| .default_value = -1}), |
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.
Let's not add a default of -1 anymore. You can also make it a noneable default.
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.
Also - would it make more sense to add a new "subsection" and then you chose if you either have a constant value or a function id?
Like it's done with the input fields. Because the parameter is somehow duplicated as far as I understand?
| if (btb_point_penalty_param_ > 0.0 and btb_function_id_for_point_penalty > 0.0) | ||
| FOUR_C_THROW( | ||
| "Please specify the beam-to-beam point penalty parameter either with BEAMS_BTBPENALTYPARAM " | ||
| "or BEAMS_BTBPENALTYPARAM_BY_FUNCT. Not both!"); |
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.
If you already verify this during input it would probably make more sense
Description and Context
Selecting a single value for the beam to beam penalty parameter can be cumbersome, this MR modifies the beam contact to specify the penalty parameters by a function instead of single value from the inputfile.
Hence two new parameters,
BEAMS_BTBPENALTYPARAM_BY_FUNCTandBEAMS_BTBLINEPENALTYPARAM_BY_FUNCTare introduced, which evaluate the parameters within the contact pair at the specified time.Two test cases, one for the line and the other for the point penalty value are provided.
Related Issues and Pull Requests