How do I receive modelling help/support for my Master Thesis Project?

7 views (last 30 days)
Hello,
I'm creating a mathematical model from first principles (white-box modelling) of a complex hydraulic system i.e, a triple adjustable race car damper/shock absorber.The design is confidential so I cannot post screenshots of the model without violating my company NDA. I refer to similar work on the topic where coupled ODE's and algebraic equations are used. These papers only describe the equations to be used and less so, how they are to be implemented in a software environmet like matlab/simulink. Despite multiple attempts and using various references and debugging indirectly using matlab central and other forums, I have not been able to get the model working.
I have previous experience creating models such as 2-wheel and 4-wheel vehicle dynamics models. However these use at max 1 or 2 coupled ODE equations that are quite trivial to solve compared to this project.
The simulink solver (using ODE15 as my coupled ODE's are of the stiff form) gets stuck at algebraic loops or at initial conditions. With multiple attempts at removing or remodelling ill-defined equations, still no success.
Any plan of approach for debugging the model, or useful references, or if any community expert can get in touch with me privately would be greatly appreciated.
Since I cannot directly discuss my model, I can however discuss ideas such as how to implement certain equations from a reference perhaps?
I post one paper below which has been quite a useful reference for my project.
Paper Title: A universal nonlinear model for the dynamic behaviour of shock absorbers
EDIT: I have updated my question and posted it as a new question here
  4 Comments
Daniel Joseph
Daniel Joseph on 9 Mar 2023
Edited: Daniel Joseph on 9 Mar 2023
Thanks for the reply @John D'Errico. Two questions,
1.) If matlab answers is not the place, where can I receive technical support from Mathworks to help with the model? Is it in the support center? The support center from what I've understood has to do with installation issues rather than implementation issues.
2.) Since my work is under NDA, I cannot directly refer to my model (has nothing to do with my willingness or lack of it). However I will reopen this question with some modifications, so that I abstract the gist of my problem while the underlying work remains privy.
Sam Chak
Sam Chak on 9 Mar 2023
You can at least post the Error or Warning message, which may be helpful to diagnose the problem.

Sign in to comment.

Accepted Answer

Rik
Rik on 9 Mar 2023
I think the guidelines for posting homework (which you can find here) would also apply in this situation.
You will have to think of a way to present your question in such a way that you comply with your NDA. When in doubt, ask your supervisor (or even the company laywer) to OK your actual post (and get that in writing (email) to cover your butt). Remember that it is often possible to create fake data to show a particular issue.
I doubt you will get any responses for private free help. There are paid Matlab consulants, but I suspect the company you're interning at is hoping to avoid that cost by having you do that work instead.
If all else fails, you will have to fall back to the basic trouble-shooting steps: either
  • Remove/simplify elements until your system works.
  • Start from a tiny simple system that works and keep adding elements until you find which addition breaks everything.
  4 Comments
Rik
Rik on 9 Mar 2023
@Daniel Joseph I don't think you should substantially modify your question, since our responses would no longer make sense.
@John D'Errico This is absolutely beyond the scope of homework, but I think most of the same advice applies all the same. A good homework question should take a step back and work to understand the topic in a broader view. A question about something under NDA must by necesity be broader. In addition to that, as long as the no-plagiarism rule is upheld, there should not be any issue in re-using work by others in your own thesis. That is, after all, how you should work in your professional life as well (building on the wisdom of others, but not passing it off as your own).
Walter Roberson
Walter Roberson on 9 Mar 2023
It is often considered valid for a Doctorate student to hire technical help (technicians and programmers) provided that the ideas are coming from the candidate. For example if a student came up with a new electrical circuit it would be perfectly fine for the student to hire a circuit fab company to make it.

Sign in to comment.

More Answers (2)

Steven Lord
Steven Lord on 9 Mar 2023
If you have questions that reasonably fall under the responsibility of Technical Support (more "Why do I receive error X when I run my code?" than "How do I implement this paper?" which I believe falls more in the scope of Consulting) I believe the Support staff can work with our Legal department and your company's Legal department to generate an NDA allowing Support to work with you on the files in question. Reach out to Support and/or the sales representative for your license and ask if this is feasible.
Of course if your question is more along the lines of "How do I implement this paper?" MathWorks does have a Consulting department and given some of the companies that department has worked with I'm fairly sure they're no strangers to NDAs. :)

Daniel Joseph
Daniel Joseph on 10 Mar 2023
Edited: Daniel Joseph on 10 Mar 2023
I'm adding my updated question here. So my premise from the original question remains. My objective is modelling a commerical OEM damper/shock absorber from first principles (white-box modelling). The novel damper design details are left out and the crux of the problem in terms of modelling equations in simulink and getting them to solve will be presented below.
A damper produces the damping force by forcing hydraulic fluid such as oil through valves such as orifices and so on. This causes a pressure drop across the various chambers within the damper and we get a corresponding damping force. So the task becomes
1.) modelling the various fluid chambers as control volumes with flow rates going in and out of the various chambers (using mass conservation within each chamber).
2.) force balance equations for the piston, and the corresponding valves. These look like the 2nd order spring mass damper equations.
A diagram for the system looks something like below. You can see the main damper body with the piston. On the piston, there are set of one way valves that work in compression and rebound stroke of the damper. The reservoir accounts for the volume being pushed in and out of the damper and pressurised gas pressurises the whole system in static condition. This looks like a static lift force that acts at all times (practically this is why it's hard to compress a damper by hand). So with this,we have our initial conditions which is that pressure in all chambers here are equal to the gas pressure.
The general equation for flow rate through an orifice is as follows:
Here, the Pressure difference is between the chambers, or can be multiple pressure drops in series, which practically happens with valves used in series. It's important to note that pressure here is changing in each chamber as the piston is moving and corresponding flow rate changes as well. The same flow rate equations remain for say a spring loaded valve or spool valve or shim valve and so on. But a corresponding force balance equation is needed to solve for the valve displacement which looks like the figure below.
Here Kvalve is the valve stiffness, Cvalve is the valve damping, Fpreload is any preload force adding on the valve, Fm is the fluid momentum force, yvalve is the displacement.
We will have n set of 2nd order ODE's of this manner depending on n number of valves, that have to be solved.
The pressure changes in each chamber is 1st order ODE as given below
We have 3 chambers so 3 similar equations.
The final equation to solve which give us our damper force is the force balance on the piston which as follows:
The solver algorithmn or logic should go as follows:
1.) Input is given at the piston (sine wave for example)
2.) The movement of the piston gives us the oil flow rate going to each chambers and valves
3.) calculate the corresponding pressure drops across valves
4.) update pressure of each chamber
5.) solver final force balance on piston to get output damping force
6.) repeat from step 2 and so on.
The errors did I usually got was Algebraic loops and the solver getting stuck at Initial conditions. I was able to remove these errors with some effort but the pressure in each chamber is not being updated at each step. The final pressure in each chamber (when looking at the result through a scope) is constant (constant value equal to the initial condition).
I have a copy of my model and the parameters removing all the privy data so it should be executable.
  2 Comments
Rik
Rik on 10 Mar 2023
I don't think posting your question as an answer is the best option, since it differs from the question that was answered. Posting a new question is free, I would sugges you accept the best answer, give an upvote to the other (if you feel it is deserving) and post your question in a new thread.
Feel free to post a link in a comment to the question.

Sign in to comment.

Categories

Find more on Fluid Dynamics in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!