pyserep Documentation
Contents
- Installation
- Quick Start
- API Reference
- pyserep.io
- pyserep.core
- pyserep.selection
- pyserep.frf
- pyserep.analysis
ConvergencePointConvergenceStudyPerformanceMetricsValidationReportdof_count_study()eigenvalue_error()eigenvalue_sensitivity()flop_count()frf_sensitivity()material_perturbation_study()modal_assurance_criterion()mode_count_study()monte_carlo_frf()orthogonality_check()reduction_metrics()summarise_performance()validate_serep()
- pyserep.visualization
- pyserep.models
- pyserep.utils
Timeransys_dof()apply_bcs()bandwidth()build_dof_map()condition_number_estimate()diagonal_scaling()dof_to_ansys()force_positive_definite()is_diagonal()mass_normalise()matrix_stats()memory_mb()modal_residues()modal_strain_energy()rank_revealing_qr()reorder_rcm()safe_pinv()sparse_submatrix()sparsity()symmetrise()unscale_modes()
- pyserep.pipeline
- pyserep — System Equivalent Reduction Expansion Process
ConvergencePointConvergenceStudyFRFResultFrequencyBandFrequencyBandSetFrequencyBandSet.band_weighted_mpf()FrequencyBandSet.bandsFrequencyBandSet.frequency_grid()FrequencyBandSet.frequency_mask()FrequencyBandSet.global_f_maxFrequencyBandSet.global_f_minFrequencyBandSet.is_selectiveFrequencyBandSet.mode_passes_ms1()FrequencyBandSet.n_bandsFrequencyBandSet.summary()
PerformanceMetricsPerformanceMetrics.dof_reduction_pctPerformanceMetrics.frf_flops_refPerformanceMetrics.frf_flops_romPerformanceMetrics.frf_methodPerformanceMetrics.frf_speedupPerformanceMetrics.kappaPerformanceMetrics.mode_retention_pctPerformanceMetrics.n_bandsPerformanceMetrics.n_freq_pointsPerformanceMetrics.n_full_dofsPerformanceMetrics.n_master_dofsPerformanceMetrics.n_selected_modesPerformanceMetrics.summary()PerformanceMetrics.t_dof_select_sPerformanceMetrics.t_eigensolver_sPerformanceMetrics.t_frf_sPerformanceMetrics.t_mode_select_sPerformanceMetrics.t_rom_build_sPerformanceMetrics.t_total_s
PipelineResultsPipelineResults.configPipelineResults.freqs_hzPipelineResults.phiPipelineResults.selected_modesPipelineResults.master_dofsPipelineResults.TPipelineResults.kappaPipelineResults.freq_errorsPipelineResults.max_freq_errPipelineResults.frfPipelineResults.validationPipelineResults.performancePipelineResults.elapsed_total_sPipelineResults.saved_filesPipelineResults.KaPipelineResults.MaPipelineResults.TPipelineResults.configPipelineResults.elapsed_total_sPipelineResults.freq_errorsPipelineResults.freqs_hzPipelineResults.frfPipelineResults.kappaPipelineResults.master_dofsPipelineResults.max_freq_errPipelineResults.performancePipelineResults.phiPipelineResults.saved_filesPipelineResults.selected_modesPipelineResults.summary()PipelineResults.validation
ROMConfigROMConfig.bandsROMConfig.damping_typeROMConfig.dof_methodROMConfig.effective_bandsROMConfig.eigsh_sigmaROMConfig.eigsh_tolROMConfig.export_folderROMConfig.force_dofsROMConfig.freq_rangeROMConfig.frf_methodROMConfig.global_f_maxROMConfig.global_f_minROMConfig.is_selectiveROMConfig.ke_prescreen_fracROMConfig.mac_thresholdROMConfig.mass_fileROMConfig.ms1_alphaROMConfig.ms2_thresholdROMConfig.ms3_thresholdROMConfig.n_bandsROMConfig.n_pairsROMConfig.n_points_per_bandROMConfig.num_modes_eigshROMConfig.output_dofsROMConfig.plotROMConfig.rb_hzROMConfig.save_matricesROMConfig.save_prefixROMConfig.stiffness_fileROMConfig.summary()ROMConfig.verboseROMConfig.zeta
SereпPipelineValidationReportValidationReport.eigenvalue_errors_pctValidationReport.expansion_errorValidationReport.ka_condition_numberValidationReport.ka_positive_definiteValidationReport.ma_condition_numberValidationReport.ma_positive_definiteValidationReport.mac_valuesValidationReport.mass_ortho_errorValidationReport.max_eigenvalue_error_pctValidationReport.mean_eigenvalue_error_pctValidationReport.mean_macValidationReport.min_macValidationReport.passed()ValidationReport.stiff_ortho_errorValidationReport.summary()
ansys_dof()apply_bcs()bandwidth()build_dof_map()build_rayleigh_damping()build_serep_rom()compare_dof_selectors()compute_frf_direct()compute_frf_direct_fullmodel()compute_frf_modal()compute_frf_modal_reference()compute_frf_pair_direct()condition_number_estimate()diagonal_scaling()dof_count_study()dof_to_ansys()eigenvalue_error()eigenvalue_sensitivity()enforce_symmetry()euler_beam()flop_count()force_positive_definite()frf_sensitivity()is_diagonal()load_frf_npz()load_matrices()load_matrix()load_metrics()load_reduced_matrices()mac_filter()mass_normalise()material_perturbation_study()matrix_stats()memory_mb()modal_assurance_criterion()modal_residues()modal_strain_energy()mode_count_study()model_info()monte_carlo_frf()ms1_frequency_range()ms2_participation_factor()ms3_spatial_amplitude()ms4_conditioning_check()orthogonality_check()plate_2d()plot_dof_selector_comparison()plot_frf_comparison()plot_frf_overlay()plot_mac_matrix()plot_mode_shapes()plot_performance_dashboard()random_symmetric_pd()rank_revealing_qr()reduction_metrics()reorder_rcm()safe_pinv()save_results()select_dofs_eid()select_dofs_kinetic()select_dofs_modal_disp()select_dofs_svd()select_modes()select_modes_pipeline()solve_eigenproblem()sparse_submatrix()sparsity()spring_chain()summarise_performance()symmetrise()unscale_modes()validate_serep()verify_eigenvalues()write_ansys_node_list()write_master_dofs_csv()write_master_dofs_vtk()write_uff58_mode_shapes()
- Mathematical Theory
- Changelog
Introduction
pyserep is a production-grade Python library for the System Equivalent Reduction Expansion Process (SEREP), a model order reduction technique for large-scale structural finite element models.
Key features:
Exact SEREP eigenvalue preservation (Φₐ⁺ pseudoinverse formulation)
Direct FRF via impedance inversion
H(ω) = Z(ω)⁻¹— no modal truncationFour DOF selection methods (DS1–DS4) with condition number benchmarking
Selective non-contiguous frequency band analysis
Sensitivity analysis and Monte Carlo uncertainty quantification
Full validation suite, CLI, and mesh export to Ansys/ParaView/UFF58
Install:
pip install pyserep
Note
For the Garteur SM-AG19 benchmark results, see the examples directory.