Home Search Reference Manuals Return
# # ## Following curves are defined in this file ## ----------------------------------------- ## func char ctrack_design= Tangent_Track ## func char ctrack_design= Curve_R200_h150_t120 ## func char ctrack_design= Curve_L200_h150_t120 ## func char ctrack_design= Curve_R300_h150_t120 ## func char ctrack_design= Curve_L300_h150_t120 ## func char ctrack_design= Curve_R400_h150_t120 ## func char ctrack_design= Curve_L400_h150_t120 ## func char ctrack_design= Curve_R600_h150_t120 ## func char ctrack_design= Curve_L600_h150_t120 ## func char ctrack_design= Curve_R1000_h150_t120 ## func char ctrack_design= Curve_L1000_h150_t120 ## func char ctrack_design= Curve_R1160_h150_t120 ## func char ctrack_design= Curve_L1160_h150_t120 ## func char ctrack_design= Curve_R1300_h150_t120 ## func char ctrack_design= Curve_L1300_h150_t120 ## # # # Definition of designed track geometry # ===================================== # # if_then_char_init ctrack_design .eq. Tangent_Track func const Curve_radius=0. func intpl_r ro_trac_design -100 0 500 0 func intpl_r f_trac_design -100 0 500 0 func intpl_r z_trac_design -100 0 500 0 endif # if_then_char_init ctrack_design .eq. Curve_R200_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 200 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L200_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -200 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_R300_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 300 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L300_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -300 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_R400_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 400 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L400_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -400 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_R600_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 600 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L600_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -600 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_R1000_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 1000 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L1000_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -1000 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_R1160_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 1160 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L1160_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -1160 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_R1300_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 1300 # Curve radius between s1 and s2 func const ha12 0.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif # if_then_char_init ctrack_design .eq. Curve_L1300_h150_t120 func const s-1 -100 # Start of first tangent track func const s0 0 # Start of transition curve func const s1 120 # Start of circular curve func const s2 500 # End of circular curve func const R12 -1300 # Curve radius between s1 and s2 func const ha12 -.150 # Cant between s1 and s2 func const Curve_radius=R12 s_var scalar_0 Curve_radius # Save Curve_radius for postprocessing func inv_init R12inv R12 func operp_init f12 ha12 / bo / 2. func div_init z12b ha12 2.0 func abs_init z12a z12b func copy_init z12 -z12a func intpl_r ro_trac_design s-1 0.0 s0 0.0 s1 R12inv s2 R12inv func intpl_r f_trac_design s-1 0.0 s0 0.0 s1 f12 s2 f12 func intpl_r z_trac_design s-1 0.0 s0 0.0 s1 z12 s2 z12 endif