I am performing some frequency analyses and saving the frequency vs. displacement plots as .csv files. I'm saving the frequency response data for some later post processing in Excel.

Is it possible to increase the number of decimal places that are saved in the frequency data? I cannot find a way to increase the number of DP in the saved .csv output file, I can only change the DP that are shown on the small SolidWorks response graph.

I can see five digits, the number of decimal places depends on how large the value is, it displays 35.568 or 746.77 or 1001.5 for example.

To save the data I am probing the results plot at the relevant point and then clicking the graph-clock icon to get the frequency response plot. I then do 'save-as' on the response graph and saving as a .csv. When I view it in Excel I simply open the .csv file and values are already in columns, that in itself is slightly odd because I expected a .csv file to just have the values with commas - as the name suggests!

Just for clarity I need the extra DP on the frequency values, i.e. the X-axis numbers in the frequency response plot.

Opening it in notepad gives me the same result - I get 5 digits. Unfortunately the data and model are commercially sensitive.

I've managed to find a workaround of sorts. The SW help file tells you how it calculates the spread of points between the natural frequencies at which it analyses, therefore I can put the same calculation into Excel and 'fill in the blanks' so to speak. Fortunately SW tells you the natural frequencies (via results->list resonant frequencies) to a large number of DP, so you can use those as a starting point. However this is obviously somewhat more laborious than just getting more DP from SolidWorks!

These modal calculations are just not that accurate. SolidWorks is giving you 1/10000 (5 significant figures), which is probably 1000 times more accurate than the actual result. If your conclusions are sensitive to the fifth decimal place of this input, you should not trust them.

Mike, perhaps if I explain what I'm trying to do it'll make more sense...perhaps there's even a way to achieve my desired end result without this DP issue cropping up.

I'm performing random vibration analyses of components. The input is specified as a PSD, as are the outputs. We're interested in estimating the worst case displacement response vs. frequency. This is not something you can read directly from the PSD output by SolidWorks, it's a random output after all.

In order to arrive at a worst case displacement we take the PSD data and use them to calculate RMS displacement, then multiply the RMS by a factor (normally 3) to work out the biggest absolute displacement you're likely to see within the random response. PSD is related to RMS via bandwidth, so I need to know bandwidth. To work out bandwidth I'm looking at the interval between each frequency analysed by SW. Say for example it performs one analysis at 10Hz, one at 15Hz and one at 20 Hz, I assume SW used a bandwidth of 5Hz around the 15Hz result, i,e, 12.5Hz to 17.5Hz, when calculating the PSD value, thus I can work backwards from the output PSD value to get the associated RMS value.

The trouble I have is that SW groups the analysis frequencies more tightly around the resonances. That means when I'm trying to work out bandwidth I'm often getting a width of zero or otherwise losing way too much accuracy because of the loss of DPs. I know SW is capable of using more DP because it must be using higher DPs in its own calculations in order to get the nice smooth frequency vs. response plots it generates....and I'm simply trying to 'reverse' that calculation.

I've tried messing with the number of analysis frequencies and the biasing parameters to change the number of analysis points and/or their spcings, but this results in either prohibitively long solve times (due to the vast number of points) or 'missing' the peaks in the response because the points are too spread out.

If there is a way to output RMS displacement vs. Frequency directly then I can skip this whole process!

I've used exactly the technique I think you are using. I'm not exactly sure about the bandwidth you are looking for, so let me outline what I did to see where we are different. I don't have this version of simulation at my new job, so I'm going from memory/google search on result options. SW shouldplot PSD stress, but it doesn't. (yes it does)

SO,

If you plot the displacement PSD at the point of interest, then integrate over the entire frequency domain, you'll get RMS displacement. Multiply that by 3 and you'll get 3 sigma displacement, which is typically where it's chopped. Pedants like to point out that in "reality" this should technically go to infinity, but that is utter nonsense. Its the statistical model that goes to infinity, nothing in physics ever does. From the 3 sigma displacement, you have to move to hand-calcs to convert it to stress, because, as I mentioned, I don't think SW is going to do that conversion for you. This requires engineering judgment to pick the points to plot, and to convert displacement samples to stress.

I think this is exactly what you are looking to do. I think the problem is the output options you've chosen, unless I'm misunderstanding. You should get the PSD displacement, not the displacement at some frequency, which you've pointed out is not meaningful. I think you need to get the whole PSD and integrate over the whole domain. Sorry if I'm adding confusion.

That will save some time-consuming post-processing. On the other hand, if you do a study with broadband white noise and output the displacement PSD, you can apply multiple input PSDs to one solution. You couldn't do that with RMS outputs. That would save some time-consuming calculations.

It would still be better if Simulation calculated RMS stress or PSD stress (unnamed other packages do). Once Simulation has the displacement, it should be straight forward to back out stress. It's a pain to do it by hand, and the results are cheezy. I'm kind of keeping this thread alive in the hope that somebody has a better way than I've suggested.

After running the study, you can plot root-mean-square (RMS) values, or psd results of stresses, displacements, velocities, etc. at a specific frequency or graph results at specific locations versus frequency values.

Modal, Rayleigh, and Composite modal damping options are available for this type of analysis. See Damping Effects.

Table 2 essentially summaries the process I'm adopting. SW analyses response around discrete frequency points, these points are the "band center frequencies" in Table 2. The Bandwidths I'm referring to above relate to the info in the first and fifth columns of Table 2. I know the PSD values (from SW) and a know the band centre frequencies (also from SW) thus I should be able to work out RMS in any given band.

SW outputs a CSV file which lists discrete frequencies and a PSD at each. You can't produce a PSD at a single frequency, is doesn't make any mathematical sense!, so I have to assume SW is actually telling my PSD in a group of bands, and that those bands are centred around the discrete frequencies listed by SW. Where I ultimately end up is with a bar chart which says betweem 10-20Hz RMS is XXX, between 20-30Hz RMS is YYY etc. Thus I effectively have a frequency vs. RMS response plot, albeit one wich is broken down into finite bands rather than a continuous line. That bit I'm OK with, this is FEA after all.

Where I'm tripping up, as per my previous posts, is working out the bandwidths. In some cases SW analyses between say 1034.4778Hz and 1034.5403Hz, thus with the rounding error I get an PSD and RMS value between 1034.5Hz and 1034.5Hz...i.e. a bandwidth of "zero" due to the rounding error. I can force SW to use more widely spaced frequencies, however because I'm dealing with a lightly damped and quite springy (it's a long thin piece of carbon fibre) structure it has quite 'tight' natural frequencies, thus if I spread the analysis points out I miss the response peaks.

I'm doing this all in terms of acceleration input and displacement output by the way. I can't talk in terms of stress output because I'm dealing with an anisotropic composite part, which is another layer of complexity!