Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - admin

#136
Updates / Aug 10 - BfX updated
August 10, 2011, 10:58:48 PM
One thing what is needed to supply your own (or Lapua's or ...) drag function to BfX is a function called BfX_CRC. CRC means cyclic redundancy check. It basically computes a 13 character text from a range of cells - no matter how large. If anything changes - the number in the text changes. It will be used to tell BfX that a certain drag table does not have to be read again because nothing has changed.

This was a small project gone out of hand. It completely generalized the internal structure of BfX (for the better) and the implementation process discovered a few bugs you probably never encountered. I updated the Getting Started workbook- you realy have to have a look at the "check range changed" worksheet to see the raw power of BfX CRC in spotting the smallest change in this rather huge workbook.

BfX_CRC noticed that under windows XP and Excel 2003 BfX_CD didn't work  (why did no user of BfX report this to me?) and spotted a few deviations in the worksheet that contained the BfX_Ran functions. These turned out to be a worksheet problem that I fixed. Now there is an single issue left with no practical impact - BfX_CRC spots a deviation in the cell G500 of the Drag Functions worksheet between Excel 2003 Windows XP and 2010, windows 7 64 bit . However, the number therein is to the last if its many decimals, the same! I will have a digital debug look at it later.

The updates can be downloaded from the site.
#137
General discussion / new bfx in the make
August 01, 2011, 02:28:09 AM
Because of the rain there was an excuse to start with the upgrade of BfX to include user defined drag functions. The first step is done, BfX is able to read in (any) tables and check them if they are changed since last time they were read. As a by product the function BfX_CRC(<range>) exists now that computes a string, e.g. BfX2269275294CRC, of 16 or less characters (32bit cyclic redundancy check (log10(2^32))+ BFX + CRC) . This value changes if the values and their order in a range of cells changes.

This BfX_CRC is quite handy for it self. Suppose one fills a quite large table with calculations. Then the person changes something in the workbook which should not affect the numbers and strings in the table. If, however they are, BfX_CRC computes another number.

Later this week I release the version with BfX_CRC, it needs just a small change in the source code...
#138
It is important to know that an add-inn is loaded by Excel it self, it is not part of the file.

1) check  the security settings of the new file, are macro's/addins allowed?
2) check the security settings of the new file location, is it a trusted location?
see http://www.bfxyz.nl/docs/bfxexcelsettings.shtml
3) can Excel find the add-inn? to check: create new  blank workbook, type =bfx_help()

These might prohibit the execution of add-ins.

4) Excel contains native the random number generators RAND and RANDBETWEEN
They are volatile functions in Excel (just like BFX_Cell). Everytime a calculation is done somewhere in a workbook, new values of RAND and RANDBETWEEN (and BfX_Cell) are generated Some times this is an advantage. However, if one wants to use the Solver add-in there shouldn't be any volatile functions in the workbook

send me the file if nothing works...
#139
... nevertheless I am quite curious now, can you give me an example of what you are doing?
#140
Al,

The retardation coeficient is not used in BfX. I use Pejsa's drag function, what Pejsa calls in his book "a far superior drag function". What a retardation coeficient and slope factor allows is to create your own drag function. During my holidays I will see how I could allow users of BfX to supply their own drag functions/tables.

In the mean time you might consider adapting the ballistic coefficient. If you give me your data I will show you how to do it. On the otherhand you can follow a procedure I have published in one of the downloads to do so.

Robert
#141
Quote from: ThunderDownUnder on May 30, 2011, 01:09:00 AM
Robert, 6DOF may be more work than you need to give yourself for accurate ballistic analysis.

Completely true, BfX is already good enough. Never the less - this is physics and programming fun for me! 6DOF is however the easy part - I do have already 3dof implemented and used to check BfX

Quote from: ThunderDownUnder on May 30, 2011, 01:09:00 AM
It would appear that only bullet manufacturers would have the aerodynamic data to use with 6dof programs.

Yes, there are hard to obtain things like the skin friction coeficient. But we need only two - for copper plated and moly coated bullets.

Quote from: ThunderDownUnder on May 30, 2011, 01:09:00 AM
I compare the results I get using your current BfX function with Bryan's 3dof program and the results are almost exactly the same for all his G7 data. Not being very good at maths myself,  I'm assuming your BfX functions are already using 3dof?

No, not 3DOF. I use the Pejsa method that mathematically integrates, assuming small elevations (<15 degrees) the equations of motion. Required is a partametrization of the drag function in the form of d=a*m^b where a and b are constants depending on a specific velocity region. I have such parametrizations for many dragfunctions. If one sets b=0 then the drag function is parametrized as a large collection of constants - indeed the drag table itseff. Hence the Pejsa method can use in principle any drag table (without the parametrizations that speed up the calculations). I am planning to try this out and modify the interface to bfx a bit so that the drag function parameter points to a drag table.

Quote from: ThunderDownUnder on May 30, 2011, 01:09:00 AM
"If I were to write a ballistics program for small arms that's intended to surpass the existing available packages, I would use a point mass solver (3-DOF numeric solver) for the following reasons:
1. ...
2. ...
3. You can make use of multiple standards (G1, G7, etc) depending on whichever one is best suited to the bullet you're modeling.  (Siacci also has this feature).

4. If you have access to a 6-DOF simulation, you can investigate trends like gyroscopic drift as a function of flight time for certain classes of projectiles, and then apply the trends as corrections to the point mass solution (Ref article: Extending Max Effective Range of Small Arms on this website).  Applying the 6-DOF corrections won't significantly affect computer run time.

Well as said, BfX uses the Pejsa method and works fine with many functions, certainly G1 and G7. What you can do, as Brian did for the gyroscopic drift, is to parametize the effects of the spinning projectile and add them to the 3dof or in many cases equivalenty, bfx values. Parametrization means determining parameters of a mathematical function that effectively calculates the drift. Another example is the parametrization of the maximum range of a bullet that I published some where else on this forum. This parametrization depends only on the ballistic coeficient and muzzle velocity and is accurate (compared to 3dof) within 10%. Known for the Pejsa and Siacci methods are also other parametrizations as the large angle corrections.

Quote from: ThunderDownUnder on May 30, 2011, 01:09:00 AM
    I would avoid the Pejsa solution because of the difficulty of modeling bullet drag.  Since the Pejsa method does not make use of any standard projectile drag curves, it's up to the user to describe the drag of his own bullets.  This requires establishing obscure coefficients and exponents for each bullet for several velocity bands.  Large compromises are made when the projectile slows to transonic speeds and the drag curve is approximated with linear segments.  The complexity of Mach dependant projectile drag belongs in the solution method, it should not be up to the shooter to figure out."
There is, within its assumptions of a point mass projectile and small elevations, nothing wrong with the Pejsa method. It gives the same answers as a numerical calculation (simulation) of the equations of motion. The only odd thing about a strict Pejsa implementation is his drag function, which is the default one in BfX and should be used with the G1 ballistic coefficient. However I also allowed other drag functions in BfX for those wo whould like to use other functions. It also allows a comparision - the bonus of using Excel. I did this inn the gettingstarted workbook that cross evaluates the use of various drag functions. I concluded there that for many sport shooters it does not matter which drag function one uses. Furthermore, Pejsa was an able man - his drag function does make a lot of sense.

By the way I have obtained such "obscure coeficients ...." - they are not obscure for me and the BfX user does not have to worry about them - I did.

In conclusion: a 6DOF is a bit of a physics and programming challenge. There is a part of me that wants to simulate the aerodynamics of the bullet itself. This is the final challenge - drag functions would be the outcome of these calculations.


#142
Member projects / Re: Hit probability
May 28, 2011, 07:06:10 AM
the right hand side sketches the view on top of the rifle
#143
Member projects / Re: Hit probability
May 27, 2011, 11:00:14 PM
... I am in St Petersburg, RU and scarcely have time to analyse this case this weekend.  There is as far as I can see nothing special to the subject, just goniometry.  In the past I have used this graph for my calculations ...

Of course one might expect that a canted rifle interacts differently with a shooter/benchrest.
#144
Member projects / Re: Hit probability
May 18, 2011, 09:37:17 AM
The simulations learned what I knew already ;D - the difference in distance between points y on two straight lines at a distance x increases linear with x. With other words, dispersions scale with distance and are angular.

To sum up: an additional lateral horizontal muzzle velocity shifts in the horizontal plane the angle of the trajectory.If one place a target at a certain distance z the poi differences increase linearly with distance.

mman is right, it looks if Bryan makes an error here.
#145
Member projects / Re: Hit probability
May 17, 2011, 12:55:53 PM
Quote from: mman on May 17, 2011, 05:36:17 AM
I ask you this: What is the force which makes the dispersion to curve along the trajectory? Let's think about this another way. Bullet has a velocity vector when it leaves the muzzle. Vector can always be divided to components but drag affects to all of those components equally. That leads to conclusion that "lateral" velocity component slows down also. So the velocity component due to launch dynamics leads still only to linear dispersion, not TOF dispersion. At least that's the way I see it...

I see your point. In absence of external and assymetrically applied forces (wind) the bullet flies in a straight line. With lateral muzzle velocity it just flies in another direction than the bore axis /line of sight is pointing. However, the dispersion is another quantity. The real question here is if the deflection due to dispersion of the lateral muzzle velocity scales with time. What is  propagtion of the quantity y1-y2 where y1 and y2 are the lateral displacements as a function of distance. Although this is easy to calculate with my 3DOF, the question how vy relates to vx (the velocity along the line of sight): vy^2-vx^2=v^2 = constant? If so then the lateral velocity dispersion will also translate into a dispersion of the launch direction, complicating a straightforward comparision.
#146
Member projects / Re: Hit probability
May 16, 2011, 10:22:41 PM
Interesting issue, I never thought about is. It tells why a indoor 300m range is more exiting than a 50m one with a reduced target.
#147
Member projects / Re: Hit probability
May 16, 2011, 10:17:33 PM
Personally, I think my aiming ability is much better than my ability to maintain a natural point of aim, which is not bad either.... The funny thing is that my conscious mind wants to control the aiming and neglects the natural point of aim.
#148
Member projects / Re: Hit probability
May 16, 2011, 10:15:52 PM
Regarding the

Quote from: mman on May 16, 2011, 06:54:51 AM
... shooter's holding error? Is it linear or time of flight depended? In other words, is the group size angular or does it grow unlinearly along the range due to this error.

I have read the passage of Litz (I have the first edition, and indeed it is chapter 11) on page 185 there is an paragraph about the natural point of aim. Brian reasons that a body could inflect random movement of the muzzle during recoil (barrel time). Any line of sight perpendicular (lateral) velocity component translates (because of the non-linear relations ship between flight time and distance) into a non-linear dispersion. Certainly this is a non linear, time dependent contribution to the shooters accuracy. I think Brian has a point here.

One of the others accuracy affecting factor of the shooter is his aiming ability. This will not produce a lateral velocity. This is an angular contribution.

The inability to read the wind results in an aiming error. However, if the ability to read the wind is a constant, regardless the distance to target, the effect of it increases with travel time and gives to a non linear contribution to the accuracy

Thanks for the link to the barrel vibrations article.
#149
Member projects / Re: Hit probability
May 16, 2011, 01:58:12 PM
Quote from: mman on May 16, 2011, 06:54:51 AM
... shooter's holding error? Is it linear or time of flight depended? In other words, is the group size angular or does it grow unlinearly along the range due to this error.

If so then my first guess would be that as drop and wind deflections vary quadratically with time, errors will also vary quadratically with time and more or less with distance. I have to think about it... And play a bit with my simulation that does not suffer from these issues.

However, in your spreadsheet you added the dispersions quadratically. Although many dispersions are indeed independend, at least two of them are a bit correlated. If a bullet leaves the muzzle at a higher than average speed, it will hit the target higher and will be deflected less by wind. It is a rather minor effect, barely noticable, but never the less present in my simulations (in the WhatDoIShootToday spreadsheet): bullets that are deflected less hit the target on average higher and vice versa.

Quote from: mman on May 16, 2011, 06:54:51 AM
Bryan Litz suggests in his book that shooter can introduce time of flight depended dispersions. This is important detail for group dispersion and hit probability models.
It would help if you could give me the page number, then I do not have to think to hard...  :)
#150
Member projects / Re: Hit probability
May 14, 2011, 09:49:06 PM
Impressive!