I'm running a random-vibration analysis of a power supply with the following:

Nodes = 37 K, Elements = 17 K, and DOF = 158 K.

The model meshes correctly, but it takes days to solve. I'm running on a Quad Core with 3 MB of RAM. Any ideas on how to reduce the solution time? I've been told that I can't use contact sets when running random vibration. Could anyone confirm this, and if so, are there work arounds. The model is a mixture of solids and sheet metal parts. I've completely simplied the model so there are no small features.

When trying to simplify your model, did you consider symmetry? Even using 1/2 symmetry could cut your solution time in 1/4.

Also, if you have a lot of sheet metal, and it's all joined together, you can approximate several parts by one conglomerate part. Sometimes this will reduce the number of DOF required because you can create simplified continuous geometry rather than have disjointed parts with small edges, faces, etc.

Sometimes you can justify creating a shell-type model where a solid model was used before, e.g. if you're not terribly concerned with the stresses in that part, but you want to capture the flavor of its interaction with the other parts, you can turn a lump-shaped part into a flat piece of thick sheet metal. If it's sheet metal, SW treats it automatically as shell elements (as long as it is wider than it is thick, but you can force that if you have to) and that saves you a good amount of solution time.

Perhaps you could exclude many parts from the analysis completely. Sometimes we think things really matter, when in the end, they just add complexity to the solver's calculations.

Thanks David. I didn't think that my model was that large with 158 K DOF, but maybe it is. Also, I can use symmetry because the inside of the power supply doesn't have any. I've run static models that have no problem that are larger than this and they solve quite quickly. I think the problem of the long solution time has something to do with the random vibration, so I'm looking for resources on running complex models with random vibration.

I run a good many random vibration problems here at work -- what all are you interested in? For example, I may run a study with about 150k DOF, but I'm only interested in the stresses produced. I can cut the solution time down from about 40 minutes to less than 5 if I make sure that only PSD stresses are selected under result options. Also, even though I run studies from 5-500 Hz with 50 frequency points, I always modify the result options to only save data for Solution Steps - Set1: Start: 1, End: 1000, and Increment: 1000. Even though my study may have 200 frequency steps for integration, I'm only recording the data required for the stress plot.

This helps alot - thanks! At this point, I'm only interested in PSD stresses so I took your advice and kept them as the only item in results options. It did cut the first part of the solution time down by about 8 hours. But for the frequency step portion it still takes over a full day. I notice that there are 1211 frequency steps and that's what's taking the most time. I wonder if I should reduce the number of frequency point in the random-vibration options from 10 to some smaller number. Are there any resource here or elsewhere that describes how to optimize the number of frequency points?

1211 frequency points is a tremendous amount. What is the frequency range for your PSD curve? How many natural frequencies are you trying to find? My PSD curve goes from 5-500 Hz, so instead of having my solver return a certain number of natural frequencies, I just have it return all up to 500 Hz. With my particular models, I usually only see 2-6 frequencies in this range. It sounds to me that if you are only specifying 10 frequency steps under the study properties, then you probably are solving for too many natural frequencies.

The frequency range of interest is 0 to 2,000 Hz (MIL-STD-810F) with a specified PSD curve from our customer. When I ran the model with modal analysis for this range, 116 natural frequencies were identified. So.... I then continued with the random-vibration and for Random Vibration/Frequency Options I entered 120 for the number of frequencies. I left all the other factors with their default values, including Random Vibration/Random Vibration Options/Number of frequency points = 10.

I wish I could find some resources on what these options mean. I took the training sometime ago but lost the book specific to the vibration training. But I don't remember anything in the training book that had info on what these options mean.

Looks like I'm making progress. Under Random Vibration/Frequency Options, I changed the Options from number of frequencies to Upper bound frequency (2,000 Hz). I also reduced, under Random Vibration/Random Vibration Options, the number of frequency points from 10 to 1. The model now solves in about 2 hours for one axis.

I know that I have a lot of learning to do, especially in regard to what the number of frequency points mean. The simple statement in the Simulation help about Number of Frequency Points doesn't give me enough information to feel comfortable with the results yet. We also test all of our designs thoroughly, but having the capability of getting a heads up on possible stress problems by using random-vibration analysis is going to be a big plus for us.

Glad to see that you are making progress! One thing that may help shorten the overall solution time is to apply the PSD curve for each direction all in the same study. Overall time will be reduced because you're only running one study instead of three. This method will definitely increase the stresses that you see in the part, but it may be more realistic since the vibrations will probably be applied to the part simultaneously during normal operation.

I see your point - thanks. Although including all three PSD inputs in one run would save time, we're going to keep with the agreement with our customer to run them separately since we will be qualifying the unit by testing it on a shaker table one axis at a time.

I'm still puzzled about the meaning of "number of frequency points" which I have set to 1. Does the value of the "number of frequency points" affect the accuracy? I wish there was some online documentation or examples showing the effect of changing the number of frequency points.

The Number of frequency points in a random vibration study specifies the number of discrete points between every two adjacent natural frequencies at which the solution is obtained. For instance, if the Number of frequency points is set as 5, then the solution will be calculated at 5 different frequency values between two natural frequencies (the solution at the natural frequencies is also obtained).

Also related, the Biasing parameter defines how these points are spaced between the adjacent natural frequencies. A Biasing parameter of 1 would give equal spacing for the solution points between the two natural frequencies. Any values GREATER than 1 will push these points towards the natural frequencies. Typically, the Biasing parameter is set as 2.

The Number of frequency points will affect the RMS result plots because the RMS is the numerical integration of the resulting PSD function. A well defined PSD result (with lots of points between natural frequencies to well define the curve) will provide for more accurate RMS results.

Thanks Matt - this definitely answers my question and your answer with the information about the biaising helps me greatly in understanding the PSD aspects of random vibration. I've spent most of my career in CFD and have done some static stress analyses, so all the PSD stuff can be confusing. I'm very impressed with the ease and power of Solidworks simulation but wish I could find resources on techniques of using the software.

Fortunately, having the help of folks like you and Bryson is getting me to actually make progress.

Thanks again to both you and Bryson for your generosity and excellent advice!

As a person who has the email address flowjoe@solidworks.com, I can understand where your frustration with PSD analysis. Here is something that might help:

(see the attached picture to help the explanation)

As a rough guide to the levels of vibration, imagine sitting on a vibration machine. A PSD of 0.001 g^2/Hz over a range of 25 to 250 Hz would be similar to that experienced inside a civil airliner. Note that we specify the range of frequencies with the level because at higher frequencies the vibration is so fast that it doesn't have enough time to really do damage to the part; lower frequencies are the most damaging, as an example the frequency of an earthquake is on the order of 1 to 10 Hz (sources: http://bit.ly/3YwaxB & http://bit.ly/dLU2h). Another way to put it is that the response amplitude scales inversely with frequency. If we increased the PSD to 0.01 g^2/Hz, we would be at a level where most electronic equipment is tested. At 0.1 g^2/Hz we would feel quite uncomfortable, but it is typical of military vehicles and qualification test levels for satellite equipment. Going up to 1.0 g^2/Hz would certainly bring tears to your eyes!

Hi I just came across this and it's been very helpful. A couple of questions out of curiosity: Why is the biasing parameter is usually set to 2? Is it because you want more integration points closer to the natural frequencies where the highest responses are expected? If that's the case, why not use the default value of 0 and have the software automatically calculate the highest bias based on the damping of the system?