Simupop

Latest version: v1.1.17

Safety actively analyzes 681866 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 9 of 12

0.6.12

- CHG: 'not enough case/control' in caseControlSample now generates
a warning message, rather than exception.
- CHG: set the default sample saveAs format to 'auto', instead of 'bin'
'bin' was used before 'auto' was introduced
- NEW: the format parameter of loadPopulation, loadSimulator are obsolete.
File type will be automatically determined.
- NEW: the wrap files will be automatically generated if any of the source
files is modified. This is useful mostly for svn users.
- NEW: simuUtil/SaveLinkage is improved in efficiency
- CHG: simuUtil/SaveLinkage: if pre is True, the output is filename.pre
instead of filename.ped, which will be used when pre is False.
- CHG: (internal cleaning) fitness is implemented differently.
- CHG: (internal cleaning) randomMating sex determination no longer use bt.
- CHG: (internal cleaning) isMale class is replaced by a less fancier solution.
- CHG: (internal) change the use of pointer to iterator, in preparation for
compact presentation of binary alleles.
- NEW: add a compilable (imcomplete) binary library. All alleles are 0 or 1
and are stored internally as bits to save spaces.
- CHG: carray can now read/write binary allele. However, it can no longer
be a standalone type. It should always be only a reference to a
piece of memory. This simplifies the design since we do not have to
worry about extending, slicing etc.
- NEW: (important) addition of ba, baop modules for binary allele. Extensive
tests are needed but it is in working status now, including the arrGenotype
function series.
- NEW: you can now directly compare individuals and populations in python.
- CHG: carray is no longer a standalone type. (You can not create it in python)
- NEW: under DBG_MATING, size of each family is outputed as pop.dvars().famSizes
- NEW: initByFreq now recognize binary library and set 0,1 instead of 1,2,...
- NEW: Complete test cases for all operators.
- CHG: remove sep parameter of operators. Users need separator between output of
operators can use a output() operator manually. (sep is originally a bad idea.)
- NEW: (internal) Adapt the interface file and swig commands to SWIG 1.3.28.
- CHG: simuComplexDisease.py uses binary modules for SNP markers.

0.6.11

- DOC: add examples of penetrance operators to the reference manual.
- DOC: document using pyOperator to build pure-python operators
- NEW: check return value of pyPenetrance function to be within [0,1]
- NEW: add operator continueIf, in addition to terminateIf
- NEW: add 's' behavior to operator pause, which will invoke an interactive
python shell. Current population is by default exposed to the main
dictionary as variable 'pop. This can be controled by parameter
exposePop and popName.
- TST: add test case test_opPause.py
- NEW: add name parameter to population::exposeInfo and population::exposeAffectedness
- NEW: add subPop parameter to population::removeIndividual
- DOC: add full member function of population object list to reference manual
- DOC: add genotypic structure function list to reference manual
- DOC: add individual function list to refernce manual
- CHG: rename basicPentrance, basicSelector and basicQuanTrait to
mapPenetrance etc
- NEW: add multi-locus support to mapPenetrance, maPenetrance (and selector,
quantrait) except for locus, you can specify loci, and a longer map
or array of values.
- NEW: pyOperator can now be a during-mating operator. Pass a python function
func(pop, offspring, dad, mom, param) and set stage=DuringMating will do.
- BUG: fix another memory leak problem when an internal population is exposed
- NEW: improve the efficiency of dynamic type finding of population and
individual Decent performance boost for pyOperator, especially to
the DuringMating mode.
- NEW: use the new swig -external-runtime feature to generate swigpyrun.h,
this allows me to relocate some utility functions from the interface
file to utility.h
- NEW: let simuCDCV.py also trace and display the change of total allele frequency.
- NEW: add passOffspringOnly to pyOperator to speed up duringMating pyOperator.
- DOC: add simuPOP coding convension to simuPOP reference manual
- NEW: add simuOpt.valueOr, valueNot and valueAnd to simuOpt.py
- NEW: give correct prompt for pause operator regarding exported population name
- BUG: fix a bug in affectedSibpairSample, which will generate the wrong
sample if an operator is used a second time (So AffectedSibpairSample
is not affected).

0.6.10

- NEW: add recCount(loc) and recCount() to recombinator to track
the number of recombination event.
- NEW: add mutationCount(loc) and mutationCounts() to muators to track
the number of mutation event.
- NEW: add atPloidy=[0] to pointMutator.
- CHG: replace lociDist and locusDist by lociPos and locusPos. This kind of term
change should be done as soon as possible.
- NEW: add simuRecHotSpot.py which is used to generate SNP sample that can be used
to estimate recombination rate between markers.
- TST: convert test_mutator.py to unittest framework.
- NEW: add DBG_DEVEL for developer-level debug information.
- CHG: Make adjustment to how genotype structure is accessed from individual and
limit the number of subpopulations to 2^31. Save 8 bytes (24->16) for each
individual without noticable performance penalty.
- BUG: fix a tiny bug about optimization mode reporting
- TST: test_population is better now, but still way to go.
- CHG: separate simuComplexDisease.py into simuComplexDisease.py and
analComplexDisease.py. The first script will run simulation and generate
a population saved in binary format. The second script will run the old
analyses (apply penetrance function, plot figures, apply genehunter etc.)
- NEW: add more info to saved config file. (Add a command line script)
- CHG: simuOpt does not load wx automatically when --noDialog is used.
- BUG: fix a memory leak problem with genotype structure introduced in 0.6.9.
- BUG: fix a memory leak problem with PyObject->double conversion.
- CHG: change listVars to ListVars for naming consistency. (Captal for standalone function)

0.6.9

- add pyOperator, the ultimate hybrid operator, this will considerably simplify many
coomplicated tasks
- start to convert all test cases to PyUnit. This means better test cases and more
thorough testing. I expect that code 0.7.0 is a version with much less bugs due to
this change.
- fix a bug in initializer (parameter proportion)
- fix a bug in recombinator concerning direct chrom copy.
- remove autoconf, Makefile.icc stuff to avoid confusion.
- fix a bug in migrator/MigrByCounts, which is introduced in 0.6.8
- add subversion revision number to doc and binary releases for
better tracking of changes.
- fix windows binary import problem caused by mingw/msvcrt. Details please see
INSTALL.
- fix a bug in AffectedSibpairSample with countOnly parameter. (Not able to
handle None return.)
- add parameter --resampleOnly and --reAnalyzeOnly
- remove --optimzied --optimized etc from sys.argv after processing in simuOpt.py
- add simuViewPop.py (module and command) that can load and view popularion
property, calculate statistics etc.

0.6.8

0.6.7

- Add help() infor for the function version of operators and member functions.
- use Walker's alias algorithm for weighted sampling. Random mating with
selection should be only slightly slower than without selection. The performance
of simuCDCV.py increased by 15% using this algorithm. This method will use
a lot of RAM when population size is large (8*N bytes).
- add compiler info to Welcome message. (to see if it matches that of Python.)
- change the use of logfile in simuCDCV.py
- fix a bug in operator InitByFreq.

version 0.6.6 - various GUI / wxPython improvements. Not released.
- add wxGetParam. Will be used when wxPython is available.
- add wxPython version of listVars. Much better than the text version
when wxPython is available.
- add some demographic functions in simuUtil.py
- use grid for tkinter box
- add migrIslandRates() and migrStepstoneRates() in simuUtil.py
- find an uncaptured out of memory exception.
- simuCDCV.py is better, with log file.
- stop using global variable gen. Add gen() function to individual population
and "gen" to local variable space. (Avoid using modular level global variable)
If this breaks anything, please let me know.
- Change penetrance from 1,1-s,1-2s to 1,1-s/2,1-s in simuComplexDisease.py and
simuCDCV.py. This is more natural.
- Add tooltip to the wxPython version of getParam.

Page 9 of 12

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.