Hello,
I am looking for a function that corresponds to the excel "match" function.
I have an array of (n,32) where n is sated in for loop function as a number of completed loops (so it differs).
DataOutput = zeros(length(phiAStart:phiAStep:phiAEnd),32);
I would like to find the smallest value in column 32 (y) and get the corresponding value in column 1 (x) where y=f(x).
DataOutput(colector,1) = x;
DataOutput(colector,32) = y;
I can not resolve a function (to get x) having y because it's numerically calculated polynomial so I thought about something similar that MATCH function from excel.
Is there any similar function in Matlab or simple script that can be introduced?
I will be thankful for any suggestions or codes that may work.

 Risposta accettata

Mateusz Brzezinski
Mateusz Brzezinski il 20 Feb 2020
Modificato: Mateusz Brzezinski il 20 Feb 2020
number = min(DataOutput(:,32));
position = find(DataOutput(:,32)==number);
matchingx = DataOutput(position,1)
Works just fine

2 Commenti

Steven Lord
Steven Lord il 20 Feb 2020
That will give you all the matching x values. Do you want that or do you want the first such match?
Mateusz Brzezinski
Mateusz Brzezinski il 21 Feb 2020
Modificato: Mateusz Brzezinski il 21 Feb 2020
Ok, so what I have is 3rd derivative (f''') from fuction (f)
f''' always has only one root. I just assigned absf'''=abs(f''') to (DataOutput(colector,32)) so it flips negative values of f''' and I am looking for smalest value of absf''' and code above returnes me only one abs(f''') value.

Accedi per commentare.

Più risposte (2)

Steven Lord
Steven Lord il 20 Feb 2020

0 voti

Call the min function with two outputs. Use the second output to retrieve the corresponding value.

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Prodotti

Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by