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 Extractmethod so scatterer objects can be directly manipulated within looped iterations without breaking object formatting
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 oftarget_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 forESS
objects via #30). In lieu of caching the results and potentially creating more overhead than necessary, themodel
slot can be amended to either permanently or temporarily store shared intermediate calculations (similar to the current implementation of SDWBA with reforgedFLS
objects held for different frequency bandwidths based on the number of position matrix segments).model
slot infrastructure such that "universal" variables shared across different models are calculated upon either object generation or first-time object initializationmodel
slot infrastructure so it stores pre-calculated variables required for input TS modelsExtract
method
soscatterer
objects can be directly manipulated within looped iterations without breaking object formatting