You are now following this question
- You will see updates in your followed content feed.
- You may receive emails, depending on your communication preferences.
Suggestions for predicting the displacement of a graph or force estimation.
4 views (last 30 days)
Show older comments
Hello
This question is aimed mostly to engineers but whoever believes he can handle it may give his valuable advice.
I have a tabular data set of Load/Displacements in Newton/mm of a material using an Instron Machine, applying compressive forces.
Those data are my reference or gold standard. The same material is depicted on images where unknown forces are applied to the object and the object deforms as it is a rubber material. I want to estimate the forces caused that deformation.
My idea is developing a model that measures each column of the image that the object is depicted under strain. I measure the heigh of the object in each image column and find the difference from the gold standard that I have. Sounds simple right? I was thinking an interpolation method to bridge the gaps between the gold standard and the measured data from the images. E.g. if the gold standard data for 5 Newton is 2 mm displacement from its original position (undeformed material), then how many newtons are required to displace the same object at 5 mm from its original position. Something like that.
Can you help with suggestions and ideas please?
Thanks in advance
23 Comments
Daniel M
on 13 Oct 2019
This is a cool idea. I think it is pretty straightforward, although I don't have any experience with image processing. So the basic idea, is you have data of stress vs strain, and you know that Hooke's law describes the behaviour during the linear portion of the curve (before plastic deformation occurs).
So, get a fit for the linear portion. Since it is linear and there is no force at rest, it should literally just be y = mx. Then process your images to get displacement (x), and plug it into your model and it should output the stress.
I'm sure you could try to create a model to include the nonlinear aspects too. But it would be very complicated to do from first principles. You would probably be better off just doing a spline. But the plastic region of your data will have a much higher variance than the elastic, so this could make it tricky. Hope you have a lot of data.
So, no need to interpolate, do it properly and for your data. You will need a different fit for each material though, because they will all have their different properties such as Young's modulus and futility, yield strength, strain-hardening etc. And I'm not sure where you will apply this too, because real-life material behaviour can vary from a lab setting. Materials in real applications can have defects, degradation, different climate, etc.
Stelios Fanourakis
on 13 Oct 2019
Daniel my rubber material is a nonlinear one hyperelastic. So I am not going to use Hooke's law from begining. The best approach for it is to use an Ogden model. I've already tried this in ANSYS but a Finite Element approach doesn't fit much to my whole Image Processing project that has be done purely in Matlab.
That's why I though about this interpolation approach. The displacement of the object will occur on y axis since they are vertical. I am thinking whether I can use Kalman filter to predict the force having prior knowledge of the stress/strain data of mine. I am not sure since I don't have much practical experience with Kalman filters. Only theoretical.
What kind of spline to use? 6 degree of polynomial?
Daniel M
on 13 Oct 2019
Don't use a spline then, use your Ogden model. Create an equation for the model and tune the parameters by fitting to your data. Especially don't use linear interpolation on a nonlinear system or you are purposely introducing more error into the system. Kalman filter is not applicable because this is not a feedback system, it's just a curve fit.
I think your biggest issue will be in quantifying your uncertainty. How precisely can you get the displacement from your images, how reliable is the fit to your data, what other conditions are not being taken into account, what are the systematics of the experiment, etc. Answering all of these questions are just as important as the actual number you get from your equation. Because if you model isn't validated then it's just a cool gimmick.
Stelios Fanourakis
on 14 Oct 2019
The Ogden model equation is a well known one. How can I use it to plug in the strains and get forces or vice verca? You got any reference on this? Why not Kalman filters? The feedback will be prior knowledge from Instron data for the first point and the next point will have prior information from the first point that has information from the Instron data and that's how it goes for every column of the image.
The accuracy of getting the displacement from images is very high. Almsot 90%. Since I have validated my method of measuring the object's strain from images and is very close to the true values.
Guillaume
on 14 Oct 2019
In terms of imaging, a very popular technique for measuring strain is digital image correlation. It's very accurate and fairly simple to use and gives you a 2D map of strain. See also here for another explanation (they'll happily sell you a system for a lot of money but you can make your own).
I don't know if that's what you're using but if not, you should look into it.
Stelios Fanourakis
on 14 Oct 2019
How do I work with the Ogden model to plug in strain and give me forces?
Stelios Fanourakis
on 14 Oct 2019
Edited: Stelios Fanourakis
on 15 Oct 2019
What I can infer is to create the Ogden model equation in Matlab. Import to this equation the Instron Data (Load/Displacements). Do I need to convert Displacements to Strain values? Do I need a polynomial or a least square interpolation method to curve fit the data?
And what about the displacement or strain data I measure from the images? Will I import them to the Ogden Model like at the previous step? But then again, I don't want to get a new curve fit that resembles the behaviour of the material. I want to plot the strain from images and interpolate between that curve and the curve from Instron to get the forces.
Am I right?
Daniel M
on 15 Oct 2019
Load your data into Matlab, then try using cftool to fit your data. You seem to know what to try, but you don't seem to be trying it.
Stelios Fanourakis
on 15 Oct 2019
Ok I wasn't aware of the cftool. However, I still am a bit confused.
What methodology will I use to curve fit the Ogden model with the Instron data? [Least square model, polynomial model?]
What interpolation method will I use to interpolate the strain of the object measured from images to the curve created previously?
Can you help me?
Stelios Fanourakis
on 15 Oct 2019
There must be a different method to curve fit the Tabular data from Instron with the Ogden model since this is supposed to give me the MU and ALPHA coefficients of the model where the least square or polynomial methods will not give me any coefficients
Daniel M
on 15 Oct 2019
There are a zillion ways to fit the data to your model. You need to start trying them. Get something working, anything. Build your code pipeline from end-to-end. Then go back and reevaluate where you can make improvements. You're asking trivial questions at this point, when you just need to start playing with the data. So much is open-ended right now. You literally haven't even posted the equation or shown a picture of your data. How am I supposed to know what tools to fit it?
Stelios Fanourakis
on 15 Oct 2019
Do you know what method ANSYS uses to solve curve fitting to ogden models?
Stelios Fanourakis
on 16 Oct 2019
Edited: Stelios Fanourakis
on 16 Oct 2019
This is the 1st order Ogden Model I will use to characterize the material behaviour. My data are from Instron and I have only negative forces means compressive forces.
So, I will plug those data to that Ogden model to characterize the lamda stretch ratios of the material as the displacement/original size (I/Io) and the equation will be solved to get the MU and ALPHA.
Have I finished at that point? Do I need to do anything else?
So I just need to match the image's strain measures to that graph to get the relevant forces. Right?
Do I need to account any curve fitting interpolation method?
Daniel M
on 16 Oct 2019
You're trying to make me do the work for you. You can't even write out the equation. Instead you link to a page with a dozen equations on it. I already suggested using cftool as an easy way to fit your data. Next time you respond, it should include a matlab script of stuff you have tried or I'm afraid I can no longer contribute to this post.
Stelios Fanourakis
on 16 Oct 2019
Daniel I'm not trying to make you do the work for me. Before I start writing the script I want to take an experts advice whether my theory is correct (see above comment of mine). To write a piece of code to load the data and apply to them the Ogden model is not something difficult.
What I am asking is whether I need to implement any curve fitting method to the data or the Ogden model on its own will do the curve fitting.
Do I need to apply any interpolation at all to the data from the images? If yes, what is the best approach.
Those are my questions. It's not a matter of code. But I'll do the code as soon as possible and post it here.
Stelios Fanourakis
on 20 Oct 2019
@Daniel. I just tried to use your recommended cftool and I got the following error message.
Data are incompatible for curves.
X data: columnA is 1026x1
Y data: columnB is 1027x1
Data are compatible for surfaces if Z is 1027x1026.
But my data are two columns. 2D. I don't have Z axes or column
Stelios Fanourakis
on 21 Oct 2019
Yes sure. I got the plot and I got a 7 degree polynomial as the best curve fit interpolant for my data.
However, that doesn't answer my initial question. Am I going to use this interpolant along with the Ogden model or not? Is it essential to interpolate among my load/displacement data or just applying the Ogden model is more than enough?
Second question. I know how to convert displacements into strain. How am I going to convert loads into stress for nonlinear materials?
Stelios Fanourakis
on 21 Oct 2019
If Ogden model does not yield any stress or strain can anyone suggest me any statistical model to convert loads into stress and displacements into strain?
Daniel M
on 21 Oct 2019
Is stress not just force divided by cross sectional area?
Do NOT use a 7th order polynomial for anything. Create a function that describes your model, fit the coefficients of your model for each material you have. Then when you need to get stress from a displacement, just plug it into the function you have created with the corresponding coefficients. You do not need to interpolate anything if you have a parametric equation describing the characteristics of your system.
Stelios Fanourakis
on 21 Oct 2019
In other words you tell me to use only the Ogden model. Maybe modified to give me stress out of loads and strain out of displacements.
stress = force / area is for linear objects. Mine since is a nonlinear one, should be more complicated
Daniel M
on 21 Oct 2019
I suggest you try and get your pipeline working on a simple, linear material first. Then, once you have confirmed it works the way you like, to go back and upgrade it to the nonlinear regime.
Answers (0)
See Also
Categories
Find more on Stress and Strain in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!An Error Occurred
Unable to complete the action because of changes made to the page. Reload the page to see its updated state.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom(English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)