dPBE: Discrete Population Balance Equations

Contents:

  • Quick Start
    • 1. Importing the Class
    • 2. Instantiating the Solver
    • 3. Running the Solver
    • 4. Using Other Classes
  • Overview
    • Overview
      • 1. Model
      • 2. Class Structure
      • 3. Config Data
      • 4. Optimization Framework
    • Model
      • 1. Population Balance Equation (PBE)
      • 2. DPBE Solver
        • Grid Types
          • 1. Uniform Grid (uni grid)
          • 2. Geometric Grid (geo grid)
        • Implemented Mechanisms
        • Dimensionality
        • Numerical Solver
      • 3. PBMSolver
        • Moment Definition
        • Quadrature Method of Moments (QMOM)
        • Implemented Algorithms
        • Stability Considerations
      • 4. MCPBESolver
        • Principle
        • Computational Cost
        • Accuracy and Stability
      • 5. ExtruderPBESolver
      • 6. Summary
        • Comparison of Solvers
    • Class Structure
      • Overview
      • Solver Class Structures
        • 1. DPBESolver
        • 2. ExtruderPBESolver
        • 3. PBMSolver
        • 4. MCPBESolver
      • Optimization Framework Classes
        • 5. OptBase
    • Config Data
      • 1. General Solvers
      • 2. ExtruderPBESolver
      • 3. Optimization Framework
    • Optimization Framework
      • 1. Motivation
      • 2. Basic Workflow
      • 3. Ray Tune Framework
        • Actors in Ray Tune
          • Caveats with Actors
      • 4. Usage Recommendations
  • Attributes
    • Common Attributes of the Solver Class
      • General Information
      • Simulation Parameters
      • Agglomeration Kernel Parameters
      • Breakage Kernel Parameters
      • Particle Size Distribution Parameters
      • DLVO Theory Parameters
      • Hydrophobic Interaction Parameters
      • Experimental/Process Parameters
      • Calculated Parameters
    • DPBESolver Specific Attributes
      • General Information
      • Discretization Parameters
      • Material Parameters
      • Physical Constants
      • Process Parameters
      • Computational Options
      • Submodules
    • PBMSolver Specific Attributes
      • General Information
      • Moment Method Parameters
      • Integration Tolerance Parameters
      • Runtime Calculated Attributes
      • Submodules
    • MCPBESolver Specific Attributes
      • General Information
      • Simulation Parameters
      • Initial Condition Parameters
      • Runtime Variables
      • Process Control Flags
      • Data Storage Arrays
      • Method Parameters
  • Advanced Guide: Adding a Custom Kernel Model
    • 1. Class Layer: Define Parameters & Defaults
    • 2. JIT Layer: Add the Mathematical Model & Wire Parameters
      • A. Agglomeration rate
      • B. Breakage rate
      • C. Breakage fragment distribution
    • 3. Runtime: Add Parameters in Config
    • 4. Validation
  • Advanced Guide: Coupling Custom Solvers with the Optimizer
    • 1. Adapters API Modules
    • 2. Key Points When Defining a Custom Adapter
    • 3. Summary
  • References
  • optframework package
    • Subpackages
      • optframework.base package
        • Submodules
          • optframework.base.adapters_api module
            • SolverProtocol
              • SolverProtocol.set_comp_para()
              • SolverProtocol.reset_params()
              • SolverProtocol.calc_init_from_data()
              • SolverProtocol.calc_matrix()
              • SolverProtocol.solve()
              • SolverProtocol.get_all_data()
              • SolverProtocol.calc_delta_pop()
              • SolverProtocol.close()
            • validate_solver()
            • make_solver()
          • optframework.base.adapters_api_basics module
            • WriteThroughAdapter
          • optframework.base.base_post module
            • BasePost
          • optframework.base.base_solver module
            • BaseSolver
          • optframework.base.dpbe_adapter module
            • DPBEAdapter
              • DPBEAdapter.set_comp_para()
              • DPBEAdapter.reset_params()
              • DPBEAdapter.calc_init_from_data()
              • DPBEAdapter.calc_matrix()
              • DPBEAdapter.solve()
              • DPBEAdapter.get_all_data()
              • DPBEAdapter.calc_delta_pop()
              • DPBEAdapter.close()
              • DPBEAdapter.generate_data()
      • optframework.dpbe package
        • Submodules
          • optframework.dpbe.dpbe_base module
            • DPBESolver
          • optframework.dpbe.dpbe_core module
            • DPBECore
              • DPBECore.full_init()
              • DPBECore.calc_R()
              • DPBECore.init_N()
              • DPBECore.calc_F_M()
              • DPBECore.calc_B_R()
              • DPBECore.calc_int_B_F()
              • DPBECore.calc_alpha_prim()
              • DPBECore.int_fun()
              • DPBECore.solve_PBE()
          • optframework.dpbe.dpbe_extruder module
            • ExtruderPBESolver
              • ExtruderPBESolver.set_comp_geom_params()
              • ExtruderPBESolver.get_all_comp_params()
              • ExtruderPBESolver.init_comp_params()
              • ExtruderPBESolver.get_one_comp_params()
              • ExtruderPBESolver.get_all_comp_params_from_dict()
              • ExtruderPBESolver.solve_extruder()
          • optframework.dpbe.dpbe_mag_sep module
            • init_mag_sep_params()
            • mag_sep()
          • optframework.dpbe.dpbe_post module
            • DPBEPost
              • DPBEPost.init_post_params()
              • DPBEPost.calc_v_uni()
              • DPBEPost.calc_x_uni()
              • DPBEPost.calc_Qx()
              • DPBEPost.calc_sum_uni()
              • DPBEPost.calc_qx()
              • DPBEPost.re_calc_distribution()
              • DPBEPost.return_distribution()
              • DPBEPost.return_N_t()
              • DPBEPost.calc_mom_t()
              • DPBEPost.calc_mom_r_t()
              • DPBEPost.save_vars()
              • DPBEPost.calc_weibull()
          • optframework.dpbe.dpbe_visualization module
            • DPBEVisual
              • DPBEVisual.init_visual_params()
              • DPBEVisual.visualize_distN_t()
              • DPBEVisual.visualize_qQ_t()
              • DPBEVisual.visualize_sumN_t()
              • DPBEVisual.visualize_sumvol_t()
              • DPBEVisual.visualize_distribution()
              • DPBEVisual.visualize_distribution_animation()
      • optframework.examples package
        • Subpackages
          • optframework.examples.config package
            • Submodules
              • optframework.examples.config.All_Test_config module
              • optframework.examples.config.Extruder0_config module
              • optframework.examples.config.MCPBE_config module
              • optframework.examples.config.PBE_config module
              • optframework.examples.config.PBM_config module
              • optframework.examples.config.opt_config module
        • Submodules
          • optframework.examples.all_test module
          • optframework.examples.simple_dpbe module
            • visualize_distribution()
            • animation_distribution()
            • visualize_convergence()
            • visualize_N()
          • optframework.examples.simple_extruder module
          • optframework.examples.simple_mcpbe module
            • MCPBESolver Basic Usage Example
            • run_mcpbe()
          • optframework.examples.simple_opt module
            • normal_test()
            • return_pop_distribution()
            • calc_delta_test()
          • optframework.examples.simple_pbm module
            • PBMSolver Basic Usage Example
          • optframework.examples.simple_validation module
      • optframework.kernel_opt package
        • Submodules
          • optframework.kernel_opt.opt_algo_bo module
            • optimierer_bo()
          • optframework.kernel_opt.opt_base module
            • OptBase
              • OptBase.check_core_params()
              • OptBase.check_config_path()
              • OptBase.init_opt_core()
              • OptBase.find_opt_kernels()
              • OptBase.calc_PSD_delta()
          • optframework.kernel_opt.opt_base_ray module
            • OptBaseRay
              • OptBaseRay.print_current_actors()
              • OptBaseRay.multi_optimierer_ray()
              • OptBaseRay.check_num_jobs()
              • OptBaseRay.optimierer_ray()
              • OptBaseRay.create_algo()
          • optframework.kernel_opt.opt_core module
            • OptCore
              • OptCore.init_attr()
              • OptCore.init_pbe()
              • OptCore.calc_delta()
              • OptCore.check_corr_agg()
              • OptCore.return_syth_beta()
              • OptCore.array_dict_transform()
              • OptCore.cost_fun()
              • OptCore.print_notice()
              • OptCore.optimierer_bo()
          • optframework.kernel_opt.opt_core_multi module
            • OptCoreMulti
              • OptCoreMulti.calc_delta()
              • OptCoreMulti.calc_all_pop()
          • optframework.kernel_opt.opt_core_multi_ray module
            • OptCoreMultiRay
          • optframework.kernel_opt.opt_core_ray module
            • OptCoreRay
              • OptCoreRay.setup()
              • OptCoreRay.step()
              • OptCoreRay.save_checkpoint()
              • OptCoreRay.load_checkpoint()
              • OptCoreRay.reset_config()
          • optframework.kernel_opt.opt_data module
            • OptData
              • OptData.read_exp()
              • OptData.function_noise()
              • OptData.KDE_fit()
              • OptData.KDE_score()
              • OptData.traverse_path()
          • optframework.kernel_opt.opt_pbe module
            • OptPBE
              • OptPBE.close_pbe()
              • OptPBE.calc_pop()
              • OptPBE.set_init_pop_para()
              • OptPBE.set_pop_para()
              • OptPBE.set_pop_attributes()
      • optframework.mcpbe package
        • Submodules
          • optframework.mcpbe.mcpbe module
            • MCPBESolver
              • MCPBESolver.init_calc()
              • MCPBESolver.solve_MC_N()
              • MCPBESolver.solve_MC()
              • MCPBESolver.select_two_random()
              • MCPBESolver.select_one_random()
              • MCPBESolver.select_size()
              • MCPBESolver.calc_inter_event_time_agg()
              • MCPBESolver.calc_inter_event_time_break()
              • MCPBESolver.calc_alpha_ccm()
              • MCPBESolver.calc_mom_t()
              • MCPBESolver.combine_MC()
              • MCPBESolver.visualize_qQ_t()
              • MCPBESolver.visualize_mom_t()
              • MCPBESolver.return_distribution()
              • MCPBESolver.calc_one_agg()
              • MCPBESolver.calc_one_break()
              • MCPBESolver.produce_one_frag()
              • MCPBESolver.calc_break_rate()
              • MCPBESolver.calc_break_func()
              • MCPBESolver.check_dim_consistency()
            • calc_betaarray_jit()
            • calc_b_r_jit_1d()
            • calc_alpha_ccm_jit()
            • calc_inter_event_time_array()
            • select_size_jit()
          • optframework.mcpbe.mcpbe_jit module
            • MCPBESolver
              • MCPBESolver.init_calc()
              • MCPBESolver.solve_MC_N()
              • MCPBESolver.solve_MC()
              • MCPBESolver.select_two_random()
              • MCPBESolver.select_one_random()
              • MCPBESolver.select_size()
              • MCPBESolver.calc_inter_event_time_agg()
              • MCPBESolver.calc_inter_event_time_break()
              • MCPBESolver.calc_alpha_ccm()
              • MCPBESolver.calc_mom_t()
              • MCPBESolver.combine_MC()
              • MCPBESolver.visualize_qQ_t()
              • MCPBESolver.visualize_mom_t()
              • MCPBESolver.return_distribution()
              • MCPBESolver.calc_one_agg()
              • MCPBESolver.calc_one_break()
              • MCPBESolver.calc_break_rate()
              • MCPBESolver.calc_break_func()
              • MCPBESolver.check_dim_consistency()
            • calc_betaarray_jit()
            • calc_b_r_jit_1d()
            • calc_alpha_ccm_jit()
            • calc_inter_event_time_array()
            • select_size_jit()
            • handle_fragments()
            • produce_one_frag()
      • optframework.pbm package
        • Submodules
          • optframework.pbm.pbm_base module
            • PBMSolver
              • PBMSolver.trapz_2d()
              • PBMSolver.normalize_mom()
              • PBMSolver.set_tol()
              • PBMSolver.create_ndf()
              • PBMSolver.NDF_approx()
              • PBMSolver.moment_2d_indices_chy()
              • PBMSolver.moment_2d_indices_c()
          • optframework.pbm.pbm_core module
            • PBMCore
              • PBMCore.init_moments()
              • PBMCore.init_moments_2d()
              • PBMCore.solve_PBM()
          • optframework.pbm.pbm_post module
            • PBMPost
              • PBMPost.plot_moments_comparison()
              • PBMPost.plot_NDF_comparison()
              • PBMPost.plot_nodes_weights_comparision()
          • optframework.pbm.pbm_quick_test module
            • PBMQuickTest
              • PBMQuickTest.QMOM()
              • PBMQuickTest.QMOM_normal()
              • PBMQuickTest.CHyQMOM_2d()
              • PBMQuickTest.CQMOM_2d()
      • optframework.utils package
        • Subpackages
          • optframework.utils.func package
            • Submodules
              • optframework.utils.func.RK_Radau module
                • func()
                • analytic_sol()
                • num_jac()
                • dense_num_jac()
                • predict_factor()
                • norm()
                • interpolation_radau()
                • solve_collocation_system()
                • radau_ii_a
              • optframework.utils.func.bind_methods module
                • bind_methods_from_module()
                • bind_selected_methods_from_module()
                • unbind_methods_from_class()
              • optframework.utils.func.change_config module
                • ReplaceConfig
                • replace_key_value()
              • optframework.utils.func.func_math module
                • float_equal()
                • float_in_list()
                • isZero()
                • ensure_integer_array()
              • optframework.utils.func.func_read_exp module
                • write_read_exp
              • optframework.utils.func.jit_dpbe_rhs module
                • get_dNdt_1d_geo()
                • get_dNdt_2d_geo()
                • get_dNdt_3d_geo()
                • get_dNdt_1d_uni()
                • get_dNdt_2d_uni()
                • get_dNdt_3d_uni()
                • lam()
                • lam_2d()
                • heaviside()
                • get_lam_3d()
                • calc_1d_agglomeration()
                • calc_1d_breakage()
                • calc_2d_agglomeration()
                • calc_2d_breakage()
              • optframework.utils.func.jit_extruder_rhs module
                • get_dNdt_1d_geo_extruder()
                • get_dNdt_2d_geo_extruder()
              • optframework.utils.func.jit_kernel_agg module
                • calc_F_M_1D()
                • calc_F_M_1D_jit()
                • calc_F_M_2D()
                • calc_F_M_2D_jit()
                • calc_F_M_3D()
                • calc_beta()
              • optframework.utils.func.jit_kernel_break module
                • beta_func()
                • breakage_func_1d()
                • breakage_func_1d_xk()
                • breakage_func_2d()
                • breakage_func_2d_x1k()
                • breakage_func_2d_x3k()
                • breakage_func_2d_x1kx3l()
                • breakage_func_2d_trunc()
                • breakage_func_2d_x1k_trunc()
                • breakage_func_2d_x3k_trunc()
                • gauss_legendre()
                • dblgauss_legendre()
                • calc_init_B_F_1D_quad()
                • calc_int_B_F_2D_GL()
                • calc_int_B_F_2D_GL_jit()
                • calc_int_B_F_2D_quad()
                • calc_B_R_1d()
                • calc_B_R_1d_jit()
                • calc_break_rate_1d()
                • calc_B_R_2d()
                • calc_B_R_2d_jit()
                • calc_B_R_2d_flat()
                • calc_B_R_2d_flat_jit()
                • calc_break_rate_2d()
                • calc_break_rate_2d_flat()
              • optframework.utils.func.jit_pbm_chyqmom module
                • sign()
                • hyqmom2()
                • hyqmom3()
                • chyqmom4()
                • chyqmom9()
                • chyqmom27()
                • quadrature_1d()
                • quadrature_2d()
                • quadrature_3d()
                • compute_central_moments_2d()
                • compute_central_moments_1d()
                • comb()
                • factorial()
                • get_moment()
                • generalized_hyqmom()
              • optframework.utils.func.jit_pbm_qmom module
                • calc_qmom_nodes_weights()
                • calc_qmom_recurrence()
                • recurrence_jacobi_nodes_weights()
                • calc_gqmom_nodes_weights()
                • calc_gqmom_recurrence_real()
                • calc_gqmom_recurrence_beta()
                • calc_gqmom_recurrence_realplus()
                • calc_zetas()
                • vander_rybicki()
                • conditional_mom_sys_solve()
                • calc_cqmom_2d()
                • quadrature_2d()
              • optframework.utils.func.jit_pbm_rhs module
                • filter_negative_nodes()
                • hyqmom_newton_correction()
                • get_dMdt_1d()
                • get_dMdt_2d()
              • optframework.utils.func.print module
                • print_highlighted()
              • optframework.utils.func.static_method module
                • interpolate_psd()
                • wrap_with_linear_extrapolation()
                • plot_N2D()
                • KDE_fit()
                • KDE_score()
          • optframework.utils.general_scripts package
            • Submodules
              • optframework.utils.general_scripts.Batch_opt_post module
                • load_cross_validation_results()
                • load_all_cv_results()
                • add_opt_params_mean()
                • plot_summary_two_charts()
                • plot_x_mean()
                • calc_delta_test()
                • plot_x_50()
                • calc_x50()
                • re_calc_lognormal_results()
                • visualize_opt_distribution()
                • main()
              • optframework.utils.general_scripts.Batch_opt_post_back_up module
                • load_cross_validation_results()
                • load_all_cv_results()
                • add_opt_params_mean()
                • plot_summary_two_charts()
                • plot_x_mean()
                • calc_delta_test()
                • plot_x_50()
                • calc_x50()
                • re_calc_lognormal_results()
                • visualize_opt_distribution()
                • main()
              • optframework.utils.general_scripts.convert_exp_data_Batch module
                • load_excel_data()
                • extract_minutes()
                • interpolate_data()
                • generate_nonuniform_coords()
                • process_data_xQ()
                • save_average_xQ_data()
                • generate_nonuniform_grid()
                • interpolate_Qx()
                • fit_lognormal_cdf()
                • wrap_with_linear_extrapolation()
                • plot_xQ_profiles()
                • plot_Qx_time_G_profiles()
                • calc_n_for_G()
                • calc_n_for_G_new()
                • Q0_to_Q3()
              • optframework.utils.general_scripts.convert_exp_data_CB_Origin module
                • process_origin_sheets_and_save()
                • save_to_excel()
                • recalc_qx_and_Qx()
                • plot_Q_comparison()
                • calc_n_for_E()
              • optframework.utils.general_scripts.generate_psd module
                • generate_psd_normal()
                • generate_psd_lognormal()
                • find_x_f()
                • full_psd()
              • optframework.utils.general_scripts.generate_synth_data module
                • calc_function()
              • optframework.utils.general_scripts.global_sensitivity_analysis module
                • transform_parameters()
                • transform_parameters_to_dict()
                • evaluate_model()
                • save_to_csv()
              • optframework.utils.general_scripts.global_sensitivity_analysis_Batch module
                • transform_parameters()
                • transform_parameters_to_dict()
                • evaluate_model()
                • save_to_csv()
              • optframework.utils.general_scripts.opt_config module
              • optframework.utils.general_scripts.psd_opt_post module
                • calc_diff()
                • visualize_sampler_iter()
                • visualize_diff_mean()
                • visualize_diff_kernel_mse()
                • visualize_correlation()
                • correlation_analysis()
                • calc_save_PSD_delta()
                • calc_ori_mse()
                • do_remove_small_results()
                • write_origin_data()
                • which_group()
                • read_results()
                • get_kernels_form_data_name()
                • calc_rel_mse()
                • compare_dicts()
                • get_search_range()
                • visualize_diff_mean_radar()
                • radar_chart()
                • visualize_diff_kernel_value_old()
                • visualize_diff_kernel_value()
                • visualize_PSD()
                • return_animation()
                • return_one_frame()
          • optframework.utils.plotter package
            • Submodules
              • optframework.utils.plotter.KIT_cmap module
              • optframework.utils.plotter.plotter module
                • plot_init()
                • plot_data()
                • plot_1d_hist()
                • plot_2d_hist()
                • plot_export()
                • close()
      • optframework.validation package
        • Submodules
          • optframework.validation.validation module
            • PBEValidation
              • PBEValidation.init_all()
              • PBEValidation.init_pbe()
              • PBEValidation.init_mcpbe()
              • PBEValidation.init_pbm()
              • PBEValidation.init_mu()
              • PBEValidation.set_kernel_params()
              • PBEValidation.calculate_pbe()
              • PBEValidation.calculate_mc_pbe()
              • PBEValidation.calculate_pbm()
              • PBEValidation.calculate_as_pbe()
              • PBEValidation.calculate_case()
              • PBEValidation.init_plot()
              • PBEValidation.plot_all_moments()
              • PBEValidation.add_new_moments()
              • PBEValidation.plot_moment_t()
              • PBEValidation.add_moment_t()
              • PBEValidation.show_plot()
dPBE: Discrete Population Balance Equations
  • optframework package
  • optframework.pbm package
  • View page source

optframework.pbm package

Created on Thu Jul 18 09:42:58 2024

@author: Administrator

Submodules

  • optframework.pbm.pbm_base module
    • PBMSolver
      • PBMSolver.trapz_2d()
      • PBMSolver.normalize_mom()
      • PBMSolver.set_tol()
      • PBMSolver.create_ndf()
      • PBMSolver.NDF_approx()
      • PBMSolver.moment_2d_indices_chy()
      • PBMSolver.moment_2d_indices_c()
  • optframework.pbm.pbm_core module
    • PBMCore
      • PBMCore.init_moments()
      • PBMCore.init_moments_2d()
      • PBMCore.solve_PBM()
  • optframework.pbm.pbm_post module
    • PBMPost
      • PBMPost.plot_moments_comparison()
      • PBMPost.plot_NDF_comparison()
      • PBMPost.plot_nodes_weights_comparision()
  • optframework.pbm.pbm_quick_test module
    • PBMQuickTest
      • PBMQuickTest.QMOM()
      • PBMQuickTest.QMOM_normal()
      • PBMQuickTest.CHyQMOM_2d()
      • PBMQuickTest.CQMOM_2d()
Previous Next

© Copyright 2024, Frank Rhein, Haoran Ji.

Built with Sphinx using a theme provided by Read the Docs.