Automatically find point ID with maximum value and plot over time/frequency without typing in Point ID value

Hey there,

I’ve run a harmonic simulation in SimScale and I would like to carry out some postprocessing in Paraview. Specifically, I would like to plot the acceleration for the particular point ID, that exhibits the maximum acceleration over all frequencies. In this particular case, the Point ID is 131711. This point has an acceleration of 43000 at 137 Hz.

I want to create a pipeline where I can load any simulation result without having to type in a point ID by hand. The pipeline should find the point ID with maximum acceleration and plot the acceleration for all frequencies at that point.

Thanks Team!

Hi @Aly_Taleb

You may be interested by this blog then: https://www.kitware.com/explore-large-acoustic-data-with-the-digital-signal-processing-plugin-in-paraview/

Best,

Thanks @mwestphal,

I tried several filters from this plugin (temporalMutliplexing, multiDimensionBrowser and mergeReduceTables) but I still had to type in the point ID I’m interested in. Unfortunately, that’s what I want to get automatically.

HI @Aly_Taleb

Could you share your data ?

Best,

Hi @mwestphal, you can download the results data from the link below. It’s about 500 MB

https://www.simscale.com/api/v2/load/projects/3493652054388653007/results/c7a5dbe5-3343-410e-9699-3e658c62c002/solutions?token=de2481f9c0cb5992f3cf6a9ec5037b46dbe87133676fc331f26e9efbe9f51e5020240205T123000.000Z&uid=100079182&filename=EV_Battery_Shaker_Table_Testing___UN_38_3_T3-Shaker_Table_Test__UN_38_3_T3__RA_Housing_-Run_1

1 Like

Have you looked at using Find Data to figure out the point id for max value?

Yeah I’ve done that. I can easily get the point ID by getting the maximum through temporal statistics and find data. The problem here is then I have to go to back to the original data in find data, type in the Point ID and plot that over time. Since I have to manually type in the point ID number, I can’t use this pipeline with a different geometry without manually finding the new Point ID. I want to load any geometry and have the right point be found and the plot created automatically.

It would be great if under Find Data I could write something conditional like SELECT ID WHERE acc=MAX(acc) FROM all_timesteps instead of typing in a number for the point ID

I confirm that there is no easy way to automatically extract the ID of a point corresponding to the max of an array over time and then use it to extract the point, using either the DSP plugin of classic selection tools in ParaView.

PlotDataOverTime (all points) could work but it absolutely cannot scale with the number of points you have in your geometry.

That being said, it would be trivial to implement such an extractor using the DSP approach.

Thanks for your help @mwestphal. It would be great if this gets implemented someday. In the meantime, I’ll look into a way to create this plot automatically using Python.

Best,
Aly

@mwestphal or @Aly_Taleb Could you please write this up as a feature request, and post the link here please? I will fund getting it done. These are the type of data analysis features ParaView needs. Note, that doesn’t mean its at the top of Kitware’s priority list…