using System; namespace Science.Physics.GeneralPhysics { /// /// Lens /// public class Lens { public Lens() { } private double r1, r2, f, p, q, n; public double Radius1 { get{return r1;} set{r1=value;} } public double Radius2 { get{return r2;} set{r2=value;} } public double IndexOfRefraction // after given r1, r2 { get{return n;} set{n=value; f = 1.0/((n-1)*(1.0/r1 - 1.0/r2));} } public double FocalLength { get{return f;} set{f=value;} } public double ObjectDistance { get{return p;} set{p=value;} } public double ImageDistance { get{return q;} set{q=value;} } public void FindImageDistance() { q = 1.0/(1.0/f - 1.0/p); } } }