Find intersection of two guassian curves
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Trisha Kibaya
am 11 Sep. 2018
Bearbeitet: jonas
am 12 Sep. 2018
Hi all these are my two curves:
y1 = p(1)*pdf(n1,xgrid); hold on; plot (xgrid, y1,'b'); % hold off
y2 = p(2)*pdf(n2,xgrid); hold on; plot (xgrid, y2,'r'); % hold off
I need to find the exact x coordinates where this two lines meet.
I tried using:
index_intersection = find(y1 == y2);
but it gives me index_intersection =
1×0 empty double row vector
I also tried:
idx = find (y1 - y2 < eps, 1);
but still didn't get the right coordinates.
Please, is there another alternative? I read online that I could use fzero, but I haven't understood how to use the syntax. Thanks in advance.
3 Kommentare
Akzeptierte Antwort
jonas
am 11 Sep. 2018
Bearbeitet: jonas
am 11 Sep. 2018
If you have only one intersection, then you can just find the minimum difference
[~,idx] = min(abs(y1 - y2))
This will however always output a value even when there is no intersection. Also, the accuracy depends on the resolution of your x-vector, where higher resolution yields better accuracy (this is true for most methods). I always recommend InterX from FEX for finding intersections. It interpolates your data per default for high accuracy.
2 Kommentare
Siehe auch
Kategorien
Mehr zu Probability Distributions finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!