@@ -445,7 +445,7 @@ Fitting Modes to the FRFs
445445-------------------------
446446
447447Now that we have data and geometry, we can perform experimental modal analysis.
448- We will fit modes both with SMAC and PolyMax . First we will do SMAC, so we can
448+ We will fit modes both with SMAC and PolyPy . First we will do SMAC, so we can
449449call :py:class: `sdpy.SMAC_GUI<sdynpy.modal.sdynpy_smac.SMAC_GUI> ` in the
450450IPython console to load the GUI.
451451
@@ -508,39 +508,39 @@ The MAC can also be plotted to visualize the independence of the shapes.
508508Shapes are saved to the file :code: `'rattlesnake_test_shapes_smac.npy' ` so they
509509can be loaded into the script without re-running SMAC.
510510
511- Similarly, PolyMax can be run by calling the :py:class: `sdpy.PolyMax_GUI <sdynpy.modal.sdynpy_polymax.PolyMax_GUI > `
511+ Similarly, PolyPy can be run by calling the :py:class: `sdpy.PolyPy_GUI <sdynpy.modal.sdynpy_polypy.PolyPy_GUI > `
512512class from the IPython console.
513513
514514.. code-block :: console
515515
516- In [13]: sdynpy.PolyMax_GUI (frfs)
517- Out[13]: <sdynpy.modal.sdynpy_polymax.PolyMax_GUI at 0x14fff4c5d30>
516+ In [13]: sdynpy.PolyPy_GUI (frfs)
517+ Out[13]: <sdynpy.modal.sdynpy_polypy.PolyPy_GUI at 0x14fff4c5d30>
518518
519- The first page of the SDynPy PolyMax implementation allows users to select the
519+ The first page of the SDynPy PolyPy implementation allows users to select the
520520frequency range of the analysis. Also selected is the number of poles to use
521521in the polynomial fitter.
522522
523- .. image :: figures/sdynpy_demo_polymax_setup .png
523+ .. image :: figures/sdynpy_demo_polypy_setup .png
524524 :width: 600
525- :alt: Initial setup for PolyMax frequency range
525+ :alt: Initial setup for PolyPy frequency range
526526
527527Once the poles are solved, a stability plot is presented. The user can click
528528on individual icons on the stability plot to select given poles to use in the
529529resynthesis.
530530
531- .. image :: figures/sdynpy_demo_polymax_stability_plot .png
531+ .. image :: figures/sdynpy_demo_polypy_stability_plot .png
532532 :width: 600
533- :alt: PolyMax stability plot
533+ :alt: PolyPy stability plot
534534
535535With the poles selected, shapes can be computed. Resynthesized FRFs are plotted
536536for the user to investigate.
537537
538- .. image :: figures/sdynpy_demo_polymax_resynthesize .png
538+ .. image :: figures/sdynpy_demo_polypy_resynthesize .png
539539 :width: 600
540- :alt: PolyMax resynthesis
540+ :alt: PolyPy resynthesis
541541
542- Shapes are saved to the file :code: `'rattlesnake_test_shapes_polymax .npy' ` so they
543- can be loaded into the script without re-running PolyMax .
542+ Shapes are saved to the file :code: `'rattlesnake_test_shapes_polypy .npy' ` so they
543+ can be loaded into the script without re-running PolyPy .
544544
545545Analyzing Modal Parameters
546546--------------------------
@@ -553,7 +553,7 @@ shape files into our script for analysis using the
553553
554554 # Load the shape files from our curve fitting into the script
555555 test_shapes_smac = sdpy.shape.load(' rattlesnake_test_shapes_smac.npy' )
556- test_shapes_polymax = sdpy.shape.load(' rattlesnake_test_shapes_smac.npy' )
556+ test_shapes_polypy = sdpy.shape.load(' rattlesnake_test_shapes_smac.npy' )
557557
558558 We also want to extract finite element shapes from the Exodus file using the
559559:py:func: `sdpy.shape.from_exodus<sdynpy.core.sdynpy_shape.ShapeArray.from_exodus> `
@@ -584,7 +584,7 @@ finite element shapes reduced to the test degrees of freedom.
584584 response_dofs = test_shapes_smac[0 ].coordinate
585585 # Can extract a shape matrix by indexing the shape arrays with a CoordinateArray
586586 test_shape_matrix_smac = test_shapes_smac[response_dofs].T
587- test_shape_matrix_polymax = test_shapes_smac[response_dofs].T
587+ test_shape_matrix_polypy = test_shapes_smac[response_dofs].T
588588 test_shape_matrix_fem = fem_shapes[response_dofs].T
589589 # Create an actual ShapeArray object
590590 fem_shapes_reduced = sdpy.shape_array(response_dofs,
@@ -601,11 +601,11 @@ function that provides a nice visualization of the Modal Assurance Criterion mat
601601.. code-block :: python
602602
603603 # Look at correlation between shapes from different tests/analyses
604- mac_smac_polymax = sdpy.correlation.mac(test_shape_matrix_smac,test_shape_matrix_polymax )
604+ mac_smac_polypy = sdpy.correlation.mac(test_shape_matrix_smac,test_shape_matrix_polypy )
605605 mac_smac_fem = sdpy.correlation.mac(test_shape_matrix_smac,test_shape_matrix_fem)
606- mac_polymax_fem = sdpy.correlation.mac(test_shape_matrix_polymax ,test_shape_matrix_fem)
606+ mac_polypy_fem = sdpy.correlation.mac(test_shape_matrix_polypy ,test_shape_matrix_fem)
607607 # Plot the mac matrix between the
608- sdpy.correlation.matrix_plot(mac_polymax_fem )
608+ sdpy.correlation.matrix_plot(mac_polypy_fem )
609609
610610 .. image :: figures/sdynpy_demo_mac_test_fem.png
611611 :width: 600
@@ -625,11 +625,11 @@ of the first mode to a :code:`.gif` file.
625625
626626 # Compare shapes by overlaying them
627627 # Find the best match in the FEM to each of the test shapes
628- fem_matches = np.argmax(mac_polymax_fem ,axis = 1 )
628+ fem_matches = np.argmax(mac_polypy_fem ,axis = 1 )
629629 # Overlay the shapes and geometry
630630 combined_geometry,combined_shapes = sdpy.shape.overlay_shapes(
631631 (test_geometry,test_geometry),
632- (test_shapes_polymax ,fem_shapes_reduced[fem_matches]),
632+ (test_shapes_polypy ,fem_shapes_reduced[fem_matches]),
633633 color_override = [1 ,11 ])
634634 # Plot the shapes to set up the animation
635635 geometry_kwargs = {' view_up' :[0 ,1 ,0 ],' line_width' :5 ,' node_size' :8 }
@@ -679,7 +679,7 @@ slide that does not have a subtitle placeholder on it.
679679 title = ' BARC Modal with Rattlesnake' ,
680680 subtitle = ' A SDynPy Demonstration' ,
681681 geometry = test_geometry,
682- shapes = test_shapes_polymax ,
682+ shapes = test_shapes_polypy ,
683683 frfs = frfs,
684684 geometry_plot_kwargs = geometry_kwargs,
685685 content_slide_layout_index = 2 ,
@@ -724,7 +724,7 @@ to allow animation of the shapes inside the exported PDF.
724724 sdpy.doc.create_latex_summary(
725725 figure_basename = ' figures/rattlesnake_test.png' ,
726726 geometry = test_geometry,
727- shapes = test_shapes_polymax ,
727+ shapes = test_shapes_polypy ,
728728 frfs = frfs,
729729 output_file = ' rattlesnake_test_memo_content.tex' ,
730730 geometry_plot_kwargs = geometry_kwargs)
@@ -798,7 +798,7 @@ shapes should be included in the expansion.
798798
799799.. code-block :: python
800800
801- q = np.linalg.lstsq(test_shape_matrix_fem[:,:14 ],test_shape_matrix_polymax )[0 ]
801+ q = np.linalg.lstsq(test_shape_matrix_fem[:,:14 ],test_shape_matrix_polypy )[0 ]
802802
803803 We then want to multiply this coefficient by the full finite element shapes to
804804estimate what the test shapes would look like in the full finite element space.
@@ -824,7 +824,7 @@ us to fill that information in with the test frequencies.
824824 # Linearly combine the existing shapes into new shapes
825825 fexo_repack = fexo.repack(q)
826826 # Fill in the abscissa data (frequencies in this case)
827- fexo_repack.time = test_shapes_polymax .frequency
827+ fexo_repack.time = test_shapes_polypy .frequency
828828
829829 If we want to plot the new shapes in SDynPy, we could load the shapes back into
830830a :py:class: `sdpy.ShapeArray<sdynpy.core.sdynpy_shape.ShapeArray> ` object, and
@@ -834,11 +834,11 @@ even combine with the finite element shapes for comparison.
834834
835835 # Plot expanded shapes against finite element shapes
836836 # Load shapes into sdynpy ShapeArray object
837- expanded_shapes_polymax = sdpy.shape.from_exodus(fexo_repack)
837+ expanded_shapes_polypy = sdpy.shape.from_exodus(fexo_repack)
838838 # combine the shapes
839839 combined_expanded_geometry,combined_expanded_shapes = sdpy.shape.overlay_shapes(
840840 (fem_geometry,fem_geometry),
841- (expanded_shapes_polymax ,fem_shapes[fem_matches]),color_override = [1 ,11 ])
841+ (expanded_shapes_polypy ,fem_shapes[fem_matches]),color_override = [1 ,11 ])
842842 # Plot the shapes overlaid
843843 plotter = combined_expanded_geometry.plot_shape(
844844 combined_expanded_shapes,{' view_up' :[0 ,1 ,0 ],' node_size' :0 },
@@ -855,11 +855,11 @@ to visualize in external software.
855855.. code-block :: python
856856
857857 # Create an ExodusInMemory object from sdynpy objects
858- fexo_out = sdpy.ExodusInMemory.from_sdynpy(test_geometry,test_shapes_polymax )
858+ fexo_out = sdpy.ExodusInMemory.from_sdynpy(test_geometry,test_shapes_polypy )
859859 # Write it to a file
860860 fexo_out.write_to_file(' rattlesnake_test_output.exo' ,clobber = True )
861861 # Repeat with the expanded data
862- fexo_out = sdpy.ExodusInMemory.from_sdynpy(fem_geometry,expanded_shapes_polymax )
862+ fexo_out = sdpy.ExodusInMemory.from_sdynpy(fem_geometry,expanded_shapes_polypy )
863863 fexo_out.write_to_file(' rattlesnake_test_output_expanded.exo' ,clobber = True )
864864
865865 The Exodus files can then be loaded into an external software such as Paraview
0 commit comments