Skip to content

Conversation

hpohekar
Copy link
Collaborator

@hpohekar hpohekar commented Jun 4, 2024

closes #2884, #2889

Use _search function to generate API objects names only. Do not print API objects names.

>>> solver.settings.solution.run
pyfluent.settings_api WARNING: Mismatch between generated file and server object info. Dynamically created settings classes will be used.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\Repos\pyfluent\src\ansys\fluent\core\solver\flobject.py", line 1045, in __getattribute__
    attr = super().__getattribute__(name)
AttributeError: 'solution' object has no attribute 'run'.

The most similar API names are:
solution.monitor.report_files["<name>"].run_index (Parameter)
solution.controls.advanced.fast_transient_settings.runge_kutta (Object)
solution.run_calculation (Object)

>>>               

@hpohekar
Copy link
Collaborator Author

hpohekar commented Jun 4, 2024

@seanpearsonuk

We have used search_root capability to get closest results because semantic search gives results from all API objects names as follows.

Sematic search results``` >>> solver.solution.run 'solution' is deprecated. Use 'settings.solution' instead. D:\Repos\pyfluent\src\ansys\fluent\core\utils\search.py:632: UserWarning: ``match_whole_word=True`` matches the given word, and it's capitalize case. warnings.warn( .setup.models.battery.tool_kits.standalone_echem_model.total_run_time (Parameter) .setup.models.battery.tool_kits.rom_tool_kit.rom_data_creator_tool.file_saving_frequency.face_heat_run (Parameter) .solution.controls.advanced.fast_transient_settings.runge_kutta (Object) .solution.controls.advanced.fast_transient_settings.runge_kutta.default_multi_stage (Parameter) .solution.controls.advanced.fast_transient_settings.runge_kutta.ten_stage (Parameter) .solution.controls.advanced.fast_transient_settings.runge_kutta.two_stage (Parameter) .solution.monitor.report_files[""].run_index (Parameter) .solution.run_calculation (Object) .solution.run_calculation.adaptive_time_stepping (Object) .solution.run_calculation.adaptive_time_stepping.enabled (Parameter) .solution.run_calculation.adaptive_time_stepping.error_tolerance (Parameter) .solution.run_calculation.adaptive_time_stepping.fixed_time_step_count (Parameter) .solution.run_calculation.adaptive_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.adaptive_time_stepping.max_time_step (Parameter) .solution.run_calculation.adaptive_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.adaptive_time_stepping.min_time_step (Parameter) .solution.run_calculation.adaptive_time_stepping.time_end (Parameter) .solution.run_calculation.adaptive_time_stepping.user_defined_timestep (Parameter) .solution.run_calculation.calculate (Command) .solution.run_calculation.cfl_based_adaptive_time_stepping (Object) .solution.run_calculation.cfl_based_adaptive_time_stepping.desired_cfl (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.enabled (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.initial_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.max_fixed_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.max_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.min_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.time_end (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.update_interval_time_step_size (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.user_defined_timestep (Parameter) .solution.run_calculation.data_sampling (Object) .solution.run_calculation.data_sampling.custom_field_functions (Parameter) .solution.run_calculation.data_sampling.dpm_variables (Parameter) .solution.run_calculation.data_sampling.enable_custom_field_functions (Parameter) .solution.run_calculation.data_sampling.enabled (Parameter) .solution.run_calculation.data_sampling.flow_heat_fluxes (Parameter) .solution.run_calculation.data_sampling.flow_shear_stresses (Parameter) .solution.run_calculation.data_sampling.force_statistics (Parameter) .solution.run_calculation.data_sampling.sampling_interval (Parameter) .solution.run_calculation.data_sampling.species_list (Parameter) .solution.run_calculation.data_sampling.statistics_mixture_fraction (Parameter) .solution.run_calculation.data_sampling.statistics_reaction_progress (Parameter) .solution.run_calculation.data_sampling.wall_statistics (Parameter) .solution.run_calculation.data_sampling_options (Object) .solution.run_calculation.data_sampling_options.add_datasets (Command) .solution.run_calculation.data_sampling_options.data_sets[""] (Object) .solution.run_calculation.data_sampling_options.data_sets[""].average_over (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].delete (Command) .solution.run_calculation.data_sampling_options.data_sets[""].list (Command) .solution.run_calculation.data_sampling_options.data_sets[""].list_properties (Command) .solution.run_calculation.data_sampling_options.data_sets[""].make_a_copy (Command) .solution.run_calculation.data_sampling_options.data_sets[""].max (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].mean (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].min (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].moving_average (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].rename (Command) .solution.run_calculation.data_sampling_options.data_sets[""].rmse (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].zones (Parameter) .solution.run_calculation.data_sampling_options.list_datasets (Command) .solution.run_calculation.dual_time_iterate (Command) .solution.run_calculation.interrupt (Command) .solution.run_calculation.iter_count (Parameter) .solution.run_calculation.iterate (Command) .solution.run_calculation.iterating (Query) .solution.run_calculation.profile_update_interval (Parameter) .solution.run_calculation.pseudo_time_settings (Object) .solution.run_calculation.pseudo_time_settings.time_step_method (Object) .solution.run_calculation.pseudo_time_settings.time_step_method.auto_time_size_calc_solid_zone (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.length_scale (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.length_scale_methods (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.pseudo_time_step_size (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.time_solid_scale_factor (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.time_step_method (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.time_step_size_for_solid_zone (Parameter) .solution.run_calculation.pseudo_time_settings.time_step_method.time_step_size_scale_factor (Parameter) .solution.run_calculation.pseudo_time_settings.verbosity (Parameter) .solution.run_calculation.reporting_interval (Parameter) .solution.run_calculation.residual_verbosity (Parameter) .solution.run_calculation.time_step_count (Parameter) .solution.run_calculation.transient_controls (Object) .solution.run_calculation.transient_controls.cfl_based_time_stepping (Object) .solution.run_calculation.transient_controls.cfl_based_time_stepping.courant_number (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.fixed_time_step_size (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.initial_time_step_size (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.max_time_step_size (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.min_time_step_size (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping.update_interval (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping_advanced_options (Object) .solution.run_calculation.transient_controls.cfl_based_time_stepping_advanced_options.cfl_type (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping_advanced_options.control_time_step_size_variation (Parameter) .solution.run_calculation.transient_controls.cfl_based_time_stepping_advanced_options.use_average_cfl (Parameter) .solution.run_calculation.transient_controls.duration_specification_method (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping (Object) .solution.run_calculation.transient_controls.error_based_time_stepping.error_tolerance (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.fixed_time_step_size (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.initial_time_step_size (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.max_time_step_size (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.min_time_step_size (Parameter) .solution.run_calculation.transient_controls.error_based_time_stepping.update_interval (Parameter) .solution.run_calculation.transient_controls.extrapolate_eqn_vars[""] (Object) .solution.run_calculation.transient_controls.extrapolate_eqn_vars[""].delete (Command) .solution.run_calculation.transient_controls.extrapolate_eqn_vars[""].list (Command) .solution.run_calculation.transient_controls.extrapolate_eqn_vars[""].list_properties (Command) .solution.run_calculation.transient_controls.extrapolate_eqn_vars[""].make_a_copy (Command) .solution.run_calculation.transient_controls.extrapolate_eqn_vars[""].rename (Command) .solution.run_calculation.transient_controls.extrapolate_variables (Parameter) .solution.run_calculation.transient_controls.fixed_periodic (Object) .solution.run_calculation.transient_controls.fixed_periodic.enabled (Parameter) .solution.run_calculation.transient_controls.fixed_periodic.fixed_periodic_type (Parameter) .solution.run_calculation.transient_controls.fixed_periodic.period (Parameter) .solution.run_calculation.transient_controls.fixed_periodic.times_steps_per_period (Parameter) .solution.run_calculation.transient_controls.fixed_periodic.total_periods (Parameter) .solution.run_calculation.transient_controls.incremental_time (Parameter) .solution.run_calculation.transient_controls.max_flow_time (Parameter) .solution.run_calculation.transient_controls.max_iter_per_time_step (Parameter) .solution.run_calculation.transient_controls.method (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping (Object) .solution.run_calculation.transient_controls.mp_specific_time_stepping.enabled (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.fixed_time_step_size (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.global_courant_number (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.initial_time_step_size (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.max_time_step_size (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.min_time_step_size (Parameter) .solution.run_calculation.transient_controls.mp_specific_time_stepping.update_interval (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints (Object) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.moving_mesh_cfl_constraint (Object) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.moving_mesh_cfl_constraint.mesh_courant_number (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.moving_mesh_cfl_constraint.moving_mesh_constraint (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.physics_based_constraint (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.time_scale_options (Object) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.time_scale_options.acoustic_scale (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.time_scale_options.gravity_scale (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.time_scale_options.surface_tension_scale (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.time_scale_options.viscous_scale (Parameter) .solution.run_calculation.transient_controls.multiphase_specific_time_constraints.verbosity (Parameter) .solution.run_calculation.transient_controls.predict_next (Parameter) .solution.run_calculation.transient_controls.rotating_mesh_flow_predictor (Parameter) .solution.run_calculation.transient_controls.solid_time_step_size (Object) .solution.run_calculation.transient_controls.solid_time_step_size.choose_auto_time_stepping (Parameter) .solution.run_calculation.transient_controls.solid_time_step_size.enable_solid_time_step (Parameter) .solution.run_calculation.transient_controls.solid_time_step_size.time_step_size (Parameter) .solution.run_calculation.transient_controls.solution_status (Parameter) .solution.run_calculation.transient_controls.specified_time_step (Parameter) .solution.run_calculation.transient_controls.time_step_count (Parameter) .solution.run_calculation.transient_controls.time_step_size (Parameter) .solution.run_calculation.transient_controls.time_step_size_for_acoustic_export (Parameter) .solution.run_calculation.transient_controls.total_time (Parameter) .solution.run_calculation.transient_controls.total_time_step_count (Parameter) .solution.run_calculation.transient_controls.type (Parameter) .solution.run_calculation.transient_controls.udf_hook (Parameter) .solution.run_calculation.transient_controls.undo_timestep (Parameter) .setup.models.battery.tool_kits.rom_tool_kit.lti_rom_generation.run_rom_generation (Command) .preferences.Graphics.ColormapSettings.TextTruncationLimitForHorizontalColormaps (Parameter) .preferences.Graphics.ColormapSettings.TextTruncationLimitForVerticalColormaps (Parameter) .preferences.Graphics.ColormapSettings.TextTruncationLimitForHorizontalColormaps (Parameter) .preferences.Graphics.ColormapSettings.TextTruncationLimitForVerticalColormaps (Parameter) .setup.models.battery.tool_kits.rom_tool_kit.lti_rom_generation.run_rom_generation (Command) .setup.models.battery.tool_kits.rom_tool_kit.rom_data_creator_tool.file_saving_frequency.face_heat_run (Parameter) .setup.models.battery.tool_kits.rom_tool_kit.rom_data_creator_tool.file_saving_frequency.face_temperature_run (Parameter) .setup.models.battery.tool_kits.rom_tool_kit.rom_data_creator_tool.file_saving_frequency.joule_heat_run (Parameter) .setup.models.battery.tool_kits.rom_tool_kit.rom_data_creator_tool.file_saving_frequency.volume_heat_run (Parameter) .setup.models.battery.tool_kits.standalone_echem_model.run_echem_standalone (Command) .setup.models.battery.tool_kits.standalone_echem_model.total_run_num_cycles (Parameter) .setup.models.battery.tool_kits.standalone_echem_model.total_run_time (Parameter) .solution.controls.advanced.fast_transient_settings.runge_kutta (Object) .solution.controls.advanced.fast_transient_settings.runge_kutta.default_multi_stage (Parameter) .solution.controls.advanced.fast_transient_settings.runge_kutta.ten_stage (Parameter) .solution.controls.advanced.fast_transient_settings.runge_kutta.two_stage (Parameter) .solution.monitor.report_files[""].run_index (Parameter) .solution.run_calculation (Object) .solution.run_calculation.adaptive_time_stepping (Object) .solution.run_calculation.adaptive_time_stepping.enabled (Parameter) .solution.run_calculation.adaptive_time_stepping.error_tolerance (Parameter) .solution.run_calculation.adaptive_time_stepping.fixed_time_step_count (Parameter) .solution.run_calculation.adaptive_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.adaptive_time_stepping.max_time_step (Parameter) .solution.run_calculation.adaptive_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.adaptive_time_stepping.min_time_step (Parameter) .solution.run_calculation.adaptive_time_stepping.time_end (Parameter) .solution.run_calculation.adaptive_time_stepping.user_defined_timestep (Parameter) .solution.run_calculation.calculate (Command) .solution.run_calculation.cfl_based_adaptive_time_stepping (Object) .solution.run_calculation.cfl_based_adaptive_time_stepping.desired_cfl (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.enabled (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.initial_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.max_fixed_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.max_step_change_factor (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.max_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.min_step_change_factor (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.min_time_step (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.time_end (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.update_interval_time_step_size (Parameter) .solution.run_calculation.cfl_based_adaptive_time_stepping.user_defined_timestep (Parameter) .solution.run_calculation.data_sampling (Object) .solution.run_calculation.data_sampling.custom_field_functions (Parameter) .solution.run_calculation.data_sampling.dpm_variables (Parameter) .solution.run_calculation.data_sampling.enable_custom_field_functions (Parameter) .solution.run_calculation.data_sampling.enabled (Parameter) .solution.run_calculation.data_sampling.flow_heat_fluxes (Parameter) .solution.run_calculation.data_sampling.flow_shear_stresses (Parameter) .solution.run_calculation.data_sampling.force_statistics (Parameter) .solution.run_calculation.data_sampling.sampling_interval (Parameter) .solution.run_calculation.data_sampling.species_list (Parameter) .solution.run_calculation.data_sampling.statistics_mixture_fraction (Parameter) .solution.run_calculation.data_sampling.statistics_reaction_progress (Parameter) .solution.run_calculation.data_sampling.wall_statistics (Parameter) .solution.run_calculation.data_sampling_options (Object) .solution.run_calculation.data_sampling_options.add_datasets (Command) .solution.run_calculation.data_sampling_options.data_sets[""] (Object) .solution.run_calculation.data_sampling_options.data_sets[""].average_over (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].delete (Command) .solution.run_calculation.data_sampling_options.data_sets[""].list (Command) .solution.run_calculation.data_sampling_options.data_sets[""].list_properties (Command) .solution.run_calculation.data_sampling_options.data_sets[""].make_a_copy (Command) .solution.run_calculation.data_sampling_options.data_sets[""].max (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].mean (Parameter) .solution.run_calculation.data_sampling_options.data_sets[""].min (Parameter)

@seanpearsonuk
Copy link
Collaborator

Hi @hpohekar. Many thanks for this. Shall we demonstrate it in the meeting later?

@hpohekar
Copy link
Collaborator Author

hpohekar commented Jun 4, 2024

Hi @hpohekar. Many thanks for this. Shall we demonstrate it in the meeting later?

Yes, we can.

@seanpearsonuk
Copy link
Collaborator

@seanpearsonuk

We have used search_root capability to get closest results because semantic search gives results from all API objects names as follows.

Sematic search results

I'm having difficulty parsing this part. Could you please rephrase it, perhaps with help from @prmukherj?

UserWarning: ``match_whole_word=True`` matches the given word, **and it's capitalize case**.

@hpohekar
Copy link
Collaborator Author

hpohekar commented Jun 4, 2024

@seanpearsonuk
We have used search_root capability to get closest results because semantic search gives results from all API objects names as follows.
Sematic search results

I'm having difficulty parsing this part. Could you please rephrase it, perhaps with help from @prmukherj?

UserWarning: ``match_whole_word=True`` matches the given word, **and it's capitalize case**.

Yes, sure.

@prmukherj
Copy link
Collaborator

@seanpearsonuk
We have used search_root capability to get closest results because semantic search gives results from all API objects names as follows.
Sematic search results

I'm having difficulty parsing this part. Could you please rephrase it, perhaps with help from @prmukherj?

UserWarning: ``match_whole_word=True`` matches the given word, **and it's capitalize case**.

Yes, sure.

@seanpearsonuk, Done something, should be clearer. Please let us know.
Thank you.

@hpohekar
Copy link
Collaborator Author

hpohekar commented Jun 6, 2024

@seanpearsonuk This PR is ready.

@mkundu1
Copy link
Contributor

mkundu1 commented Jun 6, 2024

I think the exception should be shown first, then the possible fix. Something like below:

>>> solver.settings.solution.run 
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\Repos\pyfluent\src\ansys\fluent\core\solver\flobject.py", line 1066, in __getattribute__
    attr = super().__getattribute__(name)
AttributeError: 'solution' object has no attribute 'run'

The most similar API names are:
settings.controls.advanced.fast_transient_settings.runge_kutta (Object)
settings.monitor.report_files["<name>"].run_index (Parameter)
settings.run_calculation (Object)

<serach_root> etc. are not very relevant here, it is better if we can transform the output to something like above.

@hpohekar hpohekar linked an issue Jun 10, 2024 that may be closed by this pull request
This reverts commit a3d9546.
@hpohekar hpohekar changed the title fix: Use _search() for failed calls fix: Use _search() for failed calls and disable printing of API objects during codegen Jun 10, 2024
@hpohekar hpohekar enabled auto-merge (squash) June 12, 2024 15:29
@hpohekar hpohekar merged commit 2316f7a into main Jun 12, 2024
@hpohekar hpohekar deleted the fix/use_semantic_search_for_failed_calls branch June 12, 2024 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

24.2 codegen prints lots of message semantic matching for failed calls
4 participants