nirfmxvna 26.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. nirfmxvna/__init__.py +106 -0
  2. nirfmxvna/attributes.py +2234 -0
  3. nirfmxvna/enums.py +1048 -0
  4. nirfmxvna/errors.py +96 -0
  5. nirfmxvna/examples/nirfmxvna_calibration_with_calset_save_two_port.py +186 -0
  6. nirfmxvna/examples/nirfmxvna_pulsed_s_params.py +174 -0
  7. nirfmxvna/examples/nirfmxvna_s_params_corrected_with_calset_load_two_port_grpc.py +234 -0
  8. nirfmxvna/examples/nirfmxvna_waves.py +174 -0
  9. nirfmxvna/grpc_session_options.py +64 -0
  10. nirfmxvna/internal/_custom_types.py +13 -0
  11. nirfmxvna/internal/_grpc_stub_interpreter.py +1757 -0
  12. nirfmxvna/internal/_helper.py +387 -0
  13. nirfmxvna/internal/_library.py +3790 -0
  14. nirfmxvna/internal/_library_interpreter.py +3011 -0
  15. nirfmxvna/internal/_library_singleton.py +53 -0
  16. nirfmxvna/internal/nidevice_pb2.py +37 -0
  17. nirfmxvna/internal/nidevice_pb2_grpc.py +3 -0
  18. nirfmxvna/internal/nirfmxvna_pb2.py +1094 -0
  19. nirfmxvna/internal/nirfmxvna_pb2_grpc.py +9990 -0
  20. nirfmxvna/internal/session_pb2.py +33 -0
  21. nirfmxvna/internal/session_pb2_grpc.py +3 -0
  22. nirfmxvna/iq.py +31 -0
  23. nirfmxvna/iq_configuration.py +290 -0
  24. nirfmxvna/iq_results.py +108 -0
  25. nirfmxvna/marker.py +31 -0
  26. nirfmxvna/marker_configuration.py +429 -0
  27. nirfmxvna/marker_results.py +168 -0
  28. nirfmxvna/s_params.py +31 -0
  29. nirfmxvna/s_params_configuration.py +1656 -0
  30. nirfmxvna/s_params_results.py +244 -0
  31. nirfmxvna/vna.py +12920 -0
  32. nirfmxvna/waves.py +31 -0
  33. nirfmxvna/waves_configuration.py +1255 -0
  34. nirfmxvna/waves_results.py +235 -0
  35. nirfmxvna-26.3.0.dist-info/METADATA +228 -0
  36. nirfmxvna-26.3.0.dist-info/RECORD +38 -0
  37. nirfmxvna-26.3.0.dist-info/WHEEL +4 -0
  38. nirfmxvna-26.3.0.dist-info/licenses/LICENSE +30 -0
@@ -0,0 +1,2234 @@
1
+ """attributes.py - Contains the ID of all attributes belongs to the module."""
2
+
3
+ from enum import Enum
4
+
5
+
6
+ class AttributeID(Enum):
7
+ """This enum class contains the ID of all attributes belongs to the module."""
8
+
9
+ TRIGGER_TYPE = 13631554
10
+ r"""Specifies the trigger type.
11
+
12
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
13
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
14
+ information about the string syntax for named signals.
15
+
16
+ The default value is **None**.
17
+
18
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
19
+ | Name (Value) | Description |
20
+ +==================+==========================================================================================================================+
21
+ | None (0) | No trigger is configured. |
22
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
23
+ | Digital Edge (1) | The trigger is asserted when a digital edge is detected. You can specify the source of the digital edge using the |
24
+ | | Digital Edge Source attribute. |
25
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
26
+ | Software (2) | The trigger is asserted when you send a software trigger. Use |
27
+ | | RFmxVNA Send Software Edge Trigger method to send a software trigger. RFmx ignores Software Edge Trigger when |
28
+ | | performing Calibration. |
29
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
30
+ """
31
+
32
+ DIGITAL_EDGE_TRIGGER_SOURCE = 13631555
33
+ r"""Specifies the terminal name used as the source for asserting a digital edge trigger. This attribute is used only when
34
+ you set the :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_TYPE` attribute to **Digital Edge**.
35
+
36
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
37
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
38
+ information about the string syntax for named signals.
39
+
40
+ The default of this attribute is "" (empty string).
41
+ """
42
+
43
+ DIGITAL_EDGE_TRIGGER_EDGE = 13631556
44
+ r"""Specifies the edge of the digital-signal used to assert a digital edge trigger. This attribute is used only when you
45
+ set the :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_TYPE` attribute to **Digital Edge**.
46
+
47
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
48
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
49
+ information about the string syntax for named signals.
50
+
51
+ The default value is **Rising Edge**.
52
+
53
+ +------------------+----------------------------------------------------------------+
54
+ | Name (Value) | Description |
55
+ +==================+================================================================+
56
+ | Rising Edge (0) | The trigger asserts on the rising edge of the digital-signal. |
57
+ +------------------+----------------------------------------------------------------+
58
+ | Falling Edge (1) | The trigger asserts on the falling edge of the digital-signal. |
59
+ +------------------+----------------------------------------------------------------+
60
+ """
61
+
62
+ TRIGGER_MODE = 13631557
63
+ r"""Specifies the trigger mode. Trigger Mode decides how many data points are acquired for each asserted trigger.
64
+
65
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
66
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
67
+ information about the string syntax for named signals.
68
+
69
+ The default value is **Signal**.
70
+
71
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
72
+ | Name (Value) | Description |
73
+ +==============+==========================================================================================================================+
74
+ | Signal (0) | VNA waits for asserting only one instance of trigger before acquiring all data points for the configured measurements |
75
+ | | in the RFmxVNA Signal namespace. You can specify the RFmxVNA Signal name using Selector Strings attribute. |
76
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
77
+ | Sweep (1) | All data points that share a source port are acquired after VNA asserts one instance of the trigger. |
78
+ | | For example, when you |
79
+ | | measure S11 and S22 at 10 frequency points using a 2-port VNA, after asserting the first instance of trigger, the |
80
+ | | device completes all acquisitions that require VNA port 1 as source. Upon asserting the second trigger, the device |
81
+ | | completes all acquisitions that require VNA port 2 as source. |
82
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
83
+ | Point (2) | VNA acquires only one data point for each trigger instance that it asserts. |
84
+ | | For example, when you |
85
+ | | measure S11 and S22 at 10 frequency points using a 2-port VNA, the device will assert a total of 20 trigger instances |
86
+ | | to complete all acquisitions. |
87
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
88
+ | Segment (3) | When Sweep Type attribute is set to Segment, all data points within a segment that share a source port are acquired |
89
+ | | after VNA asserts one instance of the trigger. |
90
+ | | For example, when measuring S11 and S22 using a 2-port VNA across 2 frequency segments, each containing 4 frequency |
91
+ | | points, after the first trigger is asserted, the device completes all acquisitions in the first segment that require |
92
+ | | VNA port 1 as source. Upon asserting the second trigger, the device completes all acquisitions in the second segment |
93
+ | | that require VNA port 1 as source. On the third trigger, the device completes all acquisitions in the first segment |
94
+ | | that require VNA port 2 as source. On the fourth trigger, the device completes all acquisitions in the second segment |
95
+ | | that require VNA port 2 as source. Therefore, a total of 4 triggers are required to complete all acquisitions of both |
96
+ | | segments for both source ports. |
97
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
98
+ """
99
+
100
+ TRIGGER_DELAY = 13631600
101
+ r"""Specifies the delay between the instance when the analyzer receives a trigger and the instance when it starts
102
+ acquiring.
103
+
104
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
105
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
106
+ information about the string syntax for named signals.
107
+
108
+ The default value is 0 s.
109
+ """
110
+
111
+ READY_FOR_TRIGGER_EVENT_OUTPUT_TERMINAL = 13631587
112
+ r"""Specifies the destination terminal name for the Ready For Trigger event. This event indicates to an external device
113
+ responsible for sending triggers that the VNA is ready to receive the trigger. Use
114
+ :py:attr:`~nirfmxvna.attributes.AttributeID.READY_FOR_TRIGGER_EVENT_LEVEL` to define the polarity.
115
+
116
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
117
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
118
+ information about the string syntax for named signals.
119
+
120
+ The default of this attribute is "" (empty string).
121
+ """
122
+
123
+ READY_FOR_TRIGGER_EVENT_TERMINAL_NAME = 13631588
124
+ r"""Returns the fully qualified signal name as string.
125
+
126
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
127
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
128
+ information about the string syntax for named signals.
129
+
130
+ The default of this attribute is "" (empty string).
131
+ """
132
+
133
+ READY_FOR_TRIGGER_EVENT_LEVEL = 13631589
134
+ r"""Specifies the trigger level for the Ready For Trigger event. This event indicates to an external device responsible for
135
+ sending triggers that the VNA is ready to receive the trigger.
136
+
137
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
138
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
139
+ information about the string syntax for named signals.
140
+
141
+ The default value is **Active Low**.
142
+
143
+ The :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_MODE` you configure determines the number of triggers
144
+ needed for the VNA to complete the measurement. It also affects how often the **ready for trigger** event changes
145
+ polarity. For example, when measuring S11 and S22 using a 2-port VNA with
146
+ :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_TYPE` set to **Digital** or **Software**, and the **ready for
147
+ trigger** event polarity set to **Active Low**, the polarity behavior for various
148
+ :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_MODE` will be as follows:
149
+ 1.
150
+ :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_MODE` is **Signal**: the VNA waits for only one instance
151
+ of the trigger to be asserted before acquiring all data points. When VNA is ready to receive the trigger, the ready
152
+ event polarity is LOW and switches to HIGH after a trigger is asserted.
153
+
154
+ 2.
155
+ :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_MODE` is **Sweep**: the VNA waits for one instance of the
156
+ trigger to be asserted before acquiring all data points that share a source port. When VNA is ready to receive the
157
+ first trigger, the ready event polarity is LOW and switches to HIGH after the first trigger is asserted. The polarity
158
+ remains HIGH until VNA completes all the acquisitions that require VNA port 1 as the source. When VNA is ready to
159
+ receive the second trigger, the ready event polarity switches to LOW. Upon assertion of the second trigger, the
160
+ polarity switches to HIGH.
161
+
162
+ 3.
163
+ :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_MODE` is **Point**: the VNA waits for one instance of the
164
+ trigger to be asserted before acquiring each data point. When VNA is ready to acquire a data point, the ready event
165
+ polarity is LOW, and switches to HIGH after a trigger is asserted. The polarity remains HIGH until VNA is ready to
166
+ acquire the next data point.
167
+
168
+ 4.
169
+ :py:attr:`~nirfmxvna.attributes.AttributeID.TRIGGER_MODE` is **Segment** with segmented sweep across two
170
+ frequency segments: the VNA waits for one instance of the trigger to be asserted before acquiring all data points
171
+ within a segment that share a source port. When VNA is ready to receive the first trigger, the ready event polarity is
172
+ LOW and switches to HIGH after the first trigger is asserted. The polarity remains HIGH until the VNA completes all the
173
+ acquisitions for the first segment that require VNA port 1 as the source, and until the VNA is ready to receive the
174
+ second trigger. When VNA is ready to receive the second trigger, the ready event polarity switches to LOW. Upon
175
+ assertion of the second trigger, the polarity switches to HIGH. The polarity remains HIGH until VNA completes all the
176
+ acquisitions for the second segment that require VNA port 1 as the source. The VNA is then ready to receive the second
177
+ trigger, at which point the ready event polarity switches to LOW. Upon assertion of the second trigger, the polarity
178
+ switches to HIGH and remains HIGH until the VNA completes all acquisitions for the second segment that require VNA port
179
+ 1 as the source. The ready event polarity follows the same behavior for the third and fourth trigger instances, which
180
+ are required to complete all acquisitions for the first and second segments that require VNA port 2 as the source,
181
+ respectively.
182
+
183
+ +-----------------+----------------------------------------------------------------+
184
+ | Name (Value) | Description |
185
+ +=================+================================================================+
186
+ | Active High (0) | Event level is HIGH when analyzer is ready to receive trigger. |
187
+ +-----------------+----------------------------------------------------------------+
188
+ | Active Low (1) | Event level is LOW when analyzer is ready to receive trigger. |
189
+ +-----------------+----------------------------------------------------------------+
190
+ """
191
+
192
+ INDEX_EVENT_OUTPUT_TERMINAL = 13631590
193
+ r"""Specifies the destination terminal name for the Index event. This event indicates that the analyzer has completed all
194
+ acquisitions for the signal. Use :py:attr:`~nirfmxvna.attributes.AttributeID.INDEX_EVENT_LEVEL` to define the polarity.
195
+
196
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
197
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
198
+ information about the string syntax for named signals.
199
+
200
+ The default of this attribute is "" (empty string).
201
+ """
202
+
203
+ INDEX_EVENT_TERMINAL_NAME = 13631591
204
+ r"""Returns the fully qualified signal name as string.
205
+
206
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
207
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
208
+ information about the string syntax for named signals.
209
+
210
+ The default of this attribute is "" (empty string).
211
+ """
212
+
213
+ INDEX_EVENT_LEVEL = 13631592
214
+ r"""Specifies the trigger level for the Index event. This event indicates that the analyzer has completed all acquisitions
215
+ for the signal.
216
+
217
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
218
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
219
+ information about the string syntax for named signals.
220
+
221
+ The default value is **Active Low**.
222
+
223
+ For example, when measuring S-Parameters for a DUT with event polarity set to **Active Low**, the index event
224
+ polarity remains HIGH until VNA completes all the acquisitions for the DUT and then switches to LOW.
225
+
226
+ +-----------------+--------------------------------------------------------------------------------------+
227
+ | Name (Value) | Description |
228
+ +=================+======================================================================================+
229
+ | Active High (0) | Event level is HIGH when analyzer has completed all the acquisitions for the signal. |
230
+ +-----------------+--------------------------------------------------------------------------------------+
231
+ | Active Low (1) | Event level is LOW when analyzer has completed all the acquisitions for the signal. |
232
+ +-----------------+--------------------------------------------------------------------------------------+
233
+ """
234
+
235
+ SWEEP_TYPE = 13631534
236
+ r"""Specifies the sweep type for the measurement.
237
+
238
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
239
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
240
+ information about the string syntax for named signals.
241
+
242
+ The default value is **List**.
243
+
244
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
245
+ | Name (Value) | Description |
246
+ +==============+==========================================================================================================================+
247
+ | List (0) | The frequency is swept in arbitrary frequency steps. |
248
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
249
+ | Linear (1) | The frequency is swept in equidistant steps over the frequency range. |
250
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
251
+ | Segment (2) | The frequency is swept in frequency sub-sweeps, called segments. |
252
+ | | For each segment, you can define independent values for settings like IF bandwidth, dwell time, source power level and |
253
+ | | test receiver attenuation. |
254
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
255
+ | CW Time (4) | The sweep is performed repeatedly on a single frequency and the measurement results are displayed versus time. |
256
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
257
+ """
258
+
259
+ FREQUENCY_LIST = 13631490
260
+ r"""Specifies the frequency values for the configured measurements. The frequencies must be in ascending order and must not
261
+ contain duplicates. This attribute is used only when you set the
262
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **List**. This value is expressed in Hz.
263
+
264
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
265
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
266
+ information about the string syntax for named signals.
267
+
268
+ The default value is an empty array.
269
+ """
270
+
271
+ START_FREQUENCY = 13631569
272
+ r"""Specifies the lowest frequency at which measurements are performed. This attribute is used only when you set the
273
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Linear**. This value is expressed in Hz.
274
+
275
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
276
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
277
+ information about the string syntax for named signals.
278
+
279
+ The default value is 1 GHz.
280
+ """
281
+
282
+ STOP_FREQUENCY = 13631570
283
+ r"""Specifies the highest frequency at which measurements are performed. This attribute is used only when you set the
284
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Linear**. This value is expressed in Hz.
285
+
286
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
287
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
288
+ information about the string syntax for named signals.
289
+
290
+ The default value is 2 GHz.
291
+ """
292
+
293
+ CW_FREQUENCY = 13631594
294
+ r"""Specifies the frequency at which measurements are performed. This attribute is used only when you set the
295
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **CW Time**. This value is expressed in Hz.
296
+
297
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
298
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
299
+ information about the string syntax for named signals.
300
+
301
+ The default value is 1 GHz.
302
+ """
303
+
304
+ NUMBER_OF_POINTS = 13631571
305
+ r"""Specifies the number of points at which measurements are performed. This attribute is used only when you set the
306
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Linear** or **CW Time**.
307
+
308
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
309
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
310
+ information about the string syntax for named signals.
311
+
312
+ The default value is 201.
313
+ """
314
+
315
+ POWER_LEVEL = 13631491
316
+ r"""Specifies the power level for the VNA source port. This value is expressed in dBm.
317
+
318
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
319
+ Use "port::all" to configure same power level for all VNA ports.
320
+
321
+ The default value is -10 dBm.
322
+ """
323
+
324
+ TEST_RECEIVER_ATTENUATION = 13631498
325
+ r"""Specifies the attenuation that the VNA uses to attenuate the RF signal before it reaches the downconverting mixer on
326
+ the path towards the Test Receiver. The receiver that measures the scattered waves traveling away from the DUT port and
327
+ towards the VNA port is referred to as the Test Receiver. This value is expressed in dB.
328
+
329
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
330
+ Use "port::all" to configure same test receiver attenuation for all VNA ports.
331
+
332
+ The default value is 0 dB.
333
+ """
334
+
335
+ IF_BANDWIDTH = 13631492
336
+ r"""Specifies the digital IF filter bandwidth. This value is expressed in Hz.
337
+
338
+ NI PXIe-5633 supports the following IF Bandwidths: 1, 2, 3, 5, 7, 10, 20, 30, 50, 70, 100, 200, 300, 500, 700,
339
+ 1k, 2k, 3k, 5k, 7k, 10k, 20k, 30k, 50k, 70k, 100k, 200k, 300k, 500k, 700k, 1M, 2M, 3M, 5M, 7M, 10M, 15M. If you set IF
340
+ Bandwidth to an unsupported value, RFmx automatically coerces to the smallest supported IF Bandwidth greater than or
341
+ equal to the value you set. If you set IF Bandwidth to a value higher than the maximum supported value, RFmx
342
+ automatically coerces it to maximum supported IF Bandwidth.
343
+
344
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
345
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
346
+ information about the string syntax for named signals.
347
+
348
+ The default value is 100 kHz.
349
+ """
350
+
351
+ AUTO_IF_BANDWIDTH_SCALING_ENABLED = 13631558
352
+ r"""Specifies whether IF Bandwidth is automatically scaled down to account for the increased VNA receiver noise at low
353
+ frequencies. This attribute will automatically set to **False** when
354
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute is set to **True**.
355
+
356
+ Consider disabling automatic IF Bandwidth scaling by setting this attribute to False if you want faster
357
+ measurement speed but with higher measurment noise at low frequencies.
358
+
359
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
360
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
361
+ information about the string syntax for named signals.
362
+
363
+ The default value is **True**.
364
+
365
+ +--------------+-------------------------------------------------------------------------------------------------------------------+
366
+ | Name (Value) | Description |
367
+ +==============+===================================================================================================================+
368
+ | False (0) | Disables automatic IF Bandwidth scaling that compensates for the increased VNA receiver noise at low frequencies. |
369
+ +--------------+-------------------------------------------------------------------------------------------------------------------+
370
+ | True (1) | Enables automatic IF Bandwidth scaling that compensates for the increased VNA receiver noise at low frequencies. |
371
+ +--------------+-------------------------------------------------------------------------------------------------------------------+
372
+ """
373
+
374
+ SWEEP_SEQUENCE = 13631533
375
+ r"""Specifies the sequence of acquisitions for various frequency points and source ports.
376
+
377
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
378
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
379
+ information about the string syntax for named signals.
380
+
381
+ The default value is **Standard**.
382
+
383
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
384
+ | Name (Value) | Description |
385
+ +==============+==========================================================================================================================+
386
+ | Standard (0) | Acquisitions for all frequency points are completed with the first source port before moving to the next source port. |
387
+ | | For example, if there are three frequency points f1, f2 and f3 and two source ports, port1 and port2, then the sweep |
388
+ | | sequence will be (f1, port1), (f2, port1), (f3, port1), (f1, port2), (f2, port2), (f3, port2). |
389
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
390
+ | Point (1) | All acquisitions for a frequency point are completed with all required source ports, before moving to the next |
391
+ | | frequency point. For example, if there are three frequency points f1, f2 and f3 and two source ports, port1 and port2, |
392
+ | | then the sweep sequence will be (f1, port1), (f1, port2), (f2, port1), (f2, port2), (f3, port1), (f3, port2). |
393
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
394
+ """
395
+
396
+ SWEEP_DELAY = 13631493
397
+ r"""Specifies the time for which VNA waits before it starts acquiring data for each sweep. Total delay for acquiring the
398
+ first point in each sweep is sum of this delay and :py:attr:`~nirfmxvna.attributes.AttributeID.DWELL_TIME`. This value
399
+ is expressed in seconds.
400
+
401
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
402
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
403
+ information about the string syntax for named signals.
404
+
405
+ The default value is 0 s.
406
+ """
407
+
408
+ DWELL_TIME = 13631494
409
+ r"""Specifies the time for which the analyzer waits before acquiring the signal for each measurement point. Use dwell time
410
+ when measuring devices with substantial electrical lengths, requiring compensation for the delay between frequency
411
+ changes at the generator and their observation at the analyzer. This value is expressed in seconds.
412
+
413
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
414
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
415
+ information about the string syntax for named signals.
416
+
417
+ The default value is 0 s.
418
+ """
419
+
420
+ NUMBER_OF_SEGMENTS = 13631489
421
+ r"""Specifies the number of sweep segments. This attribute is used only when you set
422
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**
423
+
424
+ If you increase this attribute value from N to N+K, then existing N segments are not affected but K new
425
+ segments are added. If you reduce number of segments from N to N-K, then last K segments are deleted without affecting
426
+ the remaining N-K segments.
427
+
428
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
429
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
430
+ information about the string syntax for named signals.
431
+
432
+ The default value is 1.
433
+ """
434
+
435
+ SEGMENT_ENABLED = 13631535
436
+ r"""Specifies whether to enable the selected segment for the sweep. This attribute is used only when you set
437
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**
438
+
439
+ Use "segment::<*segmentnumber*>" as the selector string to configure or read this attribute for a specific
440
+ segment.
441
+
442
+ The default value is **False**.
443
+
444
+ +--------------+--------------------------------+
445
+ | Name (Value) | Description |
446
+ +==============+================================+
447
+ | False (0) | Disables the selected segment. |
448
+ +--------------+--------------------------------+
449
+ | True (1) | Enables the selected segment. |
450
+ +--------------+--------------------------------+
451
+ """
452
+
453
+ SEGMENT_START_FREQUENCY = 13631572
454
+ r"""Specifies the lowest frequency of the selected segment at which measurements are performed. This attribute is used only
455
+ when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**. This value is
456
+ expressed in Hz.
457
+
458
+ Use "segment::<*segmentnumber*>" as the selector string to configure or read this attribute for a specific
459
+ segment.
460
+
461
+ The default value is 1 GHz.
462
+ """
463
+
464
+ SEGMENT_STOP_FREQUENCY = 13631573
465
+ r"""Specifies the highest frequency of the selected segment at which measurements are performed. This attribute is used
466
+ only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**. This value is
467
+ expressed in Hz.
468
+
469
+ Use "segment::<*segmentnumber*>" as the selector string to configure or read this attribute for a specific
470
+ segment.
471
+
472
+ The default value is 2 GHz.
473
+ """
474
+
475
+ SEGMENT_NUMBER_OF_FREQUENCY_POINTS = 13631574
476
+ r"""Specifies the number of frequency points measured in the selected segment. This attribute is used only when you set
477
+ the :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**.
478
+
479
+ Use "segment::<*segmentnumber*>" as the selector string to configure or read this attribute for a specific
480
+ segment.
481
+
482
+ The default value is 21.
483
+ """
484
+
485
+ SEGMENT_POWER_LEVEL_ENABLED = 13631560
486
+ r"""Specifies whether VNA performs measurements using the same source power level for all segments or uses different source
487
+ power level for each segment. This attribute is used only when you set the
488
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**.
489
+
490
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
491
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
492
+ information about the string syntax for named signals.
493
+
494
+ The default value is **False**.
495
+
496
+ +--------------+--------------------------------------------------------------------------------------------------------------------+
497
+ | Name (Value) | Description |
498
+ +==============+====================================================================================================================+
499
+ | False (0) | All segments are measured with the source power level that you specify using Power Level attribute. |
500
+ +--------------+--------------------------------------------------------------------------------------------------------------------+
501
+ | True (1) | The selected segment is measured with the source power level that you specify using Segment Power Level attribute. |
502
+ +--------------+--------------------------------------------------------------------------------------------------------------------+
503
+ """
504
+
505
+ SEGMENT_POWER_LEVEL = 13631561
506
+ r"""Specifies the source power level for the selected segment. This attribute is used only when you set the
507
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment** and
508
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SEGMENT_POWER_LEVEL_ENABLED` attribute to **True**. This value is expressed
509
+ in dBm.
510
+
511
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port for
512
+ segment0. Use "port::*all*" to configure this attribute for all VNA ports for segment0.
513
+ Use "segment::<*segmentnumber*>/port::<*portname*>" as the selector string to configure or read this attribute
514
+ for a specific segment and for a specific VNA port. Use "segment::*all*/port::*all*" as the selector string to
515
+ configure this attribute for all segments and for all VNA ports.
516
+
517
+ The default value is -10 dBm.
518
+ """
519
+
520
+ SEGMENT_IF_BANDWIDTH_ENABLED = 13631562
521
+ r"""Specifies whether VNA performs measurements using the same digital IF filter bandwidth for all segments or uses
522
+ different digital IF filter bandwidth for each segment. This attribute is used only when you set the
523
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**.
524
+
525
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
526
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
527
+ information about the string syntax for named signals.
528
+
529
+ The default value is **False**.
530
+
531
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
532
+ | Name (Value) | Description |
533
+ +==============+==========================================================================================================================+
534
+ | False (0) | All segments are measured with the digital IF filter bandwidth that you specify using IF Bandwidth(Hz) attribute. |
535
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
536
+ | True (1) | The selected segment is measured with the digital IF filter bandwidth that you specify using Segment IF Bandwidth(Hz) |
537
+ | | attribute. |
538
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
539
+ """
540
+
541
+ SEGMENT_IF_BANDWIDTH = 13631563
542
+ r"""Specifies the digital IF filter bandwidth for the selected segment. This attribute is used only when you set the
543
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment** and
544
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SEGMENT_IF_BANDWIDTH_ENABLED` attribute to **True**. This value is
545
+ expressed in Hz.
546
+
547
+ NI PXIe-5633 supports the following IF Bandwidths: 1, 2, 3, 5, 7, 10, 20, 30, 50, 70, 100, 200, 300, 500, 700,
548
+ 1k, 2k, 3k, 5k, 7k, 10k, 20k, 30k, 50k, 70k, 100k, 200k, 300k, 500k, 700k, 1M, 2M, 3M, 5M, 7M, 10M, 15M. If you set
549
+ this attribute to an unsupported value, RFmx automatically coerces to the smallest supported IF Bandwidth greater than
550
+ or equal to the value you set. If you set IF Bandwidth to a value higher than the maximum supported value, RFmx
551
+ automatically coerces it to maximum supported IF Bandwidth.
552
+ Use "segment::<*segmentnumber*>" as the selector string to configure or read this attribute for a specific
553
+ segment. Use "segment::*all*" as the selector string to configure this attribute for all segments.
554
+
555
+ The default value is 100 kHz.
556
+ """
557
+
558
+ SEGMENT_TEST_RECEIVER_ATTENUATION_ENABLED = 13631564
559
+ r"""Specifies whether VNA performs measurements using the same test receiver attenuation for all segments or uses different
560
+ test receiver attenuation for each segment. This attribute is used only when you set the
561
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**.
562
+
563
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
564
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
565
+ information about the string syntax for named signals.
566
+
567
+ The default value is **False**.
568
+
569
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
570
+ | Name (Value) | Description |
571
+ +==============+==========================================================================================================================+
572
+ | False (0) | All segments are measured with the test receiver attenuation that you specify using Test Receiver Attenuation |
573
+ | | attribute. |
574
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
575
+ | True (1) | The selected segment is measured with the test receiver attenuation that you specify using Segment Test Receiver |
576
+ | | Attenuation attribute. |
577
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
578
+ """
579
+
580
+ SEGMENT_TEST_RECEIVER_ATTENUATION = 13631565
581
+ r"""Specifies the test receiver attenuation for the selected segment. This attribute is used only when you set the
582
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment** and
583
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SEGMENT_TEST_RECEIVER_ATTENUATION_ENABLED` attribute to **True**. This
584
+ value is expressed in dB.
585
+
586
+ The receiver that measures the scattered waves traveling away from the DUT port and towards the VNA port is
587
+ referred to as the Test Receiver. VNA uses Test Receiver Attenuation to attenuate the RF signal before it reaches the
588
+ downconverting mixer on the path towards the Test Receiver.
589
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port for
590
+ segment0. Use "port::*all*" to configure this attribute for all VNA ports for segment0.
591
+ Use "segment::<*segmentnumber*>/port::<*portname*>" as the selector string to configure or read this attribute
592
+ for a specific segment and for a specific VNA port. Use "segment::*all*/port::*all*" as the selector string to
593
+ configure this attribute for all segment and for all VNA ports.
594
+
595
+ The default value is 0 dB.
596
+ """
597
+
598
+ SEGMENT_DWELL_TIME_ENABLED = 13631566
599
+ r"""Specifies whether VNA performs measurements using the same dwell time value for all segments or uses different dwell
600
+ time for each segment. This attribute is used only when you set the
601
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment**.
602
+
603
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
604
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
605
+ information about the string syntax for named signals.
606
+
607
+ The default value is **False**.
608
+
609
+ +--------------+-----------------------------------------------------------------------------------------------------------+
610
+ | Name (Value) | Description |
611
+ +==============+===========================================================================================================+
612
+ | False (0) | All segments are measured with the dwell time that you specify using Dwell Time attribute. |
613
+ +--------------+-----------------------------------------------------------------------------------------------------------+
614
+ | True (1) | The selected segment is measured with the dwell time that you specify using Segment Dwell Time attribute. |
615
+ +--------------+-----------------------------------------------------------------------------------------------------------+
616
+ """
617
+
618
+ SEGMENT_DWELL_TIME = 13631567
619
+ r"""Specifies the dwell time for the selected segment. This attribute is used only when you set the
620
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute to **Segment** and
621
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SEGMENT_DWELL_TIME_ENABLED` attribute to **True**. This value is expressed
622
+ in seconds.
623
+
624
+ Dwell Time specifies the time for which the analyzer waits before acquiring the signal for each measured
625
+ frequency point. Use dwell time when measuring devices with substantial electrical lengths, requiring compensation for
626
+ the delay between frequency changes at the generator and their observation at the analyzer.
627
+
628
+ Use "segment::<*segmentnumber*>" as the selector string to configure or read this attribute for a specific
629
+ segment. Use "segment::*all*" as the selector string to configure this attribute for all segments.
630
+
631
+ The default value is 0 s.
632
+ """
633
+
634
+ PULSE_MODE_ENABLED = 13631537
635
+ r"""Specifies whether to use pulsed RF signal as stimulus and/or export pulse generator digital signals.
636
+
637
+ To perform measurements in pulse mode, start by setting this attribute to True. Next, configure basic pulse
638
+ attributes like :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_PERIOD`,
639
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODULATOR_WIDTH`.
640
+
641
+ When you set :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_TRIGGER_TYPE` to **None**, where VNA generates a
642
+ pulse trigger internally. Pulse Trigger is used to control the timing of the RF pulse modulator. Additionally pulse
643
+ trigger is used as timing reference for all the pulse generator digital signals that you enabled.
644
+
645
+ You can override the internal pulse trigger to an external pulse trigger by setting
646
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_TRIGGER_TYPE` to **Digital Edge**.
647
+
648
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
649
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
650
+ information about the string syntax for named signals.
651
+
652
+ The default value is **False**.
653
+
654
+ +--------------+---------------------------------------------------------------------------------------+
655
+ | Name (Value) | Description |
656
+ +==============+=======================================================================================+
657
+ | False (0) | Disables pulse mode operation. VNA pulse modulator and pulse generators are disabled. |
658
+ +--------------+---------------------------------------------------------------------------------------+
659
+ | True (1) | Enables pulse mode operation. |
660
+ +--------------+---------------------------------------------------------------------------------------+
661
+ """
662
+
663
+ PULSE_TRIGGER_TYPE = 13631539
664
+ r"""Specifies the pulse trigger type. This attribute is used only when you set the
665
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True**.
666
+
667
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
668
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
669
+ information about the string syntax for named signals.
670
+
671
+ The default value is **None**.
672
+
673
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
674
+ | Name (Value) | Description |
675
+ +==================+==========================================================================================================================+
676
+ | None (0) | Based on the Pulse Period value that you set, the VNA creates an appropriate periodic pulse trigger internally. Pulse |
677
+ | | Trigger is used to control the timing of the RF pulse modulator. Additionally pulse trigger is used as timing reference |
678
+ | | for all the pulse generator digital signals that you enabled. |
679
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
680
+ | Digital Edge (1) | Uses an external digital edge trigger as the pulse trigger. |
681
+ +------------------+--------------------------------------------------------------------------------------------------------------------------+
682
+ """
683
+
684
+ PULSE_DIGITAL_EDGE_TRIGGER_SOURCE = 13631540
685
+ r"""Specifies the source of the digital edge pulse trigger. This attribute is used only when you set the
686
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True** and set the
687
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_TRIGGER_TYPE` attribute to **Digital Edge**.
688
+
689
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
690
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
691
+ information about the string syntax for named signals.
692
+
693
+ The default of this attribute is "" (empty string).
694
+ """
695
+
696
+ PULSE_PERIOD = 13631541
697
+ r"""Specifies the time interval after which the pulse repeats. This attribute is used only when you set the
698
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True**. If you set
699
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_TRIGGER_TYPE` attribute to **Digital Edge**, pulses are generated
700
+ only when an external pulse digital edge trigger is received by the VNA. This value is expressed in seconds.
701
+
702
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
703
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
704
+ information about the string syntax for named signals.
705
+
706
+ The default value is 1 ms.
707
+ """
708
+
709
+ PULSE_MODULATOR_DELAY = 13631543
710
+ r"""Specifies the delay between the pulse trigger digital edge and the rising edge of the RF pulse. This attribute is used
711
+ only when you set :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True**. This value is
712
+ expressed in seconds.
713
+
714
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
715
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
716
+ information about the string syntax for named signals.
717
+
718
+ The default value is 0 s.
719
+ """
720
+
721
+ PULSE_MODULATOR_WIDTH = 13631544
722
+ r"""Specifies the Pulse Width of the pulsed RF signal. Pulse is in HIGH state for a duration equal to the Pulse Width, and
723
+ remains in the LOW state for the rest of the Pulse Period. This attribute is used only when you set
724
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True**. This value is expressed in
725
+ seconds.
726
+
727
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
728
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
729
+ information about the string syntax for named signals.
730
+
731
+ The default value is 100 us.
732
+ """
733
+
734
+ PULSE_ACQUISITION_AUTO = 13631545
735
+ r"""Specifies whether, based on :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODULATOR_WIDTH`, the measurement
736
+ automatically sets appropriate :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_ACQUISITION_DELAY` and
737
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_ACQUISITION_WIDTH`. This attribute is used only when you set
738
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True**.
739
+
740
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
741
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
742
+ information about the string syntax for named signals.
743
+
744
+ The default value is **True**.
745
+
746
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
747
+ | Name (Value) | Description |
748
+ +==============+==========================================================================================================================+
749
+ | False (0) | The Pulse Acquisition Delay and Pulse Acquisition Width attributes are not automatically set by the measurement. The |
750
+ | | values that you set for these attributes are used by the measurement. |
751
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
752
+ | True (1) | The measurement uses the Pulse Modulator Width |
753
+ | | attribute to automatically set appropriate values for Pulse Acquisition Delay and Pulse Acquisition Width attributes. |
754
+ | | Pulse Acquisition Delay is set as the sum of Pulse Modulator Delay and approximately 20% of the Pulse Modulator Width, |
755
+ | | and Pulse Acquisition Width is set to approximately 75% of the Pulse Modulator Width. |
756
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
757
+ """
758
+
759
+ PULSE_ACQUISITION_DELAY = 13631546
760
+ r"""Specifies the delay in the start of the pulse acquisition relative to the pulse trigger. Pulse trigger can be internal
761
+ or external. When you set :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_TRIGGER_TYPE` to **None** then the VNA
762
+ creates appropriate periodic pulse triggers internally. This attribute is used only when you set
763
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True** and
764
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_ACQUISITION_AUTO` attribute to **False**. This value is expressed in
765
+ seconds.
766
+
767
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
768
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
769
+ information about the string syntax for named signals.
770
+
771
+ The default value is 0 s.
772
+ """
773
+
774
+ PULSE_ACQUISITION_WIDTH = 13631547
775
+ r"""Specifies the acquisition-time per point for pulse measurements. This attribute is used only when you set
776
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True** and
777
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_ACQUISITION_AUTO` attribute to **False**. This value is expressed in
778
+ seconds.
779
+
780
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
781
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
782
+ information about the string syntax for named signals.
783
+
784
+ The default value is 0 s.
785
+ """
786
+
787
+ PULSE_GENERATOR_ENABLED = 13631550
788
+ r"""Specifies whether to enable a pulse generator. This attribute is used only when you set
789
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True**.
790
+
791
+ Use "pulsegen<*n*>" as the selector string to configure or read this attribute.
792
+
793
+ The default value is **False**.
794
+
795
+ +--------------+----------------------------------------+
796
+ | Name (Value) | Description |
797
+ +==============+========================================+
798
+ | False (0) | Disables the selected pulse generator. |
799
+ +--------------+----------------------------------------+
800
+ | True (1) | Enables the selected pulse generator. |
801
+ +--------------+----------------------------------------+
802
+ """
803
+
804
+ PULSE_GENERATOR_EXPORT_OUTPUT_TERMINAL = 13631551
805
+ r"""Specifies the destination terminal for an exported Pulse Generator. This attribute is used only when you set
806
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_MODE_ENABLED` attribute to **True** and
807
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_GENERATOR_ENABLED` attribute to **True**.
808
+
809
+ Use "pulsegen<*n*>" as the selector string to configure or read this attribute.
810
+
811
+ The default value is **Do not export signal**.
812
+ """
813
+
814
+ PULSE_GENERATOR_TERMINAL_NAME = 13631568
815
+ r"""Returns the fully qualified signal name as a string.
816
+
817
+ The standard format of the returned fully qualified signal name is */ModuleName/vna/0/Pulse0Event*, where
818
+ *ModuleName* is the name of your device in MAX.
819
+
820
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
821
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
822
+ information about the string syntax for named signals.
823
+ """
824
+
825
+ PULSE_GENERATOR_DELAY = 13631552
826
+ r"""Specifies the delay between the pulse trigger and digital pulse generated by the selected Pulse Generator. You must set
827
+ the value of the this attribute such that Delay + :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_GENERATOR_WIDTH`
828
+ attribute does not exceed :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_PERIOD` attribute. This value is expressed
829
+ in seconds.
830
+
831
+ Use "pulsegen<*n*>" as the selector string to configure or read this attribute.
832
+
833
+ The default value is 0 s.
834
+ """
835
+
836
+ PULSE_GENERATOR_WIDTH = 13631553
837
+ r"""Specifies the pulse width of the selected pulse generator.
838
+ You must set the values of the :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_GENERATOR_DELAY` attribute and
839
+ :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_GENERATOR_WIDTH` attribute such that Delay + Width does not exceed
840
+ the value of :py:attr:`~nirfmxvna.attributes.AttributeID.PULSE_PERIOD` attribute. This value is expressed in seconds.
841
+
842
+ Use "pulsegen<*n*>" as the selector string to configure or read this attribute.
843
+
844
+ The default value is 100us.
845
+ """
846
+
847
+ X_AXIS_VALUES = 13631575
848
+ r"""Returns an array of frequency values when you perform measurements with
849
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE` attribute set to **List** or **Linear** or **Segment** or an
850
+ array of time values when you perform measurements with :py:attr:`~nirfmxvna.attributes.AttributeID.SWEEP_TYPE`
851
+ attribute set to **CW Time**.
852
+
853
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
854
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
855
+ information about the string syntax for named signals.
856
+ """
857
+
858
+ AVERAGING_ENABLED = 13631495
859
+ r"""Specifies whether to enable measurement averaging.
860
+
861
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
862
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
863
+ information about the string syntax for named signals.
864
+
865
+ The default value is **False**.
866
+
867
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
868
+ | Name (Value) | Description |
869
+ +==============+==========================================================================================================================+
870
+ | False (0) | Disables measurement averaging. |
871
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
872
+ | True (1) | Enables measurement averaging. You can set number of times each measurement is repeated and averaged-over using the |
873
+ | | Averaging Count attribute. |
874
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
875
+ """
876
+
877
+ AVERAGING_COUNT = 13631496
878
+ r"""Specifies the number of times each measurement is repeated and averaged-over. This attribute is used only when you set
879
+ the :py:attr:`~nirfmxvna.attributes.AttributeID.AVERAGING_ENABLED` attribute to **True**.
880
+
881
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
882
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
883
+ information about the string syntax for named signals.
884
+
885
+ The default value is 10.
886
+ """
887
+
888
+ CORRECTION_ENABLED = 13631499
889
+ r"""Specifies whether to enable error correction for VNA measurement.
890
+
891
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
892
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
893
+ information about the string syntax for named signals.
894
+
895
+ The default value is **False**.
896
+
897
+ +--------------+-------------------------------------------+
898
+ | Name (Value) | Description |
899
+ +==============+===========================================+
900
+ | False (0) | The measurement disables error corection. |
901
+ +--------------+-------------------------------------------+
902
+ | True (1) | The measurement enables error correction. |
903
+ +--------------+-------------------------------------------+
904
+ """
905
+
906
+ CORRECTION_INTERPOLATION_ENABLED = 13631576
907
+ r"""Specifies whether to enable interpolation of error terms for corrected VNA measurement. This attribute is used only
908
+ when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_ENABLED` attribute to **True**.
909
+
910
+ Specifies whether to enable interpolation of error terms for corrected VNA measurement. If set to **True**, the
911
+ interpolated error terms are used for each measurement frequency point, for which error terms do not exist in the
912
+ calset, provided that *minimum calset frequency <= measurement frequency and <= maximum calset frequency*.
913
+
914
+ The impact of interpolation on the accuracy of the VNA measurements strongly depends on the measurement
915
+ conditions and can range from severe degradation to no degradation at all. In case the phase difference between two
916
+ consecutive error terms *e[n-1], e[n]* exceeds 180deg, the interpolation will lead to large measurement errors.
917
+
918
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
919
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
920
+ information about the string syntax for named signals.
921
+
922
+ The default value is **True**.
923
+
924
+ +--------------+-----------------------------------------------------------------------------+
925
+ | Name (Value) | Description |
926
+ +==============+=============================================================================+
927
+ | False (0) | The measurement disables interpolation of error terms for error correction. |
928
+ +--------------+-----------------------------------------------------------------------------+
929
+ | True (1) | The measurement enables interpolation of error terms for error correction. |
930
+ +--------------+-----------------------------------------------------------------------------+
931
+ """
932
+
933
+ CORRECTION_PORT_SUBSET_ENABLED = 13631502
934
+ r"""Specifies whether to enable correction for a subset of ports for which calibration data is avaialble in the calset.
935
+ This attribute is used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_ENABLED` attribute
936
+ to **True**.
937
+
938
+ Enable this attribute to exclude subset of calset ports from measurement error correction, to achieve faster
939
+ measurement speed by avoiding extra acquisitions. Use
940
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_FULL_PORTS` and
941
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_RESPONSE_PORTS` to specify the list of subset ports
942
+ to be included in the measurement error correction.
943
+
944
+ The default value is **False**.
945
+
946
+ +--------------+----------------------------------------------------------------+
947
+ | Name (Value) | Description |
948
+ +==============+================================================================+
949
+ | False (0) | The measurement disables port-subsetting for error correction. |
950
+ +--------------+----------------------------------------------------------------+
951
+ | True (1) | The measurement enabes port-subsetting for error correction. |
952
+ +--------------+----------------------------------------------------------------+
953
+ """
954
+
955
+ CORRECTION_PORT_SUBSET_FULL_PORTS = 13631503
956
+ r"""Specifies the subset of ports, that are selected for full N-Port correction, where N is the number of ports specified
957
+ in this attribute. Use comma-separated list of ports to specify multiple ports. The configured measurement is full
958
+ N-Port corrected if both the measurement receiver and source port are specified using this attribute. The configured
959
+ measurement is one-path two-port corrected if one of the measurement ports is specified using this attribute and
960
+ another is specified using :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_RESPONSE_PORTS`.
961
+ Measurements involving the ports outside :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_FULL_PORTS`
962
+ and :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_RESPONSE_PORTS` return error.
963
+
964
+ This attribute is used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_ENABLED`
965
+ attribute to **True** and :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_ENABLED` attribute to
966
+ **True**.
967
+
968
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
969
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
970
+ information about the string syntax for named signals.
971
+
972
+ The default value is an empty string.
973
+
974
+ For example, when performing S11 error-corrected measurement for a 1-port DUT using a 2-port VNA and a 2-port
975
+ calset, VNA generally acquires data by setting the source to port1 first and then to port2. In this case, to achieve
976
+ faster measurement speed, set this attribute to **port1**, which lets the VNA acquire data using only source port1 and
977
+ skips acquiring data with source port2.
978
+ """
979
+
980
+ CORRECTION_PORT_SUBSET_RESPONSE_PORTS = 13631609
981
+ r"""Specifies the subset of ports, that are selected for one-path two-port error correction. Use comma-separated list of
982
+ ports to specify multiple ports. The configured measurement is one-path two-port corrected if both measurement ports
983
+ are specified using this attribute. Alternatively, measurement is also one-path two-port corrected if one of the
984
+ measurement port is specified using this attribute and another is specified using
985
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_FULL_PORTS`. Measurements involving the ports
986
+ outside the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_RESPONSE_PORTS` and
987
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_FULL_PORTS` return error.
988
+
989
+ This attribute is used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_ENABLED`
990
+ attribute to **True** and :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_ENABLED` attribute to
991
+ **True**.
992
+
993
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
994
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
995
+ information about the string syntax for named signals.
996
+
997
+ The default value is an empty string.
998
+
999
+ For example, when performing S21 error-corrected measurement for a 2-port DUT using a 2-port VNA and a 2-port
1000
+ calset, VNA generally acquires data by setting the source to port1 first and then to port2. To perform S21 one-path
1001
+ two-port error corrected measurement and to achieve faster measurement speed, set this attribute to **port1, port2**.
1002
+ VNA then acquires data using source port1 and skips acquiring data with source port2.
1003
+ """
1004
+
1005
+ CORRECTION_PORT_EXTENSION_ENABLED = 13631526
1006
+ r"""Specifies whether to enable port extension.
1007
+
1008
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1009
+ Use "port::all" to configure for all VNA ports.
1010
+
1011
+ The default value is **False**.
1012
+
1013
+ +--------------+------------------------------------------+
1014
+ | Name (Value) | Description |
1015
+ +==============+==========================================+
1016
+ | False (0) | The measurement disables port extension. |
1017
+ +--------------+------------------------------------------+
1018
+ | True (1) | The measurement enables port extension. |
1019
+ +--------------+------------------------------------------+
1020
+ """
1021
+
1022
+ CORRECTION_PORT_EXTENSION_DELAY_DOMAIN = 13631583
1023
+ r"""Specifies whether port extension utilizes delay-based or distance-velocity factor-based definition. This attribute is
1024
+ used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to
1025
+ **True**.
1026
+
1027
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1028
+ Use "port::all" to configure for all VNA ports.
1029
+
1030
+ The default value is **Delay**.
1031
+
1032
+ +--------------+-------------------------------------------------------------------+
1033
+ | Name (Value) | Description |
1034
+ +==============+===================================================================+
1035
+ | Delay (0) | The port extension is specified in terms of its electrical delay. |
1036
+ +--------------+-------------------------------------------------------------------+
1037
+ | Distance (1) | The port extension is specified in terms of its physical length. |
1038
+ +--------------+-------------------------------------------------------------------+
1039
+ """
1040
+
1041
+ CORRECTION_PORT_EXTENSION_DELAY = 13631527
1042
+ r"""Specifies the port extension electrical delay. This value is expressed in seconds. This attribute is used only when you
1043
+ set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True**.
1044
+
1045
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1046
+ Use "port::all" to configure the same delay value for all VNA ports.
1047
+
1048
+ The default value is 0 s.
1049
+ """
1050
+
1051
+ CORRECTION_PORT_EXTENSION_DISTANCE = 13631584
1052
+ r"""Specifies the port extension delay in physical length. This value is expressed in meters by default. The unit can be
1053
+ chosen by setting the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_DISTANCE_UNIT` attribute.
1054
+ This attribute is used only when you set the
1055
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True** and
1056
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_DELAY_DOMAIN` attribute to **Distance**.
1057
+
1058
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1059
+ Use "port::all" to configure the same distance value for all VNA ports.
1060
+
1061
+ The default value is 0 m.
1062
+ """
1063
+
1064
+ CORRECTION_PORT_EXTENSION_DISTANCE_UNIT = 13631585
1065
+ r"""Specifies the unit of the port extension delay in physical length. This attribute is used only when you set the
1066
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True** and
1067
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_DELAY_DOMAIN` attribute to **Distance**.
1068
+
1069
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1070
+ Use "port::all" to configure the same distance unit for all VNA ports.
1071
+
1072
+ The default value is **Meters**.
1073
+
1074
+ +--------------+------------------------------------------------------------+
1075
+ | Name (Value) | Description |
1076
+ +==============+============================================================+
1077
+ | Meters (0) | The port extension physical length is expressed in meters. |
1078
+ +--------------+------------------------------------------------------------+
1079
+ | Feet (1) | The port extension physical length is expressed in feet. |
1080
+ +--------------+------------------------------------------------------------+
1081
+ | Inches (2) | The port extension physical length is expressed in inches. |
1082
+ +--------------+------------------------------------------------------------+
1083
+ """
1084
+
1085
+ CORRECTION_PORT_EXTENSION_VELOCITY_FACTOR = 13631586
1086
+ r"""Specifies the speed of light in the port extension medium relative to speed of light in vacuum. Velocity Factor of 1
1087
+ represents speed of light in vacuum. This attribute is used in conjuction with
1088
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_DISTANCE` attribute to compute electrical delay.
1089
+ This value is unitless. This attribute is used only when you set the
1090
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True** and
1091
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_DELAY_DOMAIN` attribute to **Distance**.
1092
+
1093
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1094
+ Use "port::all" to configure the same velocity factor for all VNA ports.
1095
+
1096
+ The default value is 1.
1097
+ """
1098
+
1099
+ CORRECTION_PORT_EXTENSION_DC_LOSS_ENABLED = 13631528
1100
+ r"""Specifies whether to compensate for the frequency-independent loss as part of the port extension. This attribute is
1101
+ used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to
1102
+ **True**.
1103
+
1104
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1105
+ Use "port::all" to configure for all VNA ports.
1106
+
1107
+ The default value is **False**.
1108
+
1109
+ +--------------+------------------------------------------------------------------------------------------------------------------+
1110
+ | Name (Value) | Description |
1111
+ +==============+==================================================================================================================+
1112
+ | False (0) | The measurement disables the compensation of DC Loss of the port extension. |
1113
+ +--------------+------------------------------------------------------------------------------------------------------------------+
1114
+ | True (1) | The measurement compensates for the DC loss based on the value of |
1115
+ | | Port Extension DC Loss (dB) specified by you. |
1116
+ +--------------+------------------------------------------------------------------------------------------------------------------+
1117
+ """
1118
+
1119
+ CORRECTION_PORT_EXTENSION_DC_LOSS = 13631529
1120
+ r"""Specifies the frequency-independent loss to compensate as part of the port extension. This attribute is used only when
1121
+ you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True**. This
1122
+ value is expressed in dB.
1123
+
1124
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1125
+ Use "port::all" to configure same value of DC loss for all VNA ports.
1126
+
1127
+ The default value is 0 dB.
1128
+ """
1129
+
1130
+ CORRECTION_PORT_EXTENSION_LOSS1_ENABLED = 13631577
1131
+ r"""Specifies whether to compensate for the frequency-dependent loss, Loss1, as part of the port extension. This attribute
1132
+ is used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute
1133
+ to **True**.
1134
+
1135
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1136
+ Use "port::all" to configure for all VNA ports.
1137
+
1138
+ The default value is **False**.
1139
+
1140
+ +--------------+--------------------------------------------------------------------------------------------------------+
1141
+ | Name (Value) | Description |
1142
+ +==============+========================================================================================================+
1143
+ | False (0) | The measurement disables the compensation of Loss1 of the port extension. |
1144
+ +--------------+--------------------------------------------------------------------------------------------------------+
1145
+ | True (1) | The measurement compensates for the Loss1 based on the configured value of |
1146
+ | | Port Extension Loss1 (dB). |
1147
+ +--------------+--------------------------------------------------------------------------------------------------------+
1148
+ """
1149
+
1150
+ CORRECTION_PORT_EXTENSION_LOSS1_FREQUENCY = 13631578
1151
+ r"""Specifies the frequency at which Loss1 is applied and compensated. This attribute is used only when the
1152
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute is set to **True** and the
1153
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS1_ENABLED` attribute is set to **True**. This
1154
+ value is expressed in Hz.
1155
+
1156
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1157
+ Use "port::all" to configure Loss1 Frequency for all VNA ports.
1158
+
1159
+ The default value is 0 Hz.
1160
+ """
1161
+
1162
+ CORRECTION_PORT_EXTENSION_LOSS1 = 13631579
1163
+ r"""Specifies the frequency-dependent loss, Loss1 in dB, to compensate as part of port extension.
1164
+
1165
+ If the DC loss and one additional frequency loss, Loss1 at the frequency F1 is known, the total loss at
1166
+ frequency f can be approximated by:
1167
+
1168
+ L (f) = DC Loss + ((Loss1 - DC Loss) x (f / f1)^0.5)
1169
+
1170
+ This attribute is used only when you set the
1171
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True** and the
1172
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS1_ENABLED` attribute is set to **True**. This
1173
+ value is expressed in dB.
1174
+
1175
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1176
+ Use "port::all" to configure same value of Loss1 for all VNA ports.
1177
+
1178
+ The default value is 0 dB.
1179
+ """
1180
+
1181
+ CORRECTION_PORT_EXTENSION_LOSS2_ENABLED = 13631580
1182
+ r"""Specifies whether to compensate for the frequency-dependent loss, Loss2, as part of the port extension. This attribute
1183
+ is used only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute
1184
+ to **True** and the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS1_ENABLED` attribute is
1185
+ set to **True**.
1186
+
1187
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1188
+ Use "port::all" to configure for all VNA ports.
1189
+
1190
+ The default value is **False**.
1191
+
1192
+ +--------------+--------------------------------------------------------------------------------------------------------+
1193
+ | Name (Value) | Description |
1194
+ +==============+========================================================================================================+
1195
+ | False (0) | The measurement disables the compensation of Loss2 of the port extension. |
1196
+ +--------------+--------------------------------------------------------------------------------------------------------+
1197
+ | True (1) | The measurement compensates for the Loss2 based on the configured value of |
1198
+ | | Port Extension Loss2 (dB). |
1199
+ +--------------+--------------------------------------------------------------------------------------------------------+
1200
+ """
1201
+
1202
+ CORRECTION_PORT_EXTENSION_LOSS2_FREQUENCY = 13631581
1203
+ r"""Specifies the frequency at which Loss2 is applied and compensated. This attribute is used only when the
1204
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute is set to **True**, the
1205
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS1_ENABLED` attribute is set to **True** and
1206
+ the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS2_ENABLED` attribute is set to **True**.
1207
+ This value is expressed in Hz.
1208
+
1209
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1210
+ Use "port::all" to configure Loss2 Frequency for all VNA ports.
1211
+
1212
+ The default value is 0 Hz.
1213
+ """
1214
+
1215
+ CORRECTION_PORT_EXTENSION_LOSS2 = 13631582
1216
+ r"""Specifies the frequency-dependent loss, Loss2 in dB, to compensate as part of the port extension.
1217
+
1218
+ If in addition to the DC loss and frequency-dependent loss at one frequency (Loss1 at the frequency f1), the
1219
+ loss at a second frequency, Loss2 at frequency f2 is also known, the total loss at frequency f can be approximated by:
1220
+
1221
+ L (f) = DC Loss + ((Loss1 - DC Loss) x (f / f1)^b)
1222
+
1223
+ , where b = log[(abs((Loss1 - DC Loss) / (Loss2 - DC Loss)))] / log(f1 / f2)
1224
+
1225
+ This attribute is used only when you set the
1226
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_ENABLED` attribute to **True**, the
1227
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS1_ENABLED` attribute is set to **True** and
1228
+ the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_LOSS2_ENABLED` attribute is set to **True**.
1229
+ This value is expressed in dB.
1230
+
1231
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1232
+ Use "port::all" to configure same value of Loss2 for all VNA ports.
1233
+
1234
+ The default value is 0 dB.
1235
+ """
1236
+
1237
+ CORRECTION_PORT_EXTENSION_AUTO_LOSS_ENABLED = 13631610
1238
+ r"""Specifies whether to determine both the frequency-dependent losses (Loss1 and Loss2) and the frequency-independent loss
1239
+ (DC Loss) during automatic port extension.
1240
+ Typically, the frequencies located at one-quarter and three-quarters of the configured sweep range are used as
1241
+ the f1 and f2 values.
1242
+
1243
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1244
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1245
+ information about the string syntax for named signals.
1246
+
1247
+ The default value is **True**.
1248
+
1249
+ +--------------+----------------------------------------------------------+
1250
+ | Name (Value) | Description |
1251
+ +==============+==========================================================+
1252
+ | False (0) | Disable the loss estimation in automatic port extension. |
1253
+ +--------------+----------------------------------------------------------+
1254
+ | True (1) | Enable the loss estimation in automatic port extension. |
1255
+ +--------------+----------------------------------------------------------+
1256
+ """
1257
+
1258
+ CORRECTION_PORT_EXTENSION_AUTO_REGULARIZATION_ENABLED = 13631611
1259
+ r"""Specifies whether the compensated trace should be regularized to ensure it remains at or below 0 dB. Fixture mismatch
1260
+ can sometimes cause S11 or S22 measurements to exceed 0 dB, which may introduce numerical instability when using the
1261
+ resulting S-parameters.
1262
+ This attribute is used only when you set the
1263
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_AUTO_LOSS_ENABLED` attribute to **True**.
1264
+
1265
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1266
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1267
+ information about the string syntax for named signals.
1268
+
1269
+ The default value is **True**.
1270
+
1271
+ +--------------+----------------------------------------------------------------------------------+
1272
+ | Name (Value) | Description |
1273
+ +==============+==================================================================================+
1274
+ | False (0) | Disable the regularization of the compensated trace in automatic port extension. |
1275
+ +--------------+----------------------------------------------------------------------------------+
1276
+ | True (1) | Enable the regularization of the compensated trace in automatic port extension. |
1277
+ +--------------+----------------------------------------------------------------------------------+
1278
+ """
1279
+
1280
+ CORRECTION_PORT_EXTENSION_AUTO_FREQUENCY_MODE = 13631612
1281
+ r"""Specifies the frequency mode over which the delay and loss (optional) values are determined.
1282
+
1283
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1284
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1285
+ information about the string syntax for named signals.
1286
+
1287
+ The default value is **Sweep**.
1288
+
1289
+ +--------------+----------------------------------------------------------------------------------------------------------+
1290
+ | Name (Value) | Description |
1291
+ +==============+==========================================================================================================+
1292
+ | Sweep (0) | Sets the frequency mode to Sweep. Configured sweep range is used to determine the phase and loss values. |
1293
+ +--------------+----------------------------------------------------------------------------------------------------------+
1294
+ | User (1) | Sets the frequency mode to User Span. User-defined span is used to determine the phase and loss values. |
1295
+ +--------------+----------------------------------------------------------------------------------------------------------+
1296
+ """
1297
+
1298
+ CORRECTION_PORT_EXTENSION_AUTO_START_FREQUENCY = 13631613
1299
+ r"""Specifies the start frequency of the user span. This attribute is used only when you set the
1300
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_AUTO_FREQUENCY_MODE` attribute to **User Span**.
1301
+ This value is expressed in Hz.
1302
+
1303
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1304
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1305
+ information about the string syntax for named signals.
1306
+
1307
+ The default value is 1 GHz.
1308
+ """
1309
+
1310
+ CORRECTION_PORT_EXTENSION_AUTO_STOP_FREQUENCY = 13631614
1311
+ r"""Specifies the stop frequency of the user span. This attribute is used only when you set the
1312
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_EXTENSION_AUTO_FREQUENCY_MODE` attribute to **User Span**.
1313
+ This value is expressed in Hz.
1314
+
1315
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1316
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1317
+ information about the string syntax for named signals.
1318
+
1319
+ The default value is 2 GHz.
1320
+ """
1321
+
1322
+ CORRECTION_CALIBRATION_PORTS = 13631504
1323
+ r"""Specifies the ports that are selected for calibration. Use comma-separated list of ports to specify multiple ports.
1324
+
1325
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1326
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1327
+ information about the string syntax for named signals.
1328
+
1329
+ The default value is an empty string.
1330
+ """
1331
+
1332
+ CORRECTION_CALIBRATION_CONNECTOR_TYPE = 13631505
1333
+ r"""Specifies the connector type of the DUT. The specified connector type must be supported by the calkit that you selected
1334
+ for calibration.
1335
+
1336
+ Use "port::<*portname*>" as the selector string to configure or read this attribute for a specific VNA port.
1337
+ Use "port::all" to configure same connector type for VNA ports.
1338
+
1339
+ The default value is an empty string.
1340
+ """
1341
+
1342
+ CORRECTION_CALIBRATION_CALKIT_TYPE = 13631506
1343
+ r"""Specifies the type of calkit used for calibration.
1344
+
1345
+ Use "port::all" as the selector string to specify the same calkit type for all VNA ports. Use
1346
+ "port::<*portname*>" as the selector string to read this attribute for a specific VNA port.
1347
+
1348
+ .. note::
1349
+ Note that, currently, RFmxVNA only supports the use of same calkit type (and the same calkit) for all calibration ports
1350
+ in a guided calibration procedure.
1351
+
1352
+ The default value is **Electronic**.
1353
+
1354
+ +----------------+----------------------------------------------------------------------------------------------------------+
1355
+ | Name (Value) | Description |
1356
+ +================+==========================================================================================================+
1357
+ | Electronic (0) | Perform calibration using an electronic calkit module. Supported Electronic Calkit Modules: NI CAL-5501. |
1358
+ +----------------+----------------------------------------------------------------------------------------------------------+
1359
+ | Mechanical (1) | Perform calibration using discrete cal standards from a mechanical calkit. |
1360
+ +----------------+----------------------------------------------------------------------------------------------------------+
1361
+ """
1362
+
1363
+ CORRECTION_CALIBRATION_CALKIT_ELECTRONIC_RESOURCE_NAME = 13631507
1364
+ r"""Specifies the resource name of the electronic calibration module (vCal) used for calibration. This attribute is used
1365
+ only when you set the :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_CALIBRATION_CALKIT_TYPE` attribute to
1366
+ **Electronic**.
1367
+ **Supported Electronic Calkit Modules**: NI CAL-5501
1368
+
1369
+ Use "port::all" as the selector string to specify the same resource name for all VNA ports. Use
1370
+ "port::<*portname*>" as the selector string to read this attribute for a specific VNA port.
1371
+
1372
+ .. note::
1373
+ Currently, RFmxVNA only supports the use of same calkit type (and the same calkit) for all calibration ports in a
1374
+ guided calibration procedure.
1375
+
1376
+ The default value is an empty string.
1377
+ """
1378
+
1379
+ CORRECTION_CALIBRATION_CALKIT_ELECTRONIC_ORIENTATION = 13631518
1380
+ r"""Specifies the orientation of the vCal fixture ports with respect to vCal ports.
1381
+
1382
+ Use "portA:portname, portB:portname" format to specify vCal orientation.
1383
+
1384
+ When using NI-PXIe 5633 without an NI switch module, if vCal orientation is not specified, it is assumed to be
1385
+ "portA:port1, portB:port2".
1386
+
1387
+ When using NI-PXIe 5633 with an NI switch module, you must set vCal orientation for all the specified
1388
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_CALIBRATION_PORTS`.
1389
+
1390
+ The default value is an empty string.
1391
+ """
1392
+
1393
+ CORRECTION_CALIBRATION_CALKIT_MECHANICAL_NAME = 13631508
1394
+ r"""Specifies the name of the mechanical calkit used for calibration. This attribute is used only when you set the
1395
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_CALIBRATION_CALKIT_TYPE` attribute to **Mechanical**.
1396
+
1397
+ You must set a valid calkit name. Use :py:meth:`calkit_manager_get_calkit_ids` method to get list of available
1398
+ mechanical calkits.
1399
+
1400
+ .. note::
1401
+ Currently, RFmxVNA only supports the use of same calkit type and same calkit name for all calibration ports in a guided
1402
+ calibration procedure.
1403
+
1404
+ Use "port::all" as the selector string to specify the same calkit name for all VNA ports. Use
1405
+ "port::<*portname*>" as the selector string to read this attribute for a specific VNA port.
1406
+
1407
+ The default value is an empty string.
1408
+ """
1409
+
1410
+ CORRECTION_CALIBRATION_METHOD = 13631509
1411
+ r"""Specifies the calibration method.
1412
+
1413
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1414
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1415
+ information about the string syntax for named signals.
1416
+
1417
+ The default value is **SOL**.
1418
+
1419
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1420
+ | Name (Value) | Description |
1421
+ +==============+==========================================================================================================================+
1422
+ | SOL (0) | Full 1-port calibration using atleast three distinct reflection standards, typically named Short, Open and Load. |
1423
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1424
+ | SOLT (1) | Full 2-port calibration by performing two SOL calibrations on the two ports using atleast three distinct reflection |
1425
+ | | standards, and a Thru cal using a transmission standard connecting the two ports. Use Thru Method attribute to select a |
1426
+ | | suitable Thru cal procedure. |
1427
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1428
+ | TRL (2) | Full 2-port calibration using a Thru, at least one Line, and one Reflect standard (Thru-Reflect-Line). The Thru |
1429
+ | | standard can be an flush Thru or can have non-zero length (LRL, Line-Reflect-Line). The Reflect standard has to be |
1430
+ | | identical for both ports. If multiple lines with different lengths are defined, the measurement automatically splits |
1431
+ | | the measurement frequency range into segments and picks the line standard with appropriate length for each segment. The |
1432
+ | | reference impedance of the calibration is the characteristic impedance of the Line(s). |
1433
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1434
+ """
1435
+
1436
+ CORRECTION_CALIBRATION_THRU_METHOD = 13631511
1437
+ r"""Specifies the Thru calibration method when :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_CALIBRATION_METHOD`
1438
+ attribute is set to **SOLT**.
1439
+
1440
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1441
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1442
+ information about the string syntax for named signals.
1443
+
1444
+ The default value is **Auto**.
1445
+
1446
+ +-------------------------------+--------------------------------------------------------------------------------------------------------------------------+
1447
+ | Name (Value) | Description |
1448
+ +===============================+==========================================================================================================================+
1449
+ | Auto (0) | Measurement selects the appropriate Thru calibration method based on the value you specified for Calkit Type attribute. |
1450
+ | | If Calkit Type is Electronic, then Delay Thru Using Defined Thru is selected. If Calkit Type is Mechanical, then |
1451
+ | | Undefined Thru is selected. |
1452
+ +-------------------------------+--------------------------------------------------------------------------------------------------------------------------+
1453
+ | Defined Thru (1) | The Thru definition from calkit definition is used based on the value you specified for Calkit Type attribute. If |
1454
+ | | Calkit Type is Electronic, the Thru definition from the electronic calkit EPROM is used. If Calkit Type is Mechanical, |
1455
+ | | the Thru definition from the calkit definition file is used. |
1456
+ +-------------------------------+--------------------------------------------------------------------------------------------------------------------------+
1457
+ | Flush Thru (2) | Indicates a direct connection of the test ports when Calkit Type is Mechanical. The measured Thru is treated as flush |
1458
+ | | Thru ignoring the Thru definition from the Calkit file. This method is not supported when Calkit Type is Electronic. |
1459
+ +-------------------------------+--------------------------------------------------------------------------------------------------------------------------+
1460
+ | Undefined Thru (3) | Indicates connection of a Thru without a stored definition when Calkit Type is Mechanical. The measured Thru is treated |
1461
+ | | as unknown Thru ignoring the Thru definition from the Calkit file. If a delay is configured, the delay will be utilized |
1462
+ | | for the calibration. This method is not supported when Calkit Type is Electronic. |
1463
+ +-------------------------------+--------------------------------------------------------------------------------------------------------------------------+
1464
+ | vCal Thru as Unknown Thru (5) | The Thru from the electronical Calkit is used for Thru measurement during calibration. The Thru definirion from vCal |
1465
+ | | EPROM is used as a phase reference for the Thru characterization during calibration. |
1466
+ | | This method is not supported when Calkit Type is Mechanical. |
1467
+ +-------------------------------+--------------------------------------------------------------------------------------------------------------------------+
1468
+ """
1469
+
1470
+ CORRECTION_CALIBRATION_THRU_COAX_DELAY = 13631512
1471
+ r"""Specifies the delay of the Thru mechanical standard when
1472
+ :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_CALIBRATION_CALKIT_TYPE` attribute is set to **Mechanical** and
1473
+ Thru Method attribute is set to **Auto** or **Undefined Thru**. This value is expressed in seconds.
1474
+
1475
+ Use this attribute to specify an approximate delay value of an unknown-thru cal standard. Measurement uses this
1476
+ value to eliminate the uncertainty of ± 180 degrees in the estimated phase response of the Thru.
1477
+
1478
+ If you set this attribute to 0, the VNA automatically determines the delay of the Thru. You only need to set
1479
+ this attribute to an approximate non-zero delay value when Max Frequency Step Size > 1/(2 x Thru Delay). Here,
1480
+ Frequency Step Size refers to the difference between 2 consecutive frequency points in the set of frequencies sorted in
1481
+ ascending order.
1482
+
1483
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1484
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1485
+ information about the string syntax for named signals.
1486
+
1487
+ The default value is 0 s.
1488
+ """
1489
+
1490
+ CORRECTION_CALIBRATION_STEP_COUNT = 13631513
1491
+ r"""Returns the total number of manual connection steps required to perform the selected calibration routine.
1492
+
1493
+ For example, if you use NI CAL-5501 electronic calkit to calibrate NI PXIe-5633 by using SOLT calibration
1494
+ method, querying this attribute will return 1, indicating that you only need to perform 1 manual connection to complete
1495
+ the SOLT cal. Similarly, if you calibrate the same system using a mechanical calkit containing a Short, Open, Load and
1496
+ Thru discrete cal standards, then querying this attribute will return 7, indicating that you must perform 7 distinct
1497
+ manual connections to complete the SOLT cal.
1498
+
1499
+ You must configure all the calibration related attributes and call :py:meth:`calibration_initiate` method
1500
+ before you query this attribute.
1501
+
1502
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1503
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1504
+ information about the string syntax for named signals.
1505
+ """
1506
+
1507
+ CORRECTION_CALIBRATION_STEP_DESCRIPTION = 13631514
1508
+ r"""Returns the description for the specified calibration step. You can use the description for each calibration step to
1509
+ determine which mechanical cal standard or electronic calkit module should you connect to which VNA port(s).
1510
+
1511
+ Use "calstep<*n*>" as the selector string to read this attribute.
1512
+
1513
+ You must configure all the calibration related attributes and call :py:meth:`calibration_initiate` method
1514
+ before you query this attribute.
1515
+ """
1516
+
1517
+ CORRECTION_CALIBRATION_ESTIMATED_THRU_DELAY = 13633536
1518
+ r"""Returns the estimated Thru Delay when Thru Method is set to **Undefined Thru**.
1519
+
1520
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1521
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1522
+ information about the string syntax for named signals.
1523
+ """
1524
+
1525
+ SPARAMS_MEASUREMENT_ENABLED = 13635584
1526
+ r"""Specifies whether to enable the Sparams measurement.
1527
+
1528
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1529
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1530
+ information about the string syntax for named signals.
1531
+
1532
+ The default value is **False**.
1533
+ """
1534
+
1535
+ SPARAMS_NUMBER_OF_SPARAMETERS = 13635586
1536
+ r"""Specifies the number of S-Parameters to measure.
1537
+
1538
+ **Note1**: S-Parameters of a N-port DUT can be represented by N^2 canonical S-Parameters viz. S11,
1539
+ S12,...,S1N, S21, S22,...,S2N, SN1, SN2,...,SNN such that
1540
+ **B = S A**
1541
+ where **S** denotes the S-Parameter matrix with Sij being the element in the i\ :sup:`th`\ row and j\
1542
+ :sup:`th`\ column. Similarly **A** denotes the matrix composed of the incident waves. Element Aij denotes the wave
1543
+ parameter a\ :sub:`ij`\ i.e., wave measured at the reference reciever on port <i> with port <j> as the source.
1544
+ Similarly **B** denotes the matrix composed of the scatterred waves. Element Bij denotes the wave parameter b\
1545
+ :sub:`ij`\ i.e., wave measured at the test reciever on port <i> with port <j> as the source.
1546
+
1547
+ You can configure each measured S-Parameter in RFmxVNA SParams measurement to be returned in one of several
1548
+ supported formats using :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT` attribute. Example1: If you want to
1549
+ fetch magnitude and phase information of S11, then set Number of S-Parameters attribute to 2, then for both SParam
1550
+ indices 0 and 1, set Parameter attribute to "S11". Then set :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT`
1551
+ attribute to Magnitude for Sparam index 0 and to Phase for SParam index 1.
1552
+
1553
+ **Note2**: You can set many SParam indices to share the same Parameter and Format attribute values making them
1554
+ duplicates of each other.
1555
+
1556
+ If you increase this attribute value from N to N+K, then existing N SParams are not affected but K new SParams
1557
+ are added. If you reduce number of SParams from N to N-K, then last K SParams are deleted without affecting the
1558
+ remaining N-K SParams.
1559
+
1560
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1561
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1562
+ information about the string syntax for named signals.
1563
+
1564
+ The default value is 1.
1565
+ """
1566
+
1567
+ SPARAMS_RECEIVER_PORT = 13635587
1568
+ r"""Specifies the receiver port name of the S-Parameter. S-Parameter is denoted by "S_<*receiver port name*>_<*source port
1569
+ name*>".
1570
+
1571
+ For example, to measure S21, set this attribute to "port2".
1572
+
1573
+ Use "sparam<*n*>" as the selector string to configure or read this attribute.
1574
+
1575
+ The default value is "port1".
1576
+ """
1577
+
1578
+ SPARAMS_SOURCE_PORT = 13635588
1579
+ r"""Specifies the source port name of the S-Parameter. S-Parameter is denoted by "S_<*receiver port name*>_<*source port
1580
+ name*>".
1581
+
1582
+ For example, to measure S21, set this attribute to "port1".
1583
+
1584
+ Use "sparam<*n*>" as the selector string to configure or read this attribute.
1585
+
1586
+ The default value is "port1".
1587
+ """
1588
+
1589
+ SPARAMS_FORMAT = 13635589
1590
+ r"""Specifies the format of S-Parameter measurement.
1591
+
1592
+ Use "sparam<*n*>" as the selector string to configure or read this attribute.
1593
+
1594
+ The default value is **Magnitude**.
1595
+
1596
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1597
+ | Name (Value) | Description |
1598
+ +======================+==========================================================================================================================+
1599
+ | Magnitude (0) | Sets the format of the selected S-Parameter to Magnitude. You can specify SParams Magnitude Units. |
1600
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1601
+ | Phase (1) | Sets the format of the selected S-Parameter to Phase. Phase values are expressed in degrees. Phase can be represented |
1602
+ | | in various, mathematically equivalent ways such as phase wrapped between the range [-180, 180) degrees, or phase can be |
1603
+ | | represented in an unwrapped manner. You can specify the phase representation by configuring Sparams Phase Trace Type. |
1604
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1605
+ | Complex (2) | Sets the format of the selected S-Parameter as complex numbers in cartesian co-ordinates. |
1606
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1607
+ | SWR (3) | Sets the format of the selected S-Parameter to Standing Wave Ratio (SWR). SWR is a unitless quantity. |
1608
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1609
+ | Smith Impedance (4) | Sets the format of the selected S-Parameter to Smith Impedance. S-Parameter values are transformed into impedence |
1610
+ | | values. Impedence values are expressed in ohms. You can use these values to plot on a Smith Chart. |
1611
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1612
+ | Smith Admittance (5) | Sets the format of the selected S-Parameter to Smith Admittance. S-Parameter values are transformed into admittance |
1613
+ | | values. Admittance values are expressed in siemens. You can use these values to plot on an Inverted Smith Chart. |
1614
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1615
+ | Polar (6) | Sets the format of the selected S-Parameter as complex numbers in polar co-ordinates, where the radial axis (i.e., |
1616
+ | | magnitude of the complex numbers) is always in linear scale and angular axis (phase) is represented in degrees and |
1617
+ | | always wrapped between ±180 deg. |
1618
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1619
+ | Group Delay (7) | Sets the format of the selected S-Parameter to Group Delay. Group delay represents the time it takes for the signal to |
1620
+ | | pass through a device under test. The delay is expressed in seconds. |
1621
+ | | Group delay vs. frequency is derived from phase vs. frequency response. At a given frequency point, group delay is |
1622
+ | | computed by selecting two nearby frequency points and taking the ratio of the phase difference to the frequency |
1623
+ | | separation between them. The frequency separation between the two selected points is called the group delay aperture. |
1624
+ | | You can control the aperture by first configuring SParams Group Delay Aperture Mode and once the mode is selected, you |
1625
+ | | can set the aperture by configuring SParams Group Delay Aperture Points, SParams Group Delay Aperture Percentage or |
1626
+ | | SParams Group Delay Aperture Frequency Span. |
1627
+ | | For example, if the number of aperture points is equal to 3, then group delay at a nth frequency point is computed |
1628
+ | | by selecting the (n-1)th frequency point and (n+1)th frequency point. |
1629
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1630
+ """
1631
+
1632
+ SPARAMS_MAGNITUDE_UNITS = 13635590
1633
+ r"""Specifies the magnitude units for all S-Parameters for which you set
1634
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT` attribute to **Magnitude**.
1635
+
1636
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1637
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1638
+ information about the string syntax for named signals.
1639
+
1640
+ The default value is **dB**.
1641
+
1642
+ +--------------+-------------------------------------------------------------------------------------------------------+
1643
+ | Name (Value) | Description |
1644
+ +==============+=======================================================================================================+
1645
+ | dB (0) | Sets S-Parameter magnitude units to dB. |
1646
+ +--------------+-------------------------------------------------------------------------------------------------------+
1647
+ | Linear (1) | Sets S-Parameter magnitude units to linear such that S-Parameters are reported in linear scale (V/V). |
1648
+ +--------------+-------------------------------------------------------------------------------------------------------+
1649
+ """
1650
+
1651
+ SPARAMS_PHASE_TRACE_TYPE = 13635591
1652
+ r"""Specifies the phase type for all S-Parameters for which :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT`
1653
+ attribute is set to **Phase**. Phase can be represented in two mathematically equivalent ways viz. phase wrapped
1654
+ between the range [-180, 180) degrees, and phase can be represented in an unwrapped manner.
1655
+
1656
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1657
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1658
+ information about the string syntax for named signals.
1659
+
1660
+ The default value is **Wrapped**.
1661
+
1662
+ +---------------+---------------------------------------------------------------------------------+
1663
+ | Name (Value) | Description |
1664
+ +===============+=================================================================================+
1665
+ | Wrapped (0) | The reported S-Parameter phase is wrapped between -180 degress to +180 degrees. |
1666
+ +---------------+---------------------------------------------------------------------------------+
1667
+ | Unwrapped (1) | The reported S-Parameter phase is unwrapped. |
1668
+ +---------------+---------------------------------------------------------------------------------+
1669
+ """
1670
+
1671
+ SPARAMS_GROUP_DELAY_APERTURE_MODE = 13635612
1672
+ r"""Specifies the aperture mode to be used for the computation of group delay for all S-Parameters for which
1673
+ :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT` attribute is set to **Group Delay**.
1674
+
1675
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1676
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1677
+ information about the string syntax for named signals.
1678
+
1679
+ The default value is **Points**.
1680
+
1681
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
1682
+ | Name (Value) | Description |
1683
+ +====================+==========================================================================================================================+
1684
+ | Points (0) | Sets group delay aperture mode to Points. You can specify the aperture in terms of the number of frequency points by |
1685
+ | | configuring SParams Group Delay Aperture Points. |
1686
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
1687
+ | Percentage (1) | Sets group delay aperture mode to Percentage. You can specify the aperture in terms of the frequency separation |
1688
+ | | expressed in percentage by configuring SParams Group Delay Aperture Percentage. |
1689
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
1690
+ | Frequency Span (2) | Sets group delay aperture to Frequency Span. You can specify the aperture in terms of the frequency separation by |
1691
+ | | configuring SParams Group Delay Aperture Frequency Span. |
1692
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
1693
+ """
1694
+
1695
+ SPARAMS_GROUP_DELAY_APERTURE_POINTS = 13635613
1696
+ r"""Specifies the group delay aperture in terms of the number of frequency points that separates the two frequency points
1697
+ for all S-Parameters for which :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT` attribute is set to **Group
1698
+ Delay** and :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_GROUP_DELAY_APERTURE_MODE` attribute is set to
1699
+ **Points**. You must set the value of this attribute between 2 and the total number of frequency points in the
1700
+ measurement frequency range.
1701
+
1702
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1703
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1704
+ information about the string syntax for named signals.
1705
+
1706
+ The default value is 11.
1707
+ """
1708
+
1709
+ SPARAMS_GROUP_DELAY_APERTURE_PERCENTAGE = 13635614
1710
+ r"""Specifies the group delay aperture in terms of the frequency separation between the two frequency points selected for
1711
+ group delay computation, where separation is expressed as a percentage of the total measurement frequency range for all
1712
+ S-Parameters for which :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT` attribute is set to **Group Delay**
1713
+ and :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_GROUP_DELAY_APERTURE_MODE` attribute is set to **Percentage**.
1714
+
1715
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1716
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1717
+ information about the string syntax for named signals.
1718
+
1719
+ The default value is 5 %.
1720
+ """
1721
+
1722
+ SPARAMS_GROUP_DELAY_APERTURE_FREQUENCY_SPAN = 13635615
1723
+ r"""Specifies the group delay aperture in terms of the frequency separation between the two frequency points selected for
1724
+ group delay computation for all S-Parameters for which :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_FORMAT`
1725
+ attribute is set to **Group Delay** and :py:attr:`~nirfmxvna.attributes.AttributeID.SPARAMS_GROUP_DELAY_APERTURE_MODE`
1726
+ attribute is set to **Frequency Span**.
1727
+
1728
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1729
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1730
+ information about the string syntax for named signals.
1731
+
1732
+ The default value is 50 MHz.
1733
+ """
1734
+
1735
+ SPARAMS_MATH_FUNCTION = 13635610
1736
+ r"""Specifies the mathematical operation between the configured S-Parameter and its active measurement memory. All
1737
+ mathematical operations are applied on complex data before being formatted.
1738
+
1739
+ Use "sparam<*n*>" as the selector string to configure or read this attribute.
1740
+
1741
+ The default value is **Off**.
1742
+
1743
+ +--------------+-------------------------------------------------------------------+
1744
+ | Name (Value) | Description |
1745
+ +==============+===================================================================+
1746
+ | Off (0) | No mathematical operation is performed. |
1747
+ +--------------+-------------------------------------------------------------------+
1748
+ | Add (1) | Data in measurement memory is added to S-Parameter data. |
1749
+ +--------------+-------------------------------------------------------------------+
1750
+ | Subtract (2) | Data in measurement memory is subtracted from S-Parameter data. |
1751
+ +--------------+-------------------------------------------------------------------+
1752
+ | Multiply (3) | S-Parameter data is multiplied by the data in measurement memory. |
1753
+ +--------------+-------------------------------------------------------------------+
1754
+ | Divide (4) | S-Parameter data is divided by the data in measurement memory. |
1755
+ +--------------+-------------------------------------------------------------------+
1756
+ """
1757
+
1758
+ SPARAMS_MATH_ACTIVE_MEASUREMENT_MEMORY = 13635611
1759
+ r"""Specifies the active measurement memory for performing mathematical operations when several measurement memories are
1760
+ associated with the configured S-Parameter. If only one measurement memory is associated with the configured
1761
+ S-Parameter, that measurement memory will be used for mathematical operations.
1762
+
1763
+ Use "sparam<*n*>" as the selector string to configure or read this attribute.
1764
+ """
1765
+
1766
+ SPARAMS_RESULTS_CORRECTION_STATE = 13635608
1767
+ r"""Returns the error correction state of the VNA S-Parameter measurement.
1768
+
1769
+ Use "sparam<*n*>" as the selector string to read this attribute.
1770
+
1771
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
1772
+ | Name (Value) | Description |
1773
+ +=======================+=====================================================================================================================+
1774
+ | None (0) | Error correction is not applied. |
1775
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
1776
+ | Corrected (1) | Error correction is applied without interpolation using the error terms from the calset. |
1777
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
1778
+ | Interpolated (2) | Error correction is applied with error terms for at least one sweep point interpolated from the calset error terms. |
1779
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
1780
+ | Settings Modified (3) | Settings during the measurment differ from those used during calibration. |
1781
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
1782
+ """
1783
+
1784
+ SPARAMS_RESULTS_CORRECTION_LEVEL = 13635616
1785
+ r"""Returns the level of error correction applied to the specified S-Parameter measurement.
1786
+
1787
+ Use "sparam<*n*>" as the selector string to read this attribute.
1788
+
1789
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1790
+ | Name (value) | Description |
1791
+ +==============+==========================================================================================================================+
1792
+ | Uncorrected | Correction is not applied to the configured S-Parameter. |
1793
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1794
+ | N-Port | Full N-Port correction is applied to the configured S-Parameter, where N refers to the number of VNA ports involved in |
1795
+ | | the correction. |
1796
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1797
+ | 1-Path | One Path Two Port correction is applied to the configured transmission measurement. Refer to |
1798
+ | | :py:attr:`~nirfmxvna.attributes.AttributeID.CORRECTION_PORT_SUBSET_RESPONSE_PORTS` attribute for more information about |
1799
+ | | one-path two-port correction. |
1800
+ +--------------+--------------------------------------------------------------------------------------------------------------------------+
1801
+ """
1802
+
1803
+ SPARAMS_SNP_DATA_FORMAT = 13635603
1804
+ r"""Specifies the format in which the measured S-parameters are saved in a SnP file.
1805
+
1806
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1807
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1808
+ information about the string syntax for named signals.
1809
+
1810
+ The default value is **Auto**.
1811
+
1812
+ +----------------------------+--------------------------------------------------------------------------------------------------------------------------+
1813
+ | Name (Value) | Description |
1814
+ +============================+==========================================================================================================================+
1815
+ | Auto (0) | RFmx automatically selects the appropriate SnP Data Format based on the value specified for SParams Format |
1816
+ | | attribute. |
1817
+ | | If you set SParams Format to Complex or SWR or Smith Impedence or Smith Admittance or Group Delay, S-parameters are |
1818
+ | | saved in the Real-Imaginary format. |
1819
+ | | If you set SParams Format to Magnitude, S-parameters are saved as either Log Magnitude-Angle or Linear Magnitude-Angle |
1820
+ | | according to SParams Magnitude Units. |
1821
+ | | If you set SParams Format to Phase or Polar, S-parameters are saved as Linear Magnitude-Angle by default. |
1822
+ +----------------------------+--------------------------------------------------------------------------------------------------------------------------+
1823
+ | Log Magnitude-Angle (1) | All available S-parameters are represented as a pair of columns - first column stores magnitude of a S-Parameter in log |
1824
+ | | scale (dB) and second column stores phase of the S-Parameter in degrees. |
1825
+ +----------------------------+--------------------------------------------------------------------------------------------------------------------------+
1826
+ | Real-Imaginary (2) | All available S-parameters are represented as a pair of columns - first column stores real part of the complex-valued |
1827
+ | | S-Parameter and second column stores imaginary part. |
1828
+ +----------------------------+--------------------------------------------------------------------------------------------------------------------------+
1829
+ | Linear Magnitude-Angle (3) | All available S-parameters are represented as a pair of columns - first column stores magnitude of a S-Parameter in |
1830
+ | | linear scale (V/V) and second column stores phase of the S-Parameter in degrees. |
1831
+ +----------------------------+--------------------------------------------------------------------------------------------------------------------------+
1832
+ """
1833
+
1834
+ SPARAMS_SNP_USER_COMMENT = 13635604
1835
+ r"""Specifies a string that is incorporated into saved SnP file. You can specify any arbitrary string to add any meta
1836
+ information that you may want to store along with the measured S-Parameters data in SnP file. RFmx automatically adds a
1837
+ special token(!) at the start of this string such that any standard SnP file parsers would ignore this line.
1838
+ Additionally, multiline comments are allowed and each line is appended with the next line escape character.
1839
+
1840
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1841
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1842
+ information about the string syntax for named signals.
1843
+ """
1844
+
1845
+ SPARAMS_SNP_PORTS = 13635605
1846
+ r"""Specifies the ports for which the measured S-parameters are saved to file.
1847
+
1848
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1849
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1850
+ information about the string syntax for named signals.
1851
+ """
1852
+
1853
+ WAVES_MEASUREMENT_ENABLED = 13639680
1854
+ r"""Specifies whether to enable the Waves measurement.
1855
+
1856
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1857
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1858
+ information about the string syntax for named signals.
1859
+
1860
+ The default value is **False**.
1861
+ """
1862
+
1863
+ WAVES_NUMBER_OF_WAVES = 13639682
1864
+ r"""Specifies the number of waves to be measured.
1865
+
1866
+ If you increase this attribute value from N to N+K, then existing N Waves are not affected but K new Waves are
1867
+ added. If you reduce number of Waves from N to N-K, then last K Waves are deleted without affecting the remaining N-K
1868
+ Waves.
1869
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1870
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1871
+ information about the string syntax for named signals.
1872
+
1873
+ The default value is 1.
1874
+ """
1875
+
1876
+ WAVES_RECEIVER = 13639683
1877
+ r"""Specifies whether to measure the wave on the reference receiver or the test receiver of the Wave Receiver Port.
1878
+
1879
+ Incident and scattered waves are denoted by "a_<*receiver port name*>_<*source port name*>" and "b_<*receiver
1880
+ port name*>_<*source port name*>" respectively. On a receiver port, the a and b waves are measured using Reference
1881
+ receiver and Test receiver respectively.
1882
+
1883
+ For example, to measure "b21", set this attribute to **Test (0)**,
1884
+ :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_RECEIVER_PORT` to "port2" and
1885
+ :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_SOURCE_PORT` to "port1".
1886
+
1887
+ Use "wave<*n*>" as the selector string to configure or read this attribute.
1888
+
1889
+ The default value is **Test**.
1890
+
1891
+ +---------------+----------------------------------------------+
1892
+ | Name (Value) | Description |
1893
+ +===============+==============================================+
1894
+ | Test (0) | Measures the wave on the test receiver. |
1895
+ +---------------+----------------------------------------------+
1896
+ | Reference (1) | Measures the wave on the reference receiver. |
1897
+ +---------------+----------------------------------------------+
1898
+ """
1899
+
1900
+ WAVES_RECEIVER_PORT = 13639684
1901
+ r"""Specifies the receiver port name for wave measurement.
1902
+
1903
+ Incident and scattered waves are denoted by "a_<*receiver port name*>_<*source port name*>" and "b_<*receiver
1904
+ port name*>_<*source port name*>" respectively. On a receiver port, the a and b waves are measured using Reference
1905
+ receiver and Test receiver respectively.
1906
+
1907
+ For example, to measure "b21", set :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_RECEIVER` to **Test (0)**,
1908
+ set this attribute to "port2" and :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_SOURCE_PORT` to "port1".
1909
+
1910
+ Use "wave<*n*>" as the selector string to configure or read this attribute.
1911
+
1912
+ The default value is "port1".
1913
+ """
1914
+
1915
+ WAVES_SOURCE_PORT = 13639685
1916
+ r"""Specifies the source port name for wave measurement.
1917
+
1918
+ Incident and scattered waves are denoted by "a_<*receiver port name*>_<*source port name*>" and "b_<*receiver
1919
+ port name*>_<*source port name*>" respectively. On a receiver port, the a and b waves are measured using Reference
1920
+ receiver and Test receiver respectively.
1921
+
1922
+ For example, to measure "b21", set :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_RECEIVER` to **Test (0)**,
1923
+ :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_RECEIVER_PORT` to "port2" and set this attribute to "port1".
1924
+
1925
+ Use "wave<*n*>" as the selector string to configure or read this attribute.
1926
+
1927
+ The default value is "port1".
1928
+ """
1929
+
1930
+ WAVES_FORMAT = 13639686
1931
+ r"""Specifies the format for wave measurement.
1932
+
1933
+ Use "wave<*n*>" as the selector string to configure or read this attribute.
1934
+
1935
+ Use RFmxVNA Waves Fetch Y Data to fetch the waves.
1936
+
1937
+ The default value is **Magnitude**.
1938
+
1939
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1940
+ | Name (Value) | Description |
1941
+ +======================+==========================================================================================================================+
1942
+ | Magnitude (0) | Sets the format for the selected wave to Magnitude. You can specify Wave Magnitude Units. |
1943
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1944
+ | Phase (1) | Sets the format of the selected wave to Phase. Phase values are expressed in degrees. Phase can be represented in |
1945
+ | | various, mathematically equivalent ways such as phase wrapped between the range [-180, 180) degrees, or phase can be |
1946
+ | | represented in an unwrapped manner. You can specify the phase representation by configuring Wave Phase Trace Type. |
1947
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1948
+ | Complex (2) | Sets the format for the selected wave as complex numbers in cartesian co-ordinates. |
1949
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1950
+ | SWR (3) | Sets the format for the selected wave to Standing Wave Ratio (SWR). SWR is a unitless quantity. |
1951
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1952
+ | Smith Impedance (4) | Sets the format for the selected wave to Smith Impedance. The measured values of the wave are transformed into |
1953
+ | | impedence values. Impedence values are expressed in ohms. You can use these values to plot on a Smith Chart. |
1954
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1955
+ | Smith Admittance (5) | Sets the format for the selected wave to Smith Admittance. The measured values of the wave are transformed into |
1956
+ | | admittance values. Admittance values are expressed in siemens. You can use these values to plot on an Inverted Smith |
1957
+ | | Chart. |
1958
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1959
+ | Polar (6) | Sets the format for the selected wave as complex numbers in polar co-ordinates, where the radial axis (i.e., magnitude |
1960
+ | | of the complex numbers) is always in linear scale and angular axis (phase) is represented in degrees and always wrapped |
1961
+ | | between ±180 deg. |
1962
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1963
+ | Group Delay (7) | Sets the format of the selected wave to Group Delay. Group delay represents the time it takes for the signal to pass |
1964
+ | | through a device under test. The delay is expressed in seconds. |
1965
+ | | Group delay vs. frequency is derived from phase vs. frequency response. At a given frequency point, group delay is |
1966
+ | | computed by selecting two nearby frequency points and taking the ratio of the phase difference to the frequency |
1967
+ | | separation between them. The frequency separation between the two selected points is called the group delay aperture. |
1968
+ | | You can control the aperture by first configuring Waves Group Delay Aperture Mode and once the mode is selected, you |
1969
+ | | can set the aperture by configuring |
1970
+ | | Waves Group Delay Aperture Points, Waves Group Delay Aperture Percentage or Waves Group Delay Aperture Frequency Span. |
1971
+ | | For example, if the number of aperture points is equal to 3, then group delay at a nth frequency point is computed by |
1972
+ | | selecting the (n-1)th frequency point and (n+1)th frequency point. |
1973
+ +----------------------+--------------------------------------------------------------------------------------------------------------------------+
1974
+ """
1975
+
1976
+ WAVES_MAGNITUDE_UNITS = 13639687
1977
+ r"""Specifies the magnitude units for all waves for which :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_FORMAT`
1978
+ attribute is set to **Magnitude**.
1979
+
1980
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
1981
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
1982
+ information about the string syntax for named signals.
1983
+
1984
+ The default value is **dBm**.
1985
+
1986
+ +--------------+--------------------------------------+
1987
+ | Name (Value) | Description |
1988
+ +==============+======================================+
1989
+ | dBm (0) | Sets wave magnitude units to dBm. |
1990
+ +--------------+--------------------------------------+
1991
+ | dBmV (1) | Sets wave magnitude units to dBmV. |
1992
+ +--------------+--------------------------------------+
1993
+ | dBuV (2) | Sets wave magnitude units to dBuV. |
1994
+ +--------------+--------------------------------------+
1995
+ | dBmA (3) | Sets wave magnitude units to dBmA. |
1996
+ +--------------+--------------------------------------+
1997
+ | W (4) | Sets wave magnitude units to watts. |
1998
+ +--------------+--------------------------------------+
1999
+ | V (5) | Sets wave magnitude units to volts. |
2000
+ +--------------+--------------------------------------+
2001
+ | A (6) | Sets wave magnitude units to ampere. |
2002
+ +--------------+--------------------------------------+
2003
+ """
2004
+
2005
+ WAVES_PHASE_TRACE_TYPE = 13639688
2006
+ r"""Specifies the phase type for all waves for which :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_FORMAT` attribute is
2007
+ set to **Phase**. Phase can be represented in two mathematically equivalent ways viz. phase wrapped between the range
2008
+ [-180, 180) degrees, and phase can be represented in an unwrapped manner.
2009
+
2010
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2011
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2012
+ information about the string syntax for named signals.
2013
+
2014
+ The default value is **Wrapped**.
2015
+
2016
+ +---------------+--------------------------------------------------------------------------+
2017
+ | Name (Value) | Description |
2018
+ +===============+==========================================================================+
2019
+ | Wrapped (0) | The reported wave phase is wrapped between -180 degress to +180 degrees. |
2020
+ +---------------+--------------------------------------------------------------------------+
2021
+ | Unwrapped (1) | The reported wave phase is unwrapped. |
2022
+ +---------------+--------------------------------------------------------------------------+
2023
+ """
2024
+
2025
+ WAVES_GROUP_DELAY_APERTURE_MODE = 13639701
2026
+ r"""Specifies the aperture mode to be used for the computation of group delay for all waves for which
2027
+ :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_FORMAT` attribute is set to **Group Delay**.
2028
+
2029
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2030
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2031
+ information about the string syntax for named signals.
2032
+
2033
+ The default value is **Points**.
2034
+
2035
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
2036
+ | Name (Value) | Description |
2037
+ +====================+==========================================================================================================================+
2038
+ | Points (0) | Sets group delay aperture mode to Points. You can specify the aperture in terms of the number of frequency points by |
2039
+ | | configuring Waves Group Delay Aperture Points. |
2040
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
2041
+ | Percentage (1) | Sets group delay aperture mode to Percentage. You can specify the aperture in terms of the frequency separation |
2042
+ | | expressed in percentage by configuring Waves Group Delay Aperture Percentage. |
2043
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
2044
+ | Frequency Span (2) | Sets group delay aperture to Frequency Span. You can specify the aperture in terms of the frequency separation by |
2045
+ | | configuring Waves Group Delay Aperture Frequency Span. |
2046
+ +--------------------+--------------------------------------------------------------------------------------------------------------------------+
2047
+ """
2048
+
2049
+ WAVES_GROUP_DELAY_APERTURE_POINTS = 13639702
2050
+ r"""Specifies the group delay aperture in terms of the number of frequency points that separates the two frequency points
2051
+ for all waves for which :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_FORMAT` attribute is set to **Group Delay**
2052
+ and :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_GROUP_DELAY_APERTURE_MODE` attribute is set to **Points**. You
2053
+ must set the value of this attribute between 2 and the total number of frequency points in the measurement frequency
2054
+ range.
2055
+
2056
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2057
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2058
+ information about the string syntax for named signals.
2059
+
2060
+ The default value is 11.
2061
+ """
2062
+
2063
+ WAVES_GROUP_DELAY_APERTURE_PERCENTAGE = 13639703
2064
+ r"""Specifies the group delay aperture in terms of the frequency separation between the two frequency points selected for
2065
+ group delay computation, where separation is expressed as a percentage of the total measurement frequency range for all
2066
+ waves for which :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_FORMAT` attribute is set to **Group Delay** and
2067
+ :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_GROUP_DELAY_APERTURE_MODE` attribute is set to **Percentage**.
2068
+
2069
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2070
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2071
+ information about the string syntax for named signals.
2072
+
2073
+ The default value is 5 %.
2074
+ """
2075
+
2076
+ WAVES_GROUP_DELAY_APERTURE_FREQUENCY_SPAN = 13639704
2077
+ r"""Specifies the group delay aperture in terms of the frequency separation between the two frequency points selected for
2078
+ group delay computation for all waves for which :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_FORMAT` attribute is
2079
+ set to **Group Delay** and :py:attr:`~nirfmxvna.attributes.AttributeID.WAVES_GROUP_DELAY_APERTURE_MODE` attribute is
2080
+ set to **Frequency Span**.
2081
+
2082
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2083
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2084
+ information about the string syntax for named signals.
2085
+
2086
+ The default value is 50 MHz.
2087
+ """
2088
+
2089
+ WAVES_RESULTS_CORRECTION_STATE = 13639699
2090
+ r"""Returns the error correction state of the VNA Waves measurement.
2091
+
2092
+ Use "wave<*n*>" as the selector string to read this attribute.
2093
+
2094
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2095
+ | Name (Value) | Description |
2096
+ +=======================+=====================================================================================================================+
2097
+ | None (0) | Error correction is not applied. |
2098
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2099
+ | Corrected (1) | Error correction is applied without interpolation using the error terms from the calset. |
2100
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2101
+ | Interpolated (2) | Error correction is applied with error terms for at least one sweep point interpolated from the calset error terms. |
2102
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2103
+ | Settings Modified (3) | Settings during the measurment differ from those used during calibration. |
2104
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2105
+ """
2106
+
2107
+ WAVES_RESULTS_CORRECTION_LEVEL = 13639705
2108
+ r"""Returns the level of error correction applied to the specified wave measurement.
2109
+
2110
+ Use "wave<*n*>" as the selector string to read this attribute.
2111
+
2112
+ +--------------+------------------------------------------------------+
2113
+ | Name (value) | Description |
2114
+ +==============+======================================================+
2115
+ | Uncorrected | Correction is not applied to the configured wave. |
2116
+ +--------------+------------------------------------------------------+
2117
+ | Wave | 1-Port correction is applied to the configured Wave. |
2118
+ +--------------+------------------------------------------------------+
2119
+ """
2120
+
2121
+ IQ_MEASUREMENT_ENABLED = 13635594
2122
+ r"""
2123
+ """
2124
+
2125
+ IQ_ACQUISITION_TIME = 13635597
2126
+ r"""You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to
2127
+ the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for information
2128
+ about the string syntax for named signals.
2129
+ """
2130
+
2131
+ IQ_RECEIVER_PORT = 13635599
2132
+ r"""You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to
2133
+ the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for information
2134
+ about the string syntax for named signals.
2135
+ """
2136
+
2137
+ IQ_SOURCE_PORT = 13635600
2138
+ r"""You do not need to use a selector string to configure or read this attribute for the default signal instance. Refer to
2139
+ the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for information
2140
+ about the string syntax for named signals.
2141
+ """
2142
+
2143
+ IQ_RESULTS_CORRECTION_STATE = 13635609
2144
+ r"""Returns the error correction state of the VNA IQ measurement.
2145
+
2146
+ Use "iq<*n*>" as the selector string to read this attribute.
2147
+
2148
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2149
+ | Name (Value) | Description |
2150
+ +=======================+=====================================================================================================================+
2151
+ | None (0) | Error correction is not applied. |
2152
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2153
+ | Corrected (1) | Error correction is applied without interpolation using the error terms from the calset. |
2154
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2155
+ | Interpolated (2) | Error correction is applied with error terms for at least one sweep point interpolated from the calset error terms. |
2156
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2157
+ | Settings Modified (3) | Settings during the measurment differ from those used during calibration. |
2158
+ +-----------------------+---------------------------------------------------------------------------------------------------------------------+
2159
+ """
2160
+
2161
+ LIMITED_CONFIGURATION_CHANGE = 13639691
2162
+ r"""Specifies the set of attributes that are considered by NI-RFmx in the locked signal configuration state.
2163
+
2164
+ If your test system performs the same measurement repeatedly, enabling this attribute will help achieve faster
2165
+ measurements. When you set this attribute to a value other than Disabled, the RFmx driver will use an optimized code
2166
+ path and skip some checks.
2167
+
2168
+ You can also use this attribute to lock a specific instrument configuration for a signal so that every time
2169
+ that you initiate the signal, RFmx applies the RFmxInstr attributes from a locked configuration.
2170
+
2171
+ NI recommends you use this attribute in conjunction with named signal configurations. Create named signal
2172
+ configurations for each measurement configuration in your test program and set this attribute to a value other than
2173
+ Disabled for one or more of the named signal configurations. This allows RFmx to precompute the acquisition settings
2174
+ for your measurement configurations and re-use the precomputed settings each time you initiate the measurement. You do
2175
+ not need to use this attribute if you create named signals for all the measurement configurations in your test program
2176
+ during test sequence initialization and do not change any RFInstr or personality attributes while testing each device
2177
+ under test. RFmx automatically optimizes that use case.
2178
+
2179
+ Specify the named signal configuration you are setting this attribute in the `Selector String
2180
+ <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ input.
2181
+
2182
+ The default value is **Disabled**.
2183
+
2184
+ +---------------+--------------------------------------------------------------------------------------------------------------------------+
2185
+ | Name (Value) | Description |
2186
+ +===============+==========================================================================================================================+
2187
+ | Disabled (0) | This is the normal mode of RFmx operation. All configuration changes in RFmxInstr attributes or RFmxVNA attributes will |
2188
+ | | be applied during RFmx Commit. |
2189
+ +---------------+--------------------------------------------------------------------------------------------------------------------------+
2190
+ | No Change (1) | Signal configuration and RFmxInstr configuration are locked after the first Commit or Initiate of the named signal |
2191
+ | | configuration. Any configuration change thereafter either in RFmxInstr attributes or personality attributes will not be |
2192
+ | | considered by subsequent RFmx Commits or Initiates of this signal. Use No Change if you have created named signal |
2193
+ | | configurations for all measurement configurations but are setting some RFmxInstr attributes. Refer to the Limitations |
2194
+ | | of the Limited Configuration Change Property topic for more details about the limitations of using this mode. |
2195
+ +---------------+--------------------------------------------------------------------------------------------------------------------------+
2196
+ """
2197
+
2198
+ SOURCE_POWER_MODE = 13639692
2199
+ r"""Specifies whether to make VNA measurements with source turned off.
2200
+
2201
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2202
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2203
+ information about the string syntax for named signals.
2204
+
2205
+ The default value is **Auto**.
2206
+
2207
+ +--------------+--------------------------------------------------------------------------+
2208
+ | Name (Value) | Description |
2209
+ +==============+==========================================================================+
2210
+ | Auto (0) | The source is turned on when making the measurement. |
2211
+ +--------------+--------------------------------------------------------------------------+
2212
+ | Off (1) | The source is turned off for all the ports when making the measurements. |
2213
+ +--------------+--------------------------------------------------------------------------+
2214
+ """
2215
+
2216
+ GROUND_TERMINATED_PORTS = 13639693
2217
+ r"""Specifies the selection of ports to be ground terminated in case of SM2 devices. The ports passed to this attribute
2218
+ will be mutually exclusive to the ports passed to the Selected Ports attribute.
2219
+
2220
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2221
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2222
+ information about the string syntax for named signals.
2223
+ """
2224
+
2225
+ RESULT_FETCH_TIMEOUT = 13680640
2226
+ r"""Specifies the time, in seconds, to wait before results are available. Set this value to a time longer than expected for
2227
+ fetching the measurement. A value of -1 specifies that the RFmxVNA waits until the measurement is complete.
2228
+
2229
+ You do not need to use a selector string to configure or read this attribute for the default signal instance.
2230
+ Refer to the `Selector String <https://www.ni.com/docs/en-US/bundle/rfmx/page/selector-strings-net.html>`_ topic for
2231
+ information about the string syntax for named signals.
2232
+
2233
+ The default value is 10.
2234
+ """