system_settings/optic_input_example_lidar.py

changeset 16
313ac320b970
parent 13
f08818615e3a
child 17
43fe065e63b6
--- a/system_settings/optic_input_example_lidar.py	Tue Nov 15 03:47:25 2016 +0100
+++ b/system_settings/optic_input_example_lidar.py	Tue Nov 15 14:17:34 2016 +0100
@@ -4,17 +4,18 @@
 # Due to problems I had with some two letter variables, most variables are now with at least
 # three letters mixed small and capital.
 
+# Do you want to calculate the errors? If not, just the GHK-parameters are determined.
+Error_Calc = True
+
 # Header to identify the lidar system
 # Values of DO, DT, and DR etc. from fit to lamp calibrations in Leipzig (LampCalib_2_invers_c_D0=0.opj)
 EID = "xx"				# Earlinet station ID
 LID = "example lidar" 	# Additional lidar ID (short descriptive text)
-# firet fit intern (FITLN1) => DO = 0, DT fixed -0.9998, eta and DR fitted,
-# => internal calib with LinPol before the receiver
 print("    Lidar system :", EID, ", ", LID)
 
 # +++ IL Laser and +-Uncertainty
 bL = 1.	#degree of linear polarization; default 1
-RotL, dRotL, nRotL 	= 0., 	1., 	1	#alpha; rotation of laser polarization in degrees; default 0
+RotL, dRotL, nRotL 	= 0., 	2., 	1	#alpha; rotation of laser polarization in degrees; default 0
 
 # +++ ME Emitter optics and +-Uncertainty;  default = no emitter optics
 DiE, dDiE, nDiE 	= 0.0, 	0.1, 	0	# Diattenuation
@@ -23,9 +24,9 @@
 RotE, dRotE, nRotE 	= 0., 	1.0, 	0	# beta: Rotation of optical element in degrees
 
 # +++ MO Receiver optics including telescope 
-DiO,  dDiO, nDiO 	= 0.0, 	0.01,   1
+DiO,  dDiO, nDiO 	= 0.0, 	0.1,    1
 TiO 				= 1.0 				
-RetO, dRetO, nRetO 	= 0., 	180., 	2 
+RetO, dRetO, nRetO 	= 0., 	180., 	0 
 RotO, dRotO, nRotO 	= 0., 	0.5, 	0	#gamma: Rotation of optical element in degrees
  
 # +++++ PBS MT Transmitting path defined with TS, TP, PolFilter extinction ratio ERaT, and +-Uncertainty
@@ -34,8 +35,8 @@
 TS,   dTS, nTS	 	= 0.02,	0.01,   1
 RetT, dRetT, nRetT	 = 0.0,	180., 	0 # Retardance in degrees
 #   --- Pol.Filter behind transmitted path of PBS
-ERaT, dERaT, nERaT	 = 0.0001, 0.0001, 1 # Extinction ratio
-RotaT, dRotaT, nRotaT = 0.,     1.,    1 # Rotation of the Pol.-filter in degrees; usually 0° because TP >> TS, but for PollyXTs it can also be 90°
+ERaT, dERaT, nERaT	 = 0.001, 0.001, 1 # Extinction ratio
+RotaT, dRotaT, nRotaT = 0.,   1.,    1 # Rotation of the Pol.-filter in degrees; usually 0° because TP >> TS, but for PollyXTs it can also be 90°
 #   --
 TiT = 0.5 * (TP + TS)
 DiT = (TP-TS)/(TP+TS)
@@ -44,7 +45,7 @@
 
 # +++++ PBS MR Reflecting path defined with RS, RP, PolFilter extinction ratio ERaR  and +-Uncertainty
 #   ---- for PBS without absorption the change of RS and RP must depend on the change of TP and TS. Hence the values and uncertainties are not independent.
-RS_RP_depend_on_TS_TP = True
+RS_RP_depend_on_TS_TP = False
 #   --- Polarizing beam splitter reflecting path
 if(RS_RP_depend_on_TS_TP): 
     RP, dRP, nRP        = 1-TP,  0.00, 0    # do not change this
@@ -52,10 +53,10 @@
 else:
     RP, dRP, nRP        = 0.05,  0.01, 1    # change this if RS_RP_depend_on_TS_TP = False
     RS, dRS, nRS        = 0.98,  0.01, 1    # change this if RS_RP_depend_on_TS_TP = False
-RetR, dRetR, nRetR	    = 0.0,	180., 	0
+RetR, dRetR, nRetR	    = 0.0,   180., 0
 #   --- Pol.Filter behind reflected path of PBS
-ERaR, dERaR, nERaR	  = 0.0001, 0.0001, 1 # Extinction ratio
-RotaR, dRotaR, nRotaR = 90., 	1.,		1  # Rotation of the Pol.-filter in degrees; usually 90° because RS >> RP, but for PollyXTs it can also be 0°
+ERaR, dERaR, nERaR	  = 0.001, 0.001, 1 # Extinction ratio
+RotaR, dRotaR, nRotaR = 90.,   1.,    1  # Rotation of the Pol.-filter in degrees; usually 90° because RS >> RP, but for PollyXTs it can also be 0°
 #   --
 TiR = 0.5 * (RP + RS)
 DiR = (RP-RS)/(RP+RS)
@@ -84,11 +85,11 @@
 	#NOTE: use here twice the HWP-rotation-angle
 	RotC, dRotC, nRotC 	= 0.0, 	0.1, 	1	#constant calibrator offset epsilon
 	RotationErrorEpsilonForNormalMeasurements = True	# 	is in general True for TypeC == 2 calibrator
-elif TypeC == 3:   # linear polarizer calibrator
+elif TypeC == 3:   # linear polarizer calibrator. Diattenuation DiC = (1-ERC)/(1+ERC); ERC = extinction ratio of calibrator
 	DiC, dDiC, nDiC 	= 0.9998, 0.0001, 1	# ideal 1.0
-	TiC = 0.505	# ideal 0.5
+	TiC = 0.4	# ideal 0.5
 	RetC, dRetC, nRetC 	= 0., 	0., 	0
-	RotC, dRotC, nRotC 	= 0.0, 	0.1, 	1	#constant calibrator offset epsilon
+	RotC, dRotC, nRotC 	= 0.0, 	0.1, 	0	#constant calibrator offset epsilon
 	RotationErrorEpsilonForNormalMeasurements = False	# 	is in general False for TypeC == 3 calibrator
 elif TypeC == 4:   # QWP calibrator
 	DiC, dDiC, nDiC 	= 0.0, 	0., 	0	# ideal 1.0
@@ -101,14 +102,14 @@
 	TiC = 1.
 	RetC, dRetC, nRetC 	= 180., 0., 	0
     #Note: use real HWP angles here
-	RotC, dRotC, nRotC 	= 0.0, 	0.1, 	1	#constant calibrator offset epsilon -1.15
+	RotC, dRotC, nRotC 	= 0.0, 	0.1, 	1	#constant calibrator offset epsilon
 	RotationErrorEpsilonForNormalMeasurements = True	# 	is in general True for TypeC == 6 calibrator
 else:
     print ('calibrator not implemented yet')
     sys.exit()
 
-# --- LDRCal assumed atmospheric linear depolarization ratio during the calibration measurements (first guess)
-LDRCal,dLDRCal,nLDRCal= 0.008, 0.003, 0
+# --- LDRCal assumed atmospheric linear depolarization ratio during the calibration measurements in calibration range with almost clean air (first guess)
+LDRCal,dLDRCal,nLDRCal= 0.009, 0.005, 1     # spans the interference filter influence 
 
 # ====================================================
 # NOTE: there is no need to change anything below.

mercurial