1212
1313
1414class spectrum_data (Operator ):
15- """Read participation factors from mode file.
15+ """Read spectral data from the result files contained in the streams or
16+ data sources.
1617
1718 Parameters
1819 ----------
20+ streams : StreamsContainer, optional
21+ Result file container allowed to be kept open
22+ to cache data.
1923 data_sources : DataSources
20- Data_sources (must contain at least one mode
21- file) .
24+ Result file path container, used if no
25+ streams are set .
2226
2327 Returns
2428 -------
2529 participation_factors : FieldsContainer
26- Fields container containing participation
30+ Fields container holding participation
2731 factors.
32+ mode_coefficients : FieldsContainer
33+ Fields container holding mode coefficients
34+ (prs file).
35+ damping_ratios : FieldsContainer
36+ Fields container holding damping ratios (prs
37+ file).
38+ global_damping : FieldsContainer
39+ Fields container holding for each spectrum:
40+ global damping ratio, damping
41+ stiffness coefficient & damping mass
42+ coefficient (prs file).
43+ missing_mass : FieldsContainer
44+ Fields container holding for each spectrum:
45+ missing mass mode (0: none, 1:
46+ active), missing mass effect zpa (prs
47+ file).
48+ rigid_response : FieldsContainer
49+ Fields container holding for each spectrum:
50+ rigid response mode (0: none, 1:
51+ gupta, 2: lindley), freq begin
52+ (gupta) / zpa (lindley), freq end
53+ (gupta) (prs file).
2854
2955 Examples
3056 --------
@@ -34,47 +60,107 @@ class spectrum_data(Operator):
3460 >>> op = dpf.operators.result.spectrum_data()
3561
3662 >>> # Make input connections
63+ >>> my_streams = dpf.StreamsContainer()
64+ >>> op.inputs.streams.connect(my_streams)
3765 >>> my_data_sources = dpf.DataSources()
3866 >>> op.inputs.data_sources.connect(my_data_sources)
3967
4068 >>> # Instantiate operator and connect inputs in one line
4169 >>> op = dpf.operators.result.spectrum_data(
70+ ... streams=my_streams,
4271 ... data_sources=my_data_sources,
4372 ... )
4473
4574 >>> # Get output data
4675 >>> result_participation_factors = op.outputs.participation_factors()
76+ >>> result_mode_coefficients = op.outputs.mode_coefficients()
77+ >>> result_damping_ratios = op.outputs.damping_ratios()
78+ >>> result_global_damping = op.outputs.global_damping()
79+ >>> result_missing_mass = op.outputs.missing_mass()
80+ >>> result_rigid_response = op.outputs.rigid_response()
4781 """
4882
49- def __init__ (self , data_sources = None , config = None , server = None ):
83+ def __init__ (self , streams = None , data_sources = None , config = None , server = None ):
5084 super ().__init__ (name = "spectrum_data" , config = config , server = server )
5185 self ._inputs = InputsSpectrumData (self )
5286 self ._outputs = OutputsSpectrumData (self )
87+ if streams is not None :
88+ self .inputs .streams .connect (streams )
5389 if data_sources is not None :
5490 self .inputs .data_sources .connect (data_sources )
5591
5692 @staticmethod
5793 def _spec ():
58- description = """Read participation factors from mode file."""
94+ description = """Read spectral data from the result files contained in the streams or
95+ data sources."""
5996 spec = Specification (
6097 description = description ,
6198 map_input_pin_spec = {
99+ 3 : PinSpecification (
100+ name = "streams" ,
101+ type_names = ["streams_container" ],
102+ optional = True ,
103+ document = """Result file container allowed to be kept open
104+ to cache data.""" ,
105+ ),
62106 4 : PinSpecification (
63107 name = "data_sources" ,
64108 type_names = ["data_sources" ],
65109 optional = False ,
66- document = """Data_sources (must contain at least one mode
67- file) .""" ,
110+ document = """Result file path container, used if no
111+ streams are set .""" ,
68112 ),
69113 },
70114 map_output_pin_spec = {
71115 0 : PinSpecification (
72116 name = "participation_factors" ,
73117 type_names = ["fields_container" ],
74118 optional = False ,
75- document = """Fields container containing participation
119+ document = """Fields container holding participation
76120 factors.""" ,
77121 ),
122+ 1 : PinSpecification (
123+ name = "mode_coefficients" ,
124+ type_names = ["fields_container" ],
125+ optional = False ,
126+ document = """Fields container holding mode coefficients
127+ (prs file).""" ,
128+ ),
129+ 2 : PinSpecification (
130+ name = "damping_ratios" ,
131+ type_names = ["fields_container" ],
132+ optional = False ,
133+ document = """Fields container holding damping ratios (prs
134+ file).""" ,
135+ ),
136+ 3 : PinSpecification (
137+ name = "global_damping" ,
138+ type_names = ["fields_container" ],
139+ optional = False ,
140+ document = """Fields container holding for each spectrum:
141+ global damping ratio, damping
142+ stiffness coefficient & damping mass
143+ coefficient (prs file).""" ,
144+ ),
145+ 4 : PinSpecification (
146+ name = "missing_mass" ,
147+ type_names = ["fields_container" ],
148+ optional = False ,
149+ document = """Fields container holding for each spectrum:
150+ missing mass mode (0: none, 1:
151+ active), missing mass effect zpa (prs
152+ file).""" ,
153+ ),
154+ 5 : PinSpecification (
155+ name = "rigid_response" ,
156+ type_names = ["fields_container" ],
157+ optional = False ,
158+ document = """Fields container holding for each spectrum:
159+ rigid response mode (0: none, 1:
160+ gupta, 2: lindley), freq begin
161+ (gupta) / zpa (lindley), freq end
162+ (gupta) (prs file).""" ,
163+ ),
78164 },
79165 )
80166 return spec
@@ -124,21 +210,46 @@ class InputsSpectrumData(_Inputs):
124210 --------
125211 >>> from ansys.dpf import core as dpf
126212 >>> op = dpf.operators.result.spectrum_data()
213+ >>> my_streams = dpf.StreamsContainer()
214+ >>> op.inputs.streams.connect(my_streams)
127215 >>> my_data_sources = dpf.DataSources()
128216 >>> op.inputs.data_sources.connect(my_data_sources)
129217 """
130218
131219 def __init__ (self , op : Operator ):
132220 super ().__init__ (spectrum_data ._spec ().inputs , op )
221+ self ._streams = Input (spectrum_data ._spec ().input_pin (3 ), 3 , op , - 1 )
222+ self ._inputs .append (self ._streams )
133223 self ._data_sources = Input (spectrum_data ._spec ().input_pin (4 ), 4 , op , - 1 )
134224 self ._inputs .append (self ._data_sources )
135225
226+ @property
227+ def streams (self ):
228+ """Allows to connect streams input to the operator.
229+
230+ Result file container allowed to be kept open
231+ to cache data.
232+
233+ Parameters
234+ ----------
235+ my_streams : StreamsContainer
236+
237+ Examples
238+ --------
239+ >>> from ansys.dpf import core as dpf
240+ >>> op = dpf.operators.result.spectrum_data()
241+ >>> op.inputs.streams.connect(my_streams)
242+ >>> # or
243+ >>> op.inputs.streams(my_streams)
244+ """
245+ return self ._streams
246+
136247 @property
137248 def data_sources (self ):
138249 """Allows to connect data_sources input to the operator.
139250
140- Data_sources (must contain at least one mode
141- file) .
251+ Result file path container, used if no
252+ streams are set .
142253
143254 Parameters
144255 ----------
@@ -165,12 +276,27 @@ class OutputsSpectrumData(_Outputs):
165276 >>> op = dpf.operators.result.spectrum_data()
166277 >>> # Connect inputs : op.inputs. ...
167278 >>> result_participation_factors = op.outputs.participation_factors()
279+ >>> result_mode_coefficients = op.outputs.mode_coefficients()
280+ >>> result_damping_ratios = op.outputs.damping_ratios()
281+ >>> result_global_damping = op.outputs.global_damping()
282+ >>> result_missing_mass = op.outputs.missing_mass()
283+ >>> result_rigid_response = op.outputs.rigid_response()
168284 """
169285
170286 def __init__ (self , op : Operator ):
171287 super ().__init__ (spectrum_data ._spec ().outputs , op )
172288 self ._participation_factors = Output (spectrum_data ._spec ().output_pin (0 ), 0 , op )
173289 self ._outputs .append (self ._participation_factors )
290+ self ._mode_coefficients = Output (spectrum_data ._spec ().output_pin (1 ), 1 , op )
291+ self ._outputs .append (self ._mode_coefficients )
292+ self ._damping_ratios = Output (spectrum_data ._spec ().output_pin (2 ), 2 , op )
293+ self ._outputs .append (self ._damping_ratios )
294+ self ._global_damping = Output (spectrum_data ._spec ().output_pin (3 ), 3 , op )
295+ self ._outputs .append (self ._global_damping )
296+ self ._missing_mass = Output (spectrum_data ._spec ().output_pin (4 ), 4 , op )
297+ self ._outputs .append (self ._missing_mass )
298+ self ._rigid_response = Output (spectrum_data ._spec ().output_pin (5 ), 5 , op )
299+ self ._outputs .append (self ._rigid_response )
174300
175301 @property
176302 def participation_factors (self ):
@@ -188,3 +314,88 @@ def participation_factors(self):
188314 >>> result_participation_factors = op.outputs.participation_factors()
189315 """ # noqa: E501
190316 return self ._participation_factors
317+
318+ @property
319+ def mode_coefficients (self ):
320+ """Allows to get mode_coefficients output of the operator
321+
322+ Returns
323+ ----------
324+ my_mode_coefficients : FieldsContainer
325+
326+ Examples
327+ --------
328+ >>> from ansys.dpf import core as dpf
329+ >>> op = dpf.operators.result.spectrum_data()
330+ >>> # Connect inputs : op.inputs. ...
331+ >>> result_mode_coefficients = op.outputs.mode_coefficients()
332+ """ # noqa: E501
333+ return self ._mode_coefficients
334+
335+ @property
336+ def damping_ratios (self ):
337+ """Allows to get damping_ratios output of the operator
338+
339+ Returns
340+ ----------
341+ my_damping_ratios : FieldsContainer
342+
343+ Examples
344+ --------
345+ >>> from ansys.dpf import core as dpf
346+ >>> op = dpf.operators.result.spectrum_data()
347+ >>> # Connect inputs : op.inputs. ...
348+ >>> result_damping_ratios = op.outputs.damping_ratios()
349+ """ # noqa: E501
350+ return self ._damping_ratios
351+
352+ @property
353+ def global_damping (self ):
354+ """Allows to get global_damping output of the operator
355+
356+ Returns
357+ ----------
358+ my_global_damping : FieldsContainer
359+
360+ Examples
361+ --------
362+ >>> from ansys.dpf import core as dpf
363+ >>> op = dpf.operators.result.spectrum_data()
364+ >>> # Connect inputs : op.inputs. ...
365+ >>> result_global_damping = op.outputs.global_damping()
366+ """ # noqa: E501
367+ return self ._global_damping
368+
369+ @property
370+ def missing_mass (self ):
371+ """Allows to get missing_mass output of the operator
372+
373+ Returns
374+ ----------
375+ my_missing_mass : FieldsContainer
376+
377+ Examples
378+ --------
379+ >>> from ansys.dpf import core as dpf
380+ >>> op = dpf.operators.result.spectrum_data()
381+ >>> # Connect inputs : op.inputs. ...
382+ >>> result_missing_mass = op.outputs.missing_mass()
383+ """ # noqa: E501
384+ return self ._missing_mass
385+
386+ @property
387+ def rigid_response (self ):
388+ """Allows to get rigid_response output of the operator
389+
390+ Returns
391+ ----------
392+ my_rigid_response : FieldsContainer
393+
394+ Examples
395+ --------
396+ >>> from ansys.dpf import core as dpf
397+ >>> op = dpf.operators.result.spectrum_data()
398+ >>> # Connect inputs : op.inputs. ...
399+ >>> result_rigid_response = op.outputs.rigid_response()
400+ """ # noqa: E501
401+ return self ._rigid_response
0 commit comments