def substrat(x): inputW = Gauss(r, r, 0, x) result = coupling(inputW.func, outputW.func) if result > substrat.maxVal: substrat.maxVal = result substrat.maxArg = x return result
def angular_yz(fi): d = 2*toRadians(fi)*r/div_angle cylinder = Gauss(*w, a=0, b=main.max_coupling_point-d) return coupling(planar.func, cylinder.func)
def angular(fi): r1 = r / math.cos(fi * math.pi / 180) cylinder = Gauss(r, r1, a=0, b=main.max_coupling_point) return coupling(planar.func, cylinder.func)
def intersect(r, x): cylinder = Gauss(r, r, x[0], x[1]) return coupling(planar.func, cylinder.func)
def traversal(d): w1 = divergence(w, d, lam) cylinder = Gauss(*w1, a=0, b=main.max_coupling_point) return coupling(planar.func, cylinder.func)
def backreflection(fi): d = 2 * toRadians(fi / 2) * r / div_angle cylinder = Gauss(*w, a=0, b=main.max_coupling_point - d) return coupling(reflection_cylinder.func, cylinder.func)