Community Tip - Your Friends List is a way to easily have access to the community members that you interact with the most! X
I have several measured data sets. Each dataset will result in a curve with y-axis (ordinate) is its magnitude (in dB) and with x-axis (abscissa) is angle (in degrees). There is fairly large equal spacing between points along their respective abscissa axis, and with accuracy important for this work, interpolation was necessary. I chose to work with a cubic spline to avoid the Runge issue near boundaries.
As you'll see in the attached worksheet, each curve is not perfectly symmetric about zero. Some peak near zero, and some curve's peak is much further away. The goal is to automatically determine an accurate estimate of the angle where the curve's value is 3 dB below the level of the maximum. There should be two such angles - one on either side of zero.
Unfortunately, I'm having difficulty making the symbolic solve and/or solve block to work on just one dataset. But the goal of course is to potentially program this to automatically create a solution for all datasets. I would appreciate some help. Thanks! (newbie alert)
Solved! Go to Solution.
The symbolic solve cannot solve this, as your problem is not described symbolically. You have numeric data.
The solve block will only find one solution, if there is one, and there are ways to control which one it finds by changing the guess value.
Another solver is the root function. Try:
to find the point where fitc(x)=HP_level between -60 and -30.
Success!
Luc
The symbolic solve cannot solve this, as your problem is not described symbolically. You have numeric data.
The solve block will only find one solution, if there is one, and there are ways to control which one it finds by changing the guess value.
Another solver is the root function. Try:
to find the point where fitc(x)=HP_level between -60 and -30.
Success!
Luc
Using localmax function for vector A^(n), you get all max ponts for each DS data.