public SecondLabCalculatingObject(TraceLength traceLength, WaveLength waveLength, ThetaDegrees thetaDegrees, RelativeTraceLength relativeTraceLength, DiafragmRadius diafragmRadius, bool isDirected, bool reverseRelativeDistance) { this.traceLength = traceLength; this.waveLength = waveLength; this.thetaDegrees = thetaDegrees; this.relativeTraceLength = relativeTraceLength; this.isDirected = isDirected; this.diafragmRadius = diafragmRadius; this.reverseRelativeDistance = reverseRelativeDistance; }
public void CalculateFresnelZone(double waveLength, double traceLength, double relativeTraceLength, int fresnelZoneRadius, double expected) { WaveLength waveLengthObject = new WaveLength(waveLength, MetricPrefixes.One, UnitsOfMeasurement.Meter); TraceLength traceLengthObject = new TraceLength(traceLength); RelativeTraceLength relativeTraceLengthObject = new RelativeTraceLength(relativeTraceLength, MetricPrefixes.Percents, UnitsOfMeasurement.Percents); SecondLabCalculatingObject slco = new SecondLabCalculatingObject(traceLengthObject, waveLengthObject, null, relativeTraceLengthObject, null, true, true); var nFrenselZone = slco.CalculateNFresnelZone(fresnelZoneRadius).Value; Assert.AreEqual(Math.Ceiling(expected), Math.Ceiling(nFrenselZone)); }