How to rely on SDF outputs in creating Response Variables for suspension optimization?

Anton Didenko_22014
Anton Didenko_22014 New Altair Community Member
edited November 2020 in Community Q&A

Hello, Altair Community!

I am working on rear suspension optimization right now and I have a problem with creating response variables in MotionView Optimization Wizard. 

As an example, I would like to know how to write an expression for Side View Swing Arm Angle in the moment of Vertical Wheel Displacement  = 0

So, the question is: How to make a response variable correctly, relying on outputs from KnC analysis? 

As I understand,

1. I should pick the right type of response variable. I need the "At Reference Signal Value" type
2. I need to write a Response Expression. And that is the problem for me. Because I don't understand how to get the value of the Side View Swing Arm Angle from the KnC outputs. Which of these should I pick (see the pictures below)?

image image

3. After that I need to write Reference Signal Expression. And that is a bit trickier because the output for Wheel Vertical Displacement is in the "combined" KnC output for Wheel Vertical Displacement itself and Wheel Vertical Force (see the picture below). Which of these will give me the Wheel Vertical Displacement?

image

 

I believe it is a very popular problem, so I think someone can help me to solve it =)

Looking forward to the conversation!

Best regards,
Anton

Answers

  • Chris Coker_21312
    Chris Coker_21312 New Altair Community Member
    edited November 2020

    The tutorials MV-3000 and MV-3010 take you through this workflow.  It's optimizing a toe curve, rather than SVSA, but the workflow is the same.

    The main mistake you are making, is you are trying to specific the response from MotionView modeling entities.  You need to set up your responses using the results from a Nominal run.

    Quick update:  These tutorials are in the context of using HyperStudy, not the Optimization Wizard.  I'll try to followup with some more helpful info :)

  • Chris Coker_21312
    Chris Coker_21312 New Altair Community Member
    edited November 2020

    OK, so the short answer is that I think SDF outputs are not directly supported through the optimization wizard, as these are calculated via an external subroutine, and therefore the gradient calculations are not performed internally by motionsolve.

    If you want to use the SDF calculations in your optimization problem, you should use the HyperStudy approach outlined in the tutorials provided in my previous post.

    If you still want to use the optimization wizard, you would need to recreate the math for Side View Swing Arm length as a function of expressions based on displacements and or rotations of the wheel in side view.

    We do have some examples of suspension optimization via the DSA approach, using the Optimization Wizard.  This will likely help you get started in the right direction:

    https://community.altair.com/community?id=kb_article_view&sysparm_article=KB0015904

    However, if I were tasked to do this, I would probably use the HyperStudy approach, as I think a fair amount of effort would be needed implement the SVSA calcs.  Via Hyperstudy, you can reference the SDF calculations directly.

  • Anton Didenko_22014
    Anton Didenko_22014 New Altair Community Member
    edited November 2020

    Thank you for your helpful reply, Chris!

    So I understood that the best way for me is to do optimization using HyperStudy. And as I understand the only way to reference the SDF calculations in defining the Output Responses is to use the File Assistant command and extract values from .sdf file (like in the picture below).

    image

    But there are a couple of problems with that. 

    1. I don't know why, but these .sdf files are different in the layout for different runs of optimization. In the picture below I illustrated this difference. I opened .sdf files of two neighbor runs on the same "page" and I was expecting to see completely the same layout, but they are significantly shifted relative to each other, so it makes impossible to extract the needed parameter value because the Offset value (like on the picture above = 439) will be completely different for each run.

    image

    2. A lot of parameters that I need to investigate needs to be calculated using derivatives. So I tried to find info on how to do it using the .sdf files, but I have no answer right now.

    So, maybe you know what I am doing wrong. Are there any different ways how can I reference SDF outputs in HyperStudy and calculate derivatives from it? 

    Or I need to create a user-subroutine with a python script on it referring to SDFs for every needed parameter...

    I really appreciate your help!

    With respect,
    Anton

  • Chris Coker_21312
    Chris Coker_21312 New Altair Community Member
    edited November 2020

    The results from the SDF outputs are also stored in the .plt and .abf files.

    If you look at any of our standard analysis, you can go to Analysis -> View reports, and you'll see a list of various plotting templates available.  One of those plots data from the SDF based outputs (and also loads in the .sdf file in the final page.

    If I find that the SDF calculations do not capture everything I need, then I will either create my own output (usually via expressions), or do the math after the fact via post-processing in HyperGraph (or HyperStudy).

    image

    You can also search our help for "SDF output" and you can find some documentation on how the output files are formatted:

    image

    FYI, our vehicle modeling class is being taught next week (online).  It's a free class, and it may benefit you in terms of understanding some of the standard workflows for working with our tools.

  • Anton Didenko_22014
    Anton Didenko_22014 New Altair Community Member
    edited November 2020

    The results from the SDF outputs are also stored in the .plt and .abf files.

    If you look at any of our standard analysis, you can go to Analysis -> View reports, and you'll see a list of various plotting templates available.  One of those plots data from the SDF based outputs (and also loads in the .sdf file in the final page.

    If I find that the SDF calculations do not capture everything I need, then I will either create my own output (usually via expressions), or do the math after the fact via post-processing in HyperGraph (or HyperStudy).

    image

    You can also search our help for "SDF output" and you can find some documentation on how the output files are formatted:

    image

    FYI, our vehicle modeling class is being taught next week (online).  It's a free class, and it may benefit you in terms of understanding some of the standard workflows for working with our tools.

    Thank you! I will check these output types.

    Where can I find info about the vehicle modeling class? I will be glad to attend

  • Chris Coker_21312
    Chris Coker_21312 New Altair Community Member
    edited November 2020

    course schedule for all our class can be found at learn.altair.com

  • Anton Didenko_22014
    Anton Didenko_22014 New Altair Community Member
    edited November 2020

    course schedule for all our class can be found at learn.altair.com

    Thank you!