A Users Guide to Dispersion Analysis
Bruce Winker
High Power Optics
When you’re developing a new load for a long range rifle do you ask yourself, “What group size is good enough?” “Should I strive for a 0.5″ group, or is a 1.0″ group good enough?” What about muzzle velocity? “Is 50 fps extreme spread good enough, or should I push for 30, or even 20 fps?” “How many shots should I fire in a group to measure dispersion?”
What about wind deflection? “How does my skill level at estimating wind correspond to real-world group sizes?” You probably have a sense of what’s “good”, but do you know how to relate the data you get when developing a load to your goals of achieving a certain group size at long range?
If you fired ten shots at a deer-sized target at long range, what would the pattern look like? Would the dispersion be small like the left target in Figure 1, or wide like the right target?
Fig 1: Two examples of shot dispersion. Which one are you likely to get?
The best way to simulate dispersion in bullet impact is to use a method called Monte Carlo analysis, which varies all the individual ballistic parameters randomly to simulate the overall dispersion in the point of impact. This method is essential for understanding small caliber ballistics and developing guided weapon systems. Until recently, however, Monte Carlo analysis was not affordable for the recreational shooter or hunter. AB Analytics from Applied Ballistics makes Monte Carlo analysis available to long range shooters. In AB Analytics, this software is called Weapon Employment Zone (WEZ).
The software is easy to use. It automatically varies ballistic parameters over 1,000 “shots” and plots the dispersion pattern at a given distance, the probability of hit vs distance, etc. In particular, the software allows one to estimate group size at any range from knowledge of the standard deviation of the muzzle velocity, wind estimation error and the extreme spread of the group size (as well as other ballistic parameters). Bryan Litz also wrote a companion book, “Accuracy and Precision for Long Range Shooting” (hereafter referred to as “Accuracy and Precision“) that gives many examples of how varying the ballistic parameters affects dispersion.
However, neither the software nor the book tells the user how to relate the measured group size or muzzle velocity ES to the corresponding variables in the software, which are specified in terms of standard deviation. Nor do they indicate how many rounds should be fired in a group to determine these parameters.
When I first started using WEZ, I refreshed my college statistics and dug up some useful publications. I emailed the programmers at Applied Ballistics to make sure that I understood the statistics correctly. Then I ran some test cases in AB Analytics to confirm as much of this as I could. What follows is a user’s guide to Monte Carlo dispersion analysis using WEZ in AB Analytics. To be specific, I am using Desktop build 43 of AB Analytics and the first version (copyright 2012) of Accuracy and Precision. 2
Before jumping into WEZ with both feet, it’s valuable to quickly review the statistics behind the software, and think about our own personal goals for shooting accuracy and precision. The foundation of statistics is the concept that all processes in nature have some variation and that variation follows a distribution. In ballistics the variation is random in nature and the distribution is called Gaussian or normal. Figure 2 shows a Gaussian distribution, plotted as probability of something happening vs the variation from the center of the distribution, also called the mean value (μ).
Gaussian distribution of random events. The probability of occurrence is plotted verses the value of the parameter. μ=mean value and σ=sigma (standard deviation).
Notice that the Gaussian curve is symmetric left to right. The further way from the center or mean value of the curve, the lower the probability of something happening. For example, if the variable was muzzle velocity, and the center of the distribution was 2750 fps, then the mean value of muzzle velocity is 2750 fps. While it is possible for the muzzle velocity to be higher or lower than 2750 fps, it is not as likely.
The area under the curve is divided into three shaded regions. The center region is between +σ and – σ. The symbol σ (“sigma”) represents the standard deviation of the Gaussian distribution, and the area under the curve between those two extremes contains 68% of the area under the curve. That is, 68% of the time, a random variable will fall within +σ or -σ of the mean value. The second region is between +2σ and -2σ. 95% of the time, a random variable will fall within +2σ or –2σ of the mean value. The third region is between +3σ and -3σ. The area under the curve between those two extremes contains 99.7% of the area under the curve.
10 measurements of muzzle velocity. The measurements are plotted as a histogram. The sample mean value and standard deviation are shown (dotted black lines). The actual Gaussian distribution and mean are also shown (solid gray lines).
The last thing we need to understand is that a smooth curve like Figure 2 is only obtained for a random process that is repeated a large number of times – many thousands of times. In practice, we do not measure a process thousands of times, but rather only a few times, and typically no more than 10. A sample of 10 measurements of muzzle velocity might look like the plot in Figure 3, for example. The data are plotted as a histogram, showing the number of measurements that fall within 5 fps increments. The mean value and standard deviation of the sample are shown in the figure. Also shown in are the actual Gaussian distribution (solid curve) and mean of the distribution.
Notice that the data in Figure 3 has a lot of noise – it does not follow a smooth Gaussian curve. Also, the standard deviation for the sample is smaller than that of the Gaussian distribution, and the mean value is not the same as μ for the distribution. It’s a proven fact that when we measure the outcome of a random process just a few times, we tend to underestimate the true variation. That is, if we continue to measure the outcome, the standard deviation of the (increasing) sample size tends to increase. This is very important for shooters because we typically judge performance based on 3-10 shot groups. To get a more accurate estimate of the standard deviation of the actual distribution, we will need to apply a 3
correction factor to the group size and muzzle velocity data that we measure at the range. The correction factors for extreme spread measurements are discussed in detail below.
Before we move on using WEZ, we should start thinking about our objectives. I give examples at the end of the article. To use WEZ properly, we want to consider three questions:
The mean value and standard deviation for a small sample of measurements will only be an estimate of the true values for the distribution, and the measured standard deviation will typically be smaller than the actual standard deviation. Range data must be corrected for this effect.
What size is the target? Hunters will choose a circle or rectangle of a size corresponding to the “kill zone” of the animal they are hunting, such as the size of the vital organs.
At what range is the target? In WEZ, the Range to Target input value is specified in meters. Multiply your distance in yards by 0.914 to get the Range to Target in meters.
What percentage of shots should hit the target? This parameter is called P(hit), and is one of the key outputs of WEZ. In practice, you vary the System Variables, Range and Rifle Precision until you achieve the desired P(hit) value.
I won’t go into detail about the ballistics part of AB Analytics because anyone interested enough to have read this far is already familiar with ballistics calculations. AB Analytics allows users to specify nearly any ballistic parameter, and care must be taken to use accurate inputs. In particular, you should use measured values for muzzle velocity and ballistic coefficient. Here we discuss the three most critical input parameters.
Rifle Precision (ES). To use WEZ software correctly, your measured group size must be corrected to get the Rifle Precision extreme spread (ES) input value in MOA. The procedure for correcting extreme spread values is not explained in AB Analytics. Relying on the guidance given in the software documentation alone, the reader can easily be misled. One issue is that AB Analytics uses bivariate (two separate distributions) statistics for dispersion. That means that there are separate distributions for vertical and horizontal dispersion. However, the WEZ software uses only one input parameter for group size: Rifle Precision. To make matters worse, most software for calculating the standard deviation of dispersion assumes a single variable distribution, not two variables. Also, WEZ software defines Rifle Precision to be 4 times the standard deviation.
In AB Analytics, a value of Rifle Precision =1 MOA, produces P(hit) = 68% for a +/-0.25 MOA vertical stripe (all system variables being set to zero). That result confirms that the distribution is bivariate, and it means that you should multiply a bivariate standard deviation value by 4 to get the Rifle Precision input value for WEZ software. Unfortunately, most shooters don’t measure or calculate the bivariate standard deviation. They typically measure extreme spread for a group of 3-10 shots.
[Note: page 61 of Accuracy and Precision states that ‘… 95% of shots fall within a 0.5 MOA radius to produce a “1.0 MOA” group’. Unfortunately, this statement is incorrect. Due to the bivariate 4
distribution, actually only 84% of shots fall within a 0.5 MOA radius for a Rifle Precision=1.0 MOA (all system variables being set to zero).]
Group size (extreme spread) correction factors. Multiply the measured ES in MOA by the appropriate correction factor to get either the bivariate standard deviation (sigma) for the actual distribution, or the Rifle Precision parameter for WEZ.
To calculate the bivariate standard deviation from extreme spread requires some statistical analysis. Fortunately J. Hogema did that back in 2005 and posted his results on the internet. Table1 provides correction factors to get either the bivariate standard deviation or the WEZ Rifle Precision value from the measured extreme spread of a given group size. For example, to calculate the Rifle Precision (ES) parameter from a 5-shot group, multiply the extreme spread (center-to-center) value by 1.30. You also have to multiply any measured data in inches at 100 yards by 0.955 to convert inches per hundred yards (IPHY) to MOA units. The correct value for Rifle Precision is:
Rifle Precision (MOA) = (measured extreme spread in IPHY) x (correction factor) x (0.955 MOA/IPHY)
Measuring Group Sizes. To determine realistic group sizes, we want to estimate the combined dispersion of the rifle, ammo and shooter. However, most shooters have a habit of reporting the dispersion of just their rifle and ammo. We often hear people say that their rifle shoots a certain size group, “if I do my part.” That statement implies that sometimes the group size was larger, and the shooter blamed it on his technique, not the rifle or ammo. When calculating long range dispersion, you should not reject any groups from the average just because a group size seems abnormally large or “out of family.”
To exclude a shot from the group just because it appears to be a “flyer” is bad measurement technique and would lead one to underestimate long range dispersion.
For example, I usually fire 5-shot groups and often find that the fourth or fifth shot significantly widens the extreme spread. Is this shot a flyer? Unless there was some unusual physical event that caused me to throw a shot, like I hiccupped or someone bumped the shooting bench, all shots are counted as valid. If I called the shot high because the reticle was slightly above the bullseye when the trigger broke, the shot is still valid for the purpose of estimating rifle/ammo/shooter dispersion. Because I am taking as much care when firing every shot at the range as I am when hunting, those “flyers” will occur when hunting as well.
Firing 5-shot groups leads to a more accurate estimate of the standard deviation than does the more common 3-shot group. The correction factor is smaller for a 5-shot group than for a 3-shot group, so the estimate of standard deviation is likely to be closer to the true distribution. Whenever possible, average the group size from multiple groups, and use the correction factor for the number of shots in the group, not the total number of shots over all groups. For example, if you have 10 rounds, fire two groups of five shots and average the measured extreme spread. Then use the correction factor for a 5-shot group. And it is important not to reject any groups from the average just because a group size seems abnormally large or “out of family.” 5
Muzzle Velocity Standard Deviation. If the Rifle Precision is small, then muzzle velocity standard deviation can dominate over other factors in total the vertical dispersion at long range. Some chronographs will calculate sigma for a group. However, recall that estimating sigma from a small sample tends to underestimate the sigma for the actual distribution. Did the chronograph software already make that correction when it calculated the standard deviation of a string of shots? If so, what correction factor did the software use?
Muzzle velocity ES correction factors. Multiply the measured ES by the appropriate correction factor to get the standard deviation (sigma) for the actual distribution.
A better method is to use the muzzle velocity ES, then correct this value using the correction values in Table 2. These statistical correction factors were published by L. Tippet in 1925. The correct value for MV standard deviation is:
MV Std. Dev. = (measured extreme spread) x (correction factor)
Wind Standard Deviation. Estimating this parameter is probably the hardest part of using WEZ. Wind standard deviation reflects one’s ability to accurately read wind speed and direction. Shooters use wind meters, telltales (motion of grass, leaves and branches) and spotting scopes (mirage) to estimate wind. None of these methods is very accurate when wind conditions are variable. The reason is that wind can vary quickly due to multiple factors, especially for long range shots.
Location: Wind speed and direction are very dependent on location in mountainous terrain. Wind changes speed and shifts direction to flow up or down hillsides, through canyons and over tall trees. Wind measurements at one location are not likely to be accurate 300 yds away.
Time: Wind is highly variable in time and the wind can change velocity and/or direction between the time we observe it (wind meter, spotting scope, telltales, etc.) and the time we pull the trigger. Wind meter measurements always have more variation than the surrounding larger volume of air mass.
Height: Wind speed has a ground effect whereby the measured wind speed decreases the closer to the ground that it is measured. The bullet height above the ground varies due to gravity and terrain. Any method we use to observe the wind will lead us to underestimate the true wind speed, even in relatively flat terrain.
Table 3.2 on page 34 of Accuracy and Precision provides a guide to specifying the wind standard deviation, depending on whether the conditions are easy, medium or difficult. Unfortunately, the book doesn’t describe what these conditions really mean. Based on the values in the table, I would characterize these conditions as follows:
Easy: Low but stable wind speed (<3 mph) and nearly flat terrain; or nearly imperceptible wind (<1 mph) in hilly or mountainous terrain.
Medium: Low (<3 mph) but stable wind in hilly or mountainous terrain; moderate (3-10 mph) but stable wind in nearly flat terrain. 6
Difficult: Moderate and variable wind speed and hilly or mountainous terrain; gusty wind (large changes in speed or direction within ~10 s); or any high wind condition (>10 mph).
Skill Levels: Table 3.2 also specifies novice, average and elite categories for wind reading skill. Novice shooters are inexperienced at using ballistic software and rely on published drop tables, or may ignore wind altogether unless conditions are medium or difficult, and then will apply “Kentucky windage” to their shots. I think most long range shooters who are experienced at reading wind would fall into the average or elite skill category. Average shooters pay attention to wind conditions, routinely use a ballistic calculator or drop table and some method for estimating wind (i.e., usually either a wind meter, mirage or tell tales), and shoot long range frequently. Elite shooters train under varied wind conditions, use multiple indicators to estimate wind conditions, and most importantly, take field notes and compare their predicted and actual wind deflection values to improve their accuracy. They often train under similar conditions or at the same location as they hunt. Most elite shooters know their limitations and decline to take a shot when conditions are beyond their (proven) capability.
Some highly trained military shooters are taught to bin the wind velocity into 2 mph brackets, and their standard deviation in medium conditions is probably about sigma=1 mph. These shooters train on a weekly basis in variable weather and terrain conditions, and are beyond “elite” in the context of Accuracy and Precision.
Many long range shooters extend their range when they encounter no wind. However, for the reasons mentioned above, a zero wind condition at one location does not mean the wind is zero everywhere along the bullet path. Therefore a non-zero standard deviation needs to be used for this condition:
Zero wind: If zero wind speed is confirmed by releasing dust or powder, and terrain is nearly flat, then the wind standard deviation is about +/- 0.5 mph.
The wind standard deviation values for different combinations of wind condition and skill level are shown in Table 3. With the exception of the zero wind condition, these values are the same as those provided in Table 3.2 of Accuracy and Precision.
Wind standard deviation values for different combinations of wind condition and skill level.
The rest of the WEZ input parameters depend on the precision of your instrumentation. I would like to see Applied Ballistics include two more parameters in WEZ: wind direction and rifle canting. Being able to input separate Rifle Precision values, one for horizontal dispersion and one for vertical dispersion, would be useful as well. In the ballistic configuration page (describing the rifle and ammo), AB Analytics allows users to specify nearly any ballistic parameter, and care must be taken to use accurate inputs. In particular, you should use measured values for muzzle velocity and ballistic coefficient if possible. Be aware that two results for P(hit) are displayed by the WEZ software, and they don’t always agree. In fact, for very small targets, the two values can be quite different. You should use the value in the box on the right side of the screen.
Example: 7mm WSM Rifle 7
What follows is an example using a rifle I’m working on and my own perspective on rifle accuracy for hunting. Note that this example is for non-zero wind. Your approach and hunting conditions are likely to be different. There is no right or wrong approach.
Personally, I usually train for easy-medium wind conditions and hunt in unfamiliar terrain. I consider myself to have average to elite wind reading skills in these conditions. My hunting goal is to make a kill shot 95% of the time, and I limit my range accordingly. In theory, that means that only 1 out of 20 shots will not be in the kill zone. In practice, however, shooting from the field has additional challenges and my accuracy is likely to be worse. Changes in barrel condition, temperature and shooting position can have measurable effects on point of impact. I assume that if I train for P(hit)=95%, then I can expect to achieve P(hit)~90% when I’m hunting. That means that about 1 out of 10 shots in the field will not be in the kill zone.
In the areas I’ll be hunting the conditions vary between easy and medium. The skies are usually overcast. In favorable conditions, the wind speed is low (<3 mph) and the terrain has rolling hills. Experience tells me that my crosswind uncertainty in these conditions is about +/-1.5 mph. In other locations, the wind picks up to 3-7 mph and the terrain is flat. These conditions are more like home to me, and my crosswind uncertainty is +/-2 mph (elite). That is, 95% of the time my wind call will be within +/-4 mph of the wind value that produces an accurate wind deflection for the shot. In this example, I’ll run WEZ Monte Carlo simulations for both conditions and let the results tell me my max range for both types of conditions.
I’m developing a Winchester M70 rifle chambered in 7 mm WSM for long range deer hunting. I want to hunt in these conditions at least to 500 yds using this rifle, which is basically a factory rifle with an HS Precision stock. I’ve tinkered with it a bit already: bedded the stock, tuned the trigger to 2.5 lbs and lapped the bore. The bore is still a bit rough and could use some more lapping. I’ve seen 0.5″ 5-shot groups from this rifle, but the average extreme spread is 0.75″. I’m currently using Nosler 160 gr Accubond bullets (BC=.531 G1). The average muzzle velocity is 3025 fps, and the extreme spread is running 35 fps, which seems a bit high to me. The next level up in BC would be a bullet like the Berger 180 VLD (BC=.659 G1), but for right now I’m shooting what I’ve got. My question at this point is: should I continue tweaking the rifle and load or use them as is?
The elevation where I hunt is about 3,000 ft, and the temperature in the November rifle season is about 30 F. Bullet energy is at least 1,000 ft-lb at any range below 900 yds. I want to hunt with this rifle out to 500 yds in medium wind conditions, because that’s what I encounter most often. I train at a 600 yd range in the Southern California coastal mountains, and that will be my starting range for this dispersion analysis.
Initial Input Parameters: From table 1 above, the value of Rifle Precision I should use is .75 IPHYx1.303=.975 IPHY= .931 MOA. The muzzle velocity standard deviation is 35x.43=15 fps. I will only take a broadside shot at this range. Because I use a conservative value of P(hit)=0.95, I use a large 6″ radius circle for the target size. This kill zone encompasses the heart and most of the lungs, and overlaps with the upper shoulder bone and spine. As I mentioned before, there is no right or wrong way to set 8
the P(hit) and target size parameters. For the rest of the parameters, which relate mainly to weather instrument precision, I use the values recommended in the WEZ User’s Manual.
Figure 4 shows the WEZ output for dispersion at 600 yds (549 meters) using the 168 gr Accubond. For some reason that only makes sense to the WEZ software programmers, the target size in the WEZ plot is very small. I gauge my progress by looking at the overall shape of the dispersion and the P(hit) value. The resulting P(hit)=85.7% is smaller than I would like. This result suggests that 8 out of 10 shots would be in the kill zone. Shooting from a field position, it may be more like 7 out of 10 shots in the kill zone. I take a little comfort knowing that for a broadside deer, the shots that land outside 6″ radius circle are likely to hit shoulder bone or lung (landing left or right), so they may still drop the deer within a short distance.
WEZ input variables and output for 7WSM rifle in its current condition, shooting 160 gr Accubond bullets in easy wind conditions (+/-1.5 mph) at 600 yds (549 m) range. 5-shot group size is .75 IPHY extreme spread (Rifle Precision=.931 MOA).
Higher BC Bullet: Nonetheless, my goal is P(hit)=95%, so what will it take to get there? Just by reducing the range I was able to reach P(hit)=95% at 519 yds (475 m). That’s only marginally above my goal of 500 yds, and it’s for easy wind conditions, whereas I’m expecting medium conditions. I think this rifle can do better without a lot of effort or cost. The uncertainty table in the middle of Figure 4 shows how each parameter contributes to dispersion, and suggests that wind deflection is too high for me to reach this goal, even in easy wind conditions. Rifle dispersion contributes a standard deviation=.75 IPHYx.326×6=1.47 inches at 600 yds, which is not a big contributor to this dispersion. Reducing Rifle Precision or MV ES won’t have much effect.
My first inclination is to switch bullets and continue lapping the bore, with the goal of getting a reproducible 5-shot group of .7″ using Berger 180 gr VLDs at a MV=2850 fps. This bullet has a BC=.659 (G1). The Rifle Precision value now becomes .7 IPHYx1.303=.912 IPHY=.871 MOA. Running the WEZ software several times, I was able to reach my goal of P(hit)=95% by reducing the range to 556 yds (508 m). See Figure 5. This means to me that I can probably count on putting about 9 out of 10 shots in the kill zone at this range, shooting from a field position in easy wind conditions. Finally, I want to know what my max range is for medium conditions (+/-2 mph wind estimation skill). I reached a P(hit)=95% by reducing the range down to 495 yds (453 m). That’s close enough to 500 yds for me.
Maximum range. WEZ output for 7WSM rifle with more barrel lapping, shooting 180 gr Berger VLD bullets in easy wind conditions at 556 yds (508 m).
This example showed me that this rifle and load needs more work to reach my goal of deer hunting at >500 yds. Under the conditions that I plan to hunt, however, it’s an achievable goal. After tweaking the rifle and load a bit more, the next step is confirm these calculations with some long range shooting.
Have questions , or want to discuss this article? Go here.