
include: S1_LECircle.atf, bladeSide1Label=low, bladeSide2Label=high, \
                          pitchOffsetLabel1=_p, pitchOffsetLabel2=, blade1label=b1,blade2label=b2


Attribute: Periodic Sign=35, 1
Attribute: Periodic Start Vertex= 19
Attribute: Edge Distribution Model= Boundary Layer, 6, 5, 1


# =====================
#  CREATE LE/TE POINTS
# =====================
Attribute: Geometry=CreatePoint.ccl, leb1, Create Pitch Offset Geometry=on, Compute Reference Theta=on, Point Type=LE, Create Alternate Geometry=yes, Blade Number=1
Attribute: Geometry=CreatePoint.ccl, leb2, Point Type=LE, Blade Number=2, Create Alternate Geometry=on, Reference Theta Source=teb2
Attribute: Geometry=CreatePoint.ccl, teb1, Point Type=TE, Blade Number=1, Create Pitch Offset Geometry=yes, Create Alternate Geometry=yes, Compute Reference Theta=on
Attribute: Geometry=CreatePoint.ccl, teb2, Point Type=TE, Blade Number=2, Create Pitch Offset Geometry=no, Create Alternate Geometry=yes, Compute Reference Theta=on
# =====================
#  CREATE BLADE CURVES
# =====================
Attribute: Geometry=CreateBladeCurves.ccl, b1, Create Pitch Offset Geometry=on, Reference Theta Source=leb1, Create Alternate Geometry=yes, Blade Number=1, Blade Label=b1
Attribute: Geometry=CreateBladeCurves.ccl, b2, Blade Number=2, Create Pitch Offset Geometry=no, Create Alternate Geometry=yes, Reference Theta Source=leb2, Blade Label=b2
# =====================
#  EXPOSE BLADE CURVES
# =====================
Attribute: Geometry=Expose.ccl, high b1, Geometry Source=b1, Geometry Reference Name=High
Attribute: Geometry=Expose.ccl, low b1, Geometry Source=b1, Geometry Reference Name=Low
Attribute: Geometry=Expose.ccl, leading closedb1, Geometry Source=b1, Geometry Reference Name=Leading Closed
Attribute: Geometry=Expose.ccl, trailing closedb1, Geometry Source=b1, Geometry Reference Name=Trailing Closed
Attribute: Geometry=Expose.ccl, low fullb1, Geometry Source=b1, Geometry Reference Name=Low Full
Attribute: Geometry=Expose.ccl, high fullb1, Geometry Source=b1, Geometry Reference Name=High Full
Attribute: Geometry=Expose.ccl, leading closed b2, Geometry Source=b2, Geometry Reference Name=Leading Closed
Attribute: Geometry=Expose.ccl, low full b2, Geometry Source=b2, Geometry Reference Name=Low Full
Attribute: Geometry=Expose.ccl, high full b2, Geometry Source=b2, Geometry Reference Name=High Full
Attribute: Geometry=Expose.ccl, high b2, Geometry Source=b2, Geometry Reference Name=High
Attribute: Geometry=Expose.ccl, low b2, Geometry Source=b2, Geometry Reference Name=Low
# ====================
#  IN/OUT DOMAIN
# ====================
# IN
Attribute: Geometry=CreatePoint.ccl, in constant theta, Reference Theta Source=leb1, Point Type=Object and Curve Key, Geometry Object=/GEOMETRY/INLET, Geometry Key=constant theta extended, Set Theta To Reference Theta=on, Create Alternate Geometry=yes
Attribute: Geometry=CreateCurve.ccl, in ext, Create Pitch Offset Geometry=off, Source Point=in constant theta, Curve Type=Rotation, Geometry Object=/GEOMETRY/INLET, Geometry Key=extended full, Create Alternate Geometry=yes
# OUT
Attribute: Geometry=CreatePoint.ccl, out constant theta, Reference Theta Source=teb1, Point Type=Object and Curve Key, Geometry Object=/GEOMETRY/OUTLET, Geometry Key=constant theta extended, Set Theta To Reference Theta=on, Create Alternate Geometry=yes
Attribute: Geometry=CreateCurve.ccl, out ext, Create Pitch Offset Geometry=off, Source Point=out constant theta, Curve Type=Rotation, Geometry Object=/GEOMETRY/OUTLET, Geometry Key=extended full, Create Alternate Geometry=yes
# =============
# FOCAL POINTS
# =============
# LE
Attribute: Geometry=CreatePoint.ccl, le focal pointb1, Create Pitch Offset Geometry=on, Reference Theta Source=leb1, Point Type=LEFocal, Create Alternate Geometry=yes, Blade Number=1
Attribute: Geometry=CreatePoint.ccl, leb2 focal point, Point Type=LEFocal, Blade Number=2, Create Alternate Geometry=on, Reference Theta Source=leb2
# TE
Attribute: Geometry=CreatePoint.ccl, te focal pointb1, Create Pitch Offset Geometry=off, Reference Theta Source=teb1, Point Type=TEFocal, Create Alternate Geometry=yes, Blade Number=1
Attribute: Geometry=CreatePoint.ccl, teb2 focal point, Point Type=TEFocal, Blade Number=2, Create Alternate Geometry=on, Reference Theta Source=teb2
# ========================
# TRANSLATED FOCAL POINTS
# ========================
Attribute: Geometry=TranslatedPoint.ccl, le focal point highb1, Source Point=le focal pointb1, Pitch Multiple=1
Attribute: Geometry=TranslatedPoint.ccl, te focal point highb1, Source Point=te focal pointb1, Pitch Multiple=1
# =========================
# LE PASSAGE FOCAL CURVE 
# ===================-=====
Attribute: Geometry=CurveFromPoints.ccl, le passage focal ext, Point List=le focal pointb1$ le focal point highb1
# ==================================
# LE PASSAGE FOCAL CURVE END POINTS
# ===================-==============
Attribute: Geometry=ProjectedPoint.ccl, le passage high, Source Point=le focal high, Projection Object=low fullb1, Use Pitch Offset Projection Object=on, Reprojection Object=le passage focal, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, le passage low, Source Point=le focal low, Projection Object=high fullb1, Use Pitch Offset Projection Object=off, Reprojection Object=le passage focal, Working Space=Transformed
# ======================
# LE FOCAL LOW HIGH POINTS AND CURVE
# ================-=====
Attribute: Geometry=ProjectedPoint.ccl, le focal low, Source Point=le focal pointb1, Use Pitch Offset Source Point=true, Projection Object=high fullb1, Reprojection Object=le passage focal ext, Reprojection Iteration Count=100, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, le focal high, Source Point=le focal pointb1, Use Pitch Offset Source Point=false, Projection Object=low fullb1, Use Pitch Offset Projection Object=true, Reprojection Object=le passage focal ext, Reprojection Iteration Count=100, Working Space=Transformed
Attribute: Geometry=CurveFromPoints.ccl, le focal, Point List=le focal high$ le focal low
# ===================
#  LE TO INLET, POINT CURVE
# ===================
Attribute: Geometry=ProjectedPoint.ccl, in leb1 proj, Source Point=leb1, Projection Object=in ext, Create Pitch Offset Geometry=on, Reprojection Object=leading closedb1, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, leb1 proj, Source Point=in leb1 proj, Projection Object=leading closedb1, Create Pitch Offset Geometry=on, Working Space=Transformed
Attribute: Geometry=CurveFromPoints.ccl, in leb1, Point List=in leb1 proj$ leb1 proj, Create Pitch Offset Geometry=true
# SAME AS ABOVE, HOWEVER TOPOLOGIES USING THIS NAME
Attribute: Geometry=CurveFromPoints.ccl, in to leb1 proj, Point List=leb1 proj$ in leb1 proj, Create Pitch Offset Geometry=on
# SAME AS ABOVE ? Attribute: Geometry=CurveFromPoints.ccl, in to leb1 proj, Point List=leb1 proj$ in leb1 proj, Create Pitch Offset Geometry=on
# ===================
#  TE TO OUTLET, POINT CURVE
# ===================
Attribute: Geometry=ProjectedPoint.ccl, out teb1 proj, Source Point=teb1, Projection Object=out ext, Create Pitch Offset Geometry=on, Reprojection Object=trailing closedb1, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, teb1 proj, Source Point=out teb1 proj, Projection Object=trailing closedb1, Create Pitch Offset Geometry=on, Working Space=Transformed
Attribute: Geometry=CurveFromPoints.ccl, out to teb1 proj, Point List=out teb1 proj$ teb1 proj, Create Pitch Offset Geometry=true
# =====================================
#         TE FOCAL CURVE 
# AT OUTLET CREATE A FEW FOCAL CURVES
# INDIVIDUAL ONES FOR TWO PASSAGES (LOW AND HIGH)
# AND ONE BETWEEN MAIN TO MAIN BLADE
# FOCAL LOW AND HIGH ARE STANDARD ONE 
# ====================================
Attribute: Geometry=CurveFromPoints.ccl, te passage focal low ext,  Point List=te focal pointb1$ teb2 focal point
Attribute: Geometry=CurveFromPoints.ccl, te passage focal high ext, Point List= teb2 focal point$ te focal point highb1
# ======================================
# TE FOCAL LOW HIGH POINTS - LOW PASSAGE
# ================-=====================
Attribute: Geometry=ProjectedPoint.ccl, te focalL low, Source Point=teb2 focal point, Use Pitch Offset Source Point=false, Projection Object=high fullb1, Reprojection Object=te passage focal low ext, Reprojection Iteration Count=100, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, te focalL high, Source Point=te focal pointb1, Use Pitch Offset Source Point=false, Projection Object=low full b2, Use Pitch Offset Projection Object=false, Reprojection Object=te passage focal low ext, Reprojection Iteration Count=100, Working Space=Transformed
# =======================================
# TE FOCAL LOW HIGH POINTS - HIGH PASSAGE
# ================-=======================
Attribute: Geometry=ProjectedPoint.ccl, te focalH low,  Source Point= te focal point highb1, Use Pitch Offset Source Point=false, Projection Object=high full b2, Reprojection Object=te passage focal high ext, Reprojection Iteration Count=100, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, te focalH high, Source Point= teb2 focal point, Use Pitch Offset Source Point=false, Projection Object= low fullb1,Use Pitch Offset Projection Object=true, Reprojection Object=te passage focal high ext, Reprojection Iteration Count=100, Working Space=Transformed
# ================
# TE FOCAL CURVES
# ================
Attribute: Geometry=CurveFromPoints.ccl, te  focal low,  Point List= te focalL low$ te focalL high
Attribute: Geometry=CurveFromPoints.ccl, te  focal high, Point List= te focalH low$ te focalH high
Attribute: Geometry=CurveFromPoints.ccl, te focal,Point List= te focalL low$ te focalL high$  te focalH low$ te focalH high
# =============================
# MAIN PASSAGE PARAMETRIZATION
# =============================
Attribute: Geometry=PassageParameterization.ccl, main passage, NE Point=te focalH high, SE Point=te focalL low, NW Point=le focal high, SW Point=le focal low, S Curve=high fullb1, N Curve=low fullb1, Use Pitch Offset N Curve=true, W Curve=le focal, E Curve=te focal
# ===============================================
# LOCATE BLADE2 LE FOCAL IN MAIN PASSAGE PARAMETRIZATION
#  AND GET CURVE OUT
# ===============================================
Attribute: Geometry=PassageCurve.ccl, constLEb2, Passage Curve Type=Constant U From Point, Passage Parameterization Source=main passage, Source Point=leb2 focal point, Passage Curve Direction=Both
# =======================================================
# EXTRA POINtTS FOR LOW NAD HIGH PASSAGE PARAMETRIZATION
#  FROM "constLEb2"
# =======================================================
Attribute: Geometry=ProjectedPoint.ccl, lowpassWS, Source Point=leb2 focal point, Use Pitch Offset Source Point=false, Projection Object=constLEb2, Reprojection Object=low b1, Reprojection Iteration Count=50, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, lowpassWN, Source Point=leb2 focal point, Use Pitch Offset Source Point=false, Projection Object=constLEb2, Reprojection Object=low b2, Reprojection Iteration Count=50, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, highpassWS, Source Point=leb2 focal point, Use Pitch Offset Source Point=false, Projection Object=constLEb2, Reprojection Object=high b2, Reprojection Iteration Count=50, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, highpassWN, Source Point=leb2 focal point, Use Pitch Offset Source Point=false, Projection Object=constLEb2, Reprojection Object=high b1, Use Pitch Offset Reprojection Object=true, Reprojection Iteration Count=50, Working Space=Transformed
# =====================================
# LOW AND HIGH PASSAGE PARAMETRIZATION
# =====================================
Attribute: Geometry=PassageParameterization.ccl, low passage, SW Point=lowpassWS, NW Point=lowpassWN, SE Point= te focalL low, NE Point= te focalL high, Use Pitch Offset NE Point=false, W Curve=constLEb2, E Curve=te focal low, S Curve=high b1, N Curve=low b2, Use Pitch Offset N Curve=false
Attribute: Geometry=PassageParameterization.ccl, high passage, SW Point=highpassWS, NW Point=highpassWN, SE Point= te focalH low, NE Point= te focalH high, W Curve=constLEb2, E Curve=te focal high, S Curve=high b2, N Curve=low b1, Use Pitch Offset N Curve=true
# =================================
# THE REST OF PASSAGE FOCAL CURVES
# =================================
Attribute: Geometry=PassageCurve.ccl, le passage focal, Passage Curve Type=LE Pinning Line, Passage Parameterization Source=main passage, Pinning Line Model=Rounded
Attribute: Geometry=PassageCurve.ccl, te pass focalL, Passage Curve Type=TE Pinning Line, Passage Parameterization Source=low passage,  Pinning Line Model=Rounded
Attribute: Geometry=PassageCurve.ccl, te pass focalH, Passage Curve Type=TE Pinning Line, Passage Parameterization Source=high passage, Pinning Line Model=Rounded
# ==============================================
# THE REST OF PASSAGE FOCAL CURVES - END POINTS
# ==============================================
Attribute: Geometry=PointOnCurve.ccl, te pass focalL low, Curve Object=te pass focalL, Location Method=Beginning
Attribute: Geometry=PointOnCurve.ccl, te pass focalL high, Curve Object=te pass focalL, Location Method=End
Attribute: Geometry=PointOnCurve.ccl, te pass focalH low, Curve Object=te pass focalH, Location Method=Beginning
Attribute: Geometry=PointOnCurve.ccl, te pass focalH high, Curve Object=te pass focalH, Location Method=End

# =====================
#  BLADE 2 PROXIMITY
# =====================
Attribute: Geometry=SplitterProximityGeometry.ccl, b2 proximity, Blade End=LE, Source Point=leb2, Passage Parameterization Source=main passage, High Blade Curve=high b2, Low Blade Curve=low b2, Main Passage Curve=mpc, Splitter Low Passage Curve=slpc, Splitter High Passage Curve=shpc
# ===========================
#  BLADE 2 PROXIMITY CURVES
# ==========================
Attribute: Geometry=Expose.ccl, slpc, Geometry Source=b2 proximity, Geometry Reference Name=Splitter Low Passage Curve
Attribute: Geometry=Expose.ccl, mpc, Geometry Source=b2 proximity, Geometry Reference Name=Main Passage Curve
Attribute: Geometry=Expose.ccl, shpc, Geometry Source=b2 proximity, Geometry Reference Name=Splitter High Passage Curve
# ===========================
#  BLADE 2 PROXIMITY POINTS
# ==========================
Attribute: Geometry=PointOnCurve.ccl, mpc low, Curve Object=mpc, Location Method=Beginning
Attribute: Geometry=PointOnCurve.ccl, mpc high, Curve Object=mpc, Location Method=End
Attribute: Geometry=PointOnCurve.ccl, slpc low, Curve Object=slpc, Location Method=Beginning
Attribute: Geometry=PointOnCurve.ccl, slpc high, Curve Object=slpc, Location Method=End
Attribute: Geometry=PointOnCurve.ccl, shpc low, Curve Object=shpc, Location Method=Beginning
Attribute: Geometry=PointOnCurve.ccl, shpc high, Curve Object=shpc, Location Method=End
# =======================
#  MAIN BLADE PROXIMITY
# =======================
Attribute: Geometry=ComputeDistance.ccl, inlet to leb1proj, Source Point=in leb1 proj, Use Pitch Offset Source Point=false, Second Source Point=leb1 proj, Use Pitch Offset Source Point=false, Working Space=Transformed
Attribute: Geometry=MainBladeProximityGeometry.ccl, le circle geom, Blade End=LE, Passage Parameterization Source=main passage, Distance To Opening Source=inlet to leb1proj, Source Point=le focal pointb1, High Blade Curve=high b1, Low Blade Curve=low b1, Circle Curve=leb1 circle, Main Passage Curve=nle passage
Attribute: Geometry=Expose.ccl, leb1 circle, Geometry Source=le circle geom, Geometry Reference Name=Circle Curve
Attribute: Geometry=Expose.ccl, nle passage, Geometry Source=le circle geom, Geometry Reference Name=Main Passage Curve
# =================================
#  MAIN BLADE PROXIMITY END POINTS
# =================================
Attribute: Geometry=PointOnCurve.ccl, nle passage low, Curve Object=nle passage, Location Method=Beginning
Attribute: Geometry=PointOnCurve.ccl, nle passage high, Curve Object=nle passage, Location Method=End
# ================================
#  LE CIRCLE INTERSECTIONS
# ================================
Attribute: Geometry=ProjectedPoint.ccl, high b1 by leb1 circle, Source Point=teb1, Use Pitch Offset Source Point=false, Projection Object=leb1 circle, Reprojection Object=high b1, Reprojection Iteration Count=10, Create Pitch Offset Geometry=true, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, low  b1 by leb1 circle, Source Point=teb1, Use Pitch Offset Source Point=false, Projection Object=leb1 circle, Reprojection Object=low b1, Reprojection Iteration Count=10, Create Pitch Offset Geometry=true, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, in to leb1 by leb1 circle, Source Point=in leb1 proj, Use Pitch Offset Source Point=false, Projection Object=leb1 circle, Reprojection Object=in leb1, Reprojection Iteration Count=10, Create Pitch Offset Geometry=true, Working Space=Transformed
#
Attribute: Geometry=ProjectedPoint.ccl, le passage focal by leb1 circle low, Source Point=le focal pointb1, Use Pitch Offset Source Point=true, Projection Object=leb1 circle, Reprojection Object=le passage focal, Reprojection Iteration Count=10, Create Pitch Offset Geometry=false, Working Space=Transformed
Attribute: Geometry=ProjectedPoint.ccl, le passage focal by leb1 circle high, Source Point=le focal pointb1, Use Pitch Offset Source Point=false, Projection Object=leb1 circle, Use Pitch Offset Projection Object=true, Reprojection Object=le passage focal, Reprojection Iteration Count=10, Create Pitch Offset Geometry=false, Working Space=Transformed

Attribute: Geometry=ComputeDistance.ccl, le to inlet, Source Point=in leb1 proj, Second Source Point=leb1 proj, Working Space=Transformed
Attribute: Domain Connection=Local Upstream, in ext, Local Downstream, out ext, Global Inlet, in ext, Global Outlet, out ext
