Maple/Depth of field for optical lens
< Maple
> restart; > NULL; > > e1 := (vn-v)/vn = c/d:
> e2 := (v-vf)/vf = c/d:
> e3 := N = f/d:
> e4 := 1/Dn+1/vn = 1/f:
> e5 := 1/Df+1/vf = 1/f:
> e6 := 1/s+1/v = 1/f:
> sys := {e1, e2, e3, e4, e5, e6}; #Set of 6 equations
>var := {Df, Dn, d, v, vf, vn}; #6 variables
>sol := solve(sys,var); #solve the equation set
Find hyperfocal distance
> tm3 := 1/op(op(sol)[1])[2] = 0;
> tm4 := H = solve(tm3, s);
f (f + c N) H = ----------- c N
> > eqf := {tm4, op(sol)[1], op(sol)[2]};
varf := {Df, Dn, c};
/ 2 2 | s f s f < Df = ------------------, Dn = - -------------------, | 2 2 \ f + c N f - c N s -f + c N f - c N s
\ f (f + c N)| H = ----------- > c N | / {Df, Dn, c}
eqf:= {,,};
> solve(eqf, varf);
/ 2 \ | s (H - f) s (H - f) f | < Df = ---------, Dn = -----------, c = --------- > | H - s H - 2 f + s N (H - f)| \ /
>