Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pre-allocate model inputs within scatterer objects #32

Open
4 tasks
brandynlucca opened this issue May 2, 2023 · 0 comments
Open
4 tasks

Pre-allocate model inputs within scatterer objects #32

brandynlucca opened this issue May 2, 2023 · 0 comments
Assignees
Labels
performance Performance updates scatterer Scatterer data object format issues, changes, and updates TS model Acoustic TS model issues, changes, and updates
Milestone

Comments

@brandynlucca
Copy link
Owner

Currently, some model parameters (e.g. frequency) are calculated when a scatterer object is initialized for a specific TS model. Generally, most model inputs are re-calculated with each call of target_strength(...). Once QOL changes listed in #28 are implemented, this would result in identical results being re-calculated over and over again which will significantly increase computation times for otherwise shared variables (such as for ESS objects via #30). In lieu of caching the results and potentially creating more overhead than necessary, the model slot can be amended to either permanently or temporarily store shared intermediate calculations (similar to the current implementation of SDWBA with reforged FLS objects held for different frequency bandwidths based on the number of position matrix segments).

  • Identify and flag potentially redundant model parameters that are calculated within respective TS model functions
  • Rebuild model slot infrastructure such that "universal" variables shared across different models are calculated upon either object generation or first-time object initialization
  • Rebuild model slot infrastructure so it stores pre-calculated variables required for input TS models
  • Define a new Extract method so scatterer objects can be directly manipulated within looped iterations without breaking object formatting
@brandynlucca brandynlucca added TS model Acoustic TS model issues, changes, and updates scatterer Scatterer data object format issues, changes, and updates performance Performance updates labels May 2, 2023
@brandynlucca brandynlucca added this to the v.1.0.1 milestone May 2, 2023
@brandynlucca brandynlucca self-assigned this May 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance Performance updates scatterer Scatterer data object format issues, changes, and updates TS model Acoustic TS model issues, changes, and updates
Projects
None yet
Development

No branches or pull requests

1 participant