Guest User

Untitled

a guest
Feb 21st, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.24 KB | None | 0 0
  1. import math
  2.  
  3. LoadISISNexus(Filename='OFFSPEC00044684.nxs', OutputWorkspace='TOF_44684')
  4. LoadISISNexus(Filename='OFFSPEC00044683.nxs', OutputWorkspace='TRANS_44683')
  5. LoadISISNexus(Filename='OFFSPEC00044685.nxs', OutputWorkspace='TOF_44685')
  6.  
  7.  
  8. def LambdaToQ(Wavelength, ThetaInRadians):
  9. return ((4 * math.pi) * math.sin(ThetaInRadians)) / Wavelength
  10.  
  11. def QToLambda(Q, ThetaInRadians):
  12. return ((4 * math.pi) * math.sin(ThetaInRadians)) / Q
  13.  
  14.  
  15. #FirstWavelengthMin = 1.2
  16. #FirstWavelengthMax = 12
  17. #FirstWavelengthMin = 1.2
  18. #FirstWavelengthMax = 12
  19. #FirstMomentumTransferMin = LambdaToQ(Wavelength=WavelengthMax, ThetaInRadians= math.radians(0.3)) #0.0028800000000000002
  20. #FirstMomentumTransferMax = LambdaToQ(Wavelength=WavelengthMin,ThetaInRadians= math.radians(0.3)) #0.039320000000000001
  21. #SecondMomentumTransferMin = LambdaToQ(Wavelength=WavelengthMax, ThetaInRadians= math.radians(0.5)) #0.0060200000000000002
  22. #SecondMomentumTransferMax = LambdaToQ(Wavelength=WavelengthMin, ThetaInRadians= math.radians(0.5)) # 0.061289999999999997
  23.  
  24. FirstMomentumTransferMin = 0.0028800000000000002
  25. FirstMomentumTransferMax = 0.039320000000000001
  26. SecondMomentumTransferMin = 0.0060200000000000002
  27. SecondMomentumTransferMax = 0.061289999999999997
  28.  
  29. FirstWavelengthMin = QToLambda(Q=FirstMomentumTransferMax, ThetaInRadians=math.radians(0.3))
  30. FirstWavelengthMax = QToLambda(Q=FirstMomentumTransferMin, ThetaInRadians=math.radians(0.3))
  31. SecondWavelengthMin = QToLambda(Q=SecondMomentumTransferMax, ThetaInRadians=math.radians(0.5))
  32. SecondWavelengthMax = QToLambda(Q=SecondMomentumTransferMin, ThetaInRadians=math.radians(0.5))
  33.  
  34. ReflectometryReductionOneAuto(InputWorkspace='TOF_44684',
  35. ProcessingInstructions='390-410',
  36. ThetaIn=0.29999999999999999,
  37. DetectorCorrectionType='RotateAroundSample',
  38. WavelengthMin=FirstWavelengthMin,
  39. WavelengthMax=FirstWavelengthMax,
  40. I0MonitorIndex=1,
  41. MonitorBackgroundWavelengthMin=15,
  42. MonitorBackgroundWavelengthMax=20,
  43. MonitorIntegrationWavelengthMin=2,
  44. MonitorIntegrationWavelengthMax=14,
  45. FirstTransmissionRun='TRANS_44683',
  46. MomentumTransferMin=FirstMomentumTransferMin,
  47. MomentumTransferStep=0.02,
  48. MomentumTransferMax=FirstMomentumTransferMax,
  49. ScaleFactor=1,
  50. OutputWorkspaceBinned='IvsQ_binned_44684_q_range',
  51. OutputWorkspace='IvsQ_44684',
  52. OutputWorkspaceWavelength='IvsLam_44684_q_range', Diagnostics=1)
  53.  
  54. ReflectometryReductionOneAuto(InputWorkspace='TOF_44685',
  55. ProcessingInstructions='390-410',
  56. ThetaIn=0.5,
  57. DetectorCorrectionType='RotateAroundSample',
  58. WavelengthMin=SecondWavelengthMin,
  59. WavelengthMax=SecondWavelengthMax,
  60. I0MonitorIndex=1,
  61. MonitorBackgroundWavelengthMin=15,
  62. MonitorBackgroundWavelengthMax=20,
  63. MonitorIntegrationWavelengthMin=2,
  64. MonitorIntegrationWavelengthMax=14,
  65. FirstTransmissionRun='TRANS_44683',
  66. MomentumTransferMin=SecondMomentumTransferMin,
  67. MomentumTransferStep=0.02,
  68. MomentumTransferMax=SecondMomentumTransferMax,
  69. ScaleFactor=1,
  70. OutputWorkspaceBinned='IvsQ_binned_44685_q_range',
  71. OutputWorkspace='IvsQ_44685_q_range',
  72. OutputWorkspaceWavelength='IvsLam_44685_q_range', Diagnostics=1)
  73.  
  74. Stitch1DMany(InputWorkspaces='IvsQ_binned_44684_q_range,IvsQ_binned_44685_q_range',
  75. OutputWorkspace='IvsQ_44684_44685_q_range',
  76. Params='-0.02',
  77. OutScaleFactors='0.962947')
  78.  
  79.  
  80. def extra():
  81. LoadISISNexus(Filename='/home/ejb/Downloads/SampleData-ISIS/OFFSPEC00044683.nxs', OutputWorkspace='TRANS_44683')
  82. CreateTransmissionWorkspaceAuto(FirstTransmissionRun='TRANS_44683', ProcessingInstructions='390-410', WavelengthMin=1.2, WavelengthMax=12, I0MonitorIndex=1, MonitorBackgroundWavelengthMin=15, MonitorBackgroundWavelengthMax=20, MonitorIntegrationWavelengthMin=2, MonitorIntegrationWavelengthMax=14, StartOverlap=10, EndOverlap=12, OutputWorkspace='test3_normalised')
  83. RenameWorkspace(InputWorkspace='test3_normalised', OutputWorkspace='test3_trans')
  84. RebinToWorkspace(WorkspaceToRebin='test3_trans', WorkspaceToMatch='_LS_2_norm_monitor', OutputWorkspace='test3_trans_rebin')
  85. Divide(LHSWorkspace='_LS_2_norm_monitor', RHSWorkspace='test3_trans_rebin', OutputWorkspace='test3_norm_trans')
  86. CropWorkspace(InputWorkspace='test3_norm_trans', OutputWorkspace='test3_cropped', XMax=11.789999999999999)
  87. ConvertUnits(InputWorkspace='test3_cropped', OutputWorkspace='test3_converted', Target='MomentumTransfer')
Add Comment
Please, Sign In to add comment