I have submitted my May 2023 paper Fully Calculating Autosomal DNA Coverage Recursively for publication in The Journal of Genetic Genealogy. The paper includes the source code for the Excel Visual Basic program to calculate the lower and upper bound estimates of the range of DNA coverage of anyone in a GEDCOM from the DNA test results of their descendants. This program is a proof-of-concept. I wanted to prove that a simple program to calculate DNA coverage bounds is possible so that commercial vendors of genealogical database software would see how easy it is to implement a DNA coverage report as a standard feature if they want to be considered as quality products from this time forward. Tens of millions of people now have an autosomal DNA test as a life event so that the products are long overdue in providing this feature. |
I want to be clear. I want every genealogical software product to make DNA coverage estimation a standard feature. So, the code here is neither copyrighted nor patented. It is free to use for anyone who wants to use it. |
|
The diagnostic program code included in my paper prints the large internal Table 1 for each call level (each generation), so that the exact calculations can be traced. This version is fixed as it is in the paper. It has limits. Most significantly it cannot handle families with more than 12 children. The production code can handle families with 18 children, and it prints the results report without the massive detail of the internal Table 1. In work on actual families, it has handled a family of 17 children. It is set up to handle families of up to 18 children of a parent, but I have not yet found an actual family to test that and have not configured a test case either. If you want to understand the program, use the diagnostic code that prints out Table 1 for each generation. But if you want to use the code for your real-life ancestors in your GEDCOM, use the production code. The diagnostic code (same as in the paper) is in this text file. The production code is in this text file.
|