I’m trying to plot the intersection of a Sum function with a horizontal line and automatically highlight the intersection points.

The code below shows my knowledge of Mathematica and for different values of “d” I am calculating with Solve the intersection points (ex p1,p2 and p3) and manually typing the value in the Epilog option. I tried Point({p1,1}) but it doesn’t work. I also tried it with MeshFunctions -> {g(#) – f(#) &}, Mesh -> {{0}}, MeshStyle ->

PointSize(Large) but I get an error “functions must be pure functions”. I would also like to be able to define the ranges of “d” and “pc” as {d, {min,max,incr}} instead of a list.

Thanks in advance.

```
np = 2
f(pc_) := 1
q(d_, pc_) := (pc/(100*0.48)) *
Sum(((Pi/4)*(d - (2*n*0.48))^2), {n, 1, np})
p(d_) := Sum(Pi*(d - (2*n - 1)*0.48), {n, 1, np})
p1 = Solve(q(20, pc)/p(20) == f(pc), pc)
p2 = Solve(q(10, pc)/p(10) == f(pc), pc)
p3 = Solve(q(8, pc)/p(8) == f(pc), pc)
g(d_, pc_) := q(d, pc)/p(d)
Plot({Evaluate(Table(g(d, pc), {d, {8, 10, 20}})), f(pc)}, {pc, 0,
50}, PlotRange -> All, AxesLabel -> {"%", "li/lp"},
FrameLabel -> {Style("pc", 12, Bold), Style("li/lp", 12, Bold)},
PlotLabels -> {"d=8", "d=10", "d=20"}, PlotTheme -> "Scientific",
GridLines -> Automatic, PlotLabel -> "Razão comprimentos",
Epilog -> {PointSize(0.02), Point({10.6053, 1}), Point({23.6134, 1}),
Point({31.2426, 1})})
```