- Apr 08, 2024
-
-
LUISELLI Juliette authored
-
LUISELLI Juliette authored
-
LUISELLI Juliette authored
-
- Nov 17, 2023
-
-
David Parsons authored
... and use sstreams instead of sprintf
-
- Mar 16, 2020
-
-
Théotime Grohens authored
This commit gets rid of the -Wdefaulted-function-deleted warning that popped up in Mutation-derived classes. It came from the fact that Mutation.h had these definitions: | copy | move ---------------------------------------------------- constructor | default | default ---------------------------------------------------- operator | delete | delete whereas the derived classes had the following: | copy | move ---------------------------------------------------- constructor | default | delete ---------------------------------------------------- operator | default | delete This meant that the move operator was defaulted in the base class but deleted in the derived classes, producing the warning (the discrepancy was introduced in 6615dbb4). This commit deletes all copy operators, leaving only copy constructors, which are used in the Clone() method shared by Mutation classes. Note that in *HT classes, the copy constructor is defaulted but the classes contain pointers, so there might be a memory issue when calling the constructor.
-
- Feb 12, 2020
-
-
FOLEY Marco authored
-
- Oct 29, 2015
-
-
Vincent Liard authored
-
Vincent Liard authored
Magic command for reference: find ! -path '*test*' ! -path './libaevol/SFMT-src-1.4/*' \( -name '*.cpp' -o -name '*.h' \) -print0 | xargs -0 sed -i -r 's/\bget_(\w+)\b/\1/g'
-
- Oct 28, 2015
-
-
Vincent Liard authored
Looking forward to honour Google Style guide, the purpose is to rename getters from get_var() to var(). Many of such renames cause conflicts, though. In this commit, only the safe names were changed. grep -rEo '\bget_\w+\(' --include '*.h' --no-filename --exclude-dir tests \ | sed -e 's/get_//' -e 's/($//' \ | sort -u \ | xargs -n 1 -I% sh -c "grep -roq '\b%\b' --include '*.cpp' --include '*.h' --exclude-dir tests || echo %" \ | xargs -n1 -I% sh -c "find ! -path '*test*' ! -path './libaevol/SFMT-src-1.4/*' \( -name '*.cpp' -o -name '*.h' \) -print0 \ | xargs -0 sed -i -r 's/\bget_%\(/%\(/g'" Yes. I know... http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Function_Names
-
- Aug 12, 2015
-
-
ROUZAUD-CORNABAS Jonathan authored
-
- Aug 06, 2015
-
-
ROUZAUD-CORNABAS Jonathan authored
-
- Jul 06, 2015
-
-
David Parsons authored
Instead of a single class with switches everywhere, mutations are now handled through a proper polymorphism. Here is the class hierarchy: Mutation <-- LocalMutation <-- PointMutation <-- SmallInsertion <-- SmallDeletion <-- Rearrangement <-- Duplication <-- Deletion <-- Translocation <-- Inversion <-- HT <-- InsertionHT <-- ReplacementHT
-
- Jun 19, 2015
-
-
David Parsons authored
=> local, rear or HT
-
- Jun 17, 2015
-
-
David Parsons authored
-
David Parsons authored
-
David Parsons authored
-
- Feb 20, 2015
-
-
Vincent Liard authored
-
Vincent Liard authored
In the process of simplifying ae_dna_replic_report::get_nb_etc(), symbols were needed to describe composite mutations. Would have been nice to create a separate type extending ae_mutation_type but it's not supported by C++ as of C++11 or 14. Alternatives like encapsulating the enums in classes felt too heavy for this task.
-
- Feb 19, 2015
-
-
Vincent Liard authored
In the process, got to add constness to functions in many other files. Could have dropped constness from declarations, but since I was at it... Has to be tested thoroughly, still...
-
- Feb 12, 2015
-
-
Vincent Liard authored
-
- Dec 08, 2014
-
-
Vincent Liard authored
The name convention ae_* for aevol-related classes and functions comes from C language lacking namespaces. It was meant to prevent name clashes. Since C++ provides namespaces, this commit wraps everything inside an "aevol" namespace. This means that there is no need anylonger to name classes according to ae_*. But any new class needs to be within the aevol namespace if it is part of aevol or to start with a "using" clause if it relies on aevol.
-
- Nov 05, 2014
-
-
KNIBBE Carole authored
-
- Oct 21, 2014
-
-
Vincent Liard authored
-
- Jan 28, 2014
-
-
KNIBBE Carole authored
Removed all obsolete _HT_... attributes (and the corresponding accessors) in the ae_replication_report class, because they were moved in the ae_dna_replic_report class a few months ago. They record the events of transfer by insertion or replacement. This modification just makes the code cleaner and does not affect the simulation results in any way.
-
- Nov 19, 2013
-
-
Bérénice Batut authored
- They are managed in ae_dna and ae_mutation and no more in ae_selection - They are saved in ae_dna_replic_report with the transferred sequence (to simplify the post-treatments)
-
- Oct 22, 2013
-
-
David Parsons authored
Updated all the file headers
-
- Feb 12, 2013
-
-
David Parsons authored
BUGFIX Fixed bug #267: Won't compile with zlib-1.2.7
-
- Nov 19, 2012
-
-
Bérénice Batut authored
* Implementation of two plugins for population and environment changes (change_pop.cpp and change_env.cpp). They takes one parameter file with the parameter to change and a population or an environment backup to change. Actually, only overall mutation/rearrangement rate change, addition of gaussian and change in environmental variation are implemented. BUGFIX * We fixed some segmentation faults due to tree
-
- Jul 27, 2012
-
-
David Parsons authored
* 3 dynamic files, printed at each BACKUP_STEP : + Population (unchanged) + Environment + Spatial Structure * 2 static files containing constant parameters + Ouput Profile + Experimental Setup The output profile and the experimental setup (latter not yet implemented) will be loadable either from a gzipped file (old format) or from a plain text file. ++ D.
-
- Jun 07, 2012
-
-
David Parsons authored
Modified compilation chain: --with-regul changed to --with-raevol --without-xlib changed to the (standard) without-x lib-aevol was changed to libaevol for a more intuitive use with -laevol. Libraries generated with different compilation options are no longer differentiated by postfixes (save for the RAEVOL option) => if --with-raevol is used, the generated lib will be called libraevol (whether X and/or DEBUG are used or not). if --without-raevol (default), the generated lib will be called libaevol. make clean is called automatically at the end of ./configure to avoid compatibility issues.
-
- Apr 28, 2011
-
-
David Parsons authored
Ported feature TRANSFER Log overview (see previous logs for more details) ------------------------------------------------------------------------ NEW * Added 2 parameters TRANSFER_INS_RATE and TRANSFER_REPL_RATE to set the rate of insertion (resp. replacement) transfer. Default: 0.0 => No transfer. Both rates are per replication rates and trigger a transfer attempt (the actual occurrence of a transfer event will depend on whether an alignment is found). There can be at most one transfer of each type per replication. * Every possible ae_mutation now has a _length * Added method ae_dna::copy_into_new_GU( int32_t pos_1, int32_t pos_2 ) const * Added method inline void ae_genetic_unit::copy_promoters_included_in( int32_t pos_1, int32_t pos_2, ae_list** new_promoter_lists ) * An ae_vis_a_vis now contains its score * Added a header for R in the output file of fixed_mutations * Added a new post-treatment "mutagenesis" * Added checking options (NO_CHECK / LIGHT_CHECK / FULL_CHECK) to the "fixed_mutations" post-treatment * Added a log file for transfer. Keyword TRANSFER, file name log_transfer.out * Added a test case for transfer. * New file ae_enums.h MODIFIED * Moved the replication procedure to ae_population. * Deported the genome size barrier checks one level up ( e.g. from do_deletion( pos_1, pos_2 ) to do_deletion() and do_rearrangements_with_align() ). * Method void ae_genetic_unit::copy_lagging_promoters_starting_between( int32_t pos_1, int32_t pos_2, ae_list* new_promoter_list ) no longer has the ( pos_1 > pos_2 ) prerequisite * Renamed class utils to ae_utils BUGFIX * Replaying a translocation when alignments are on could cause an error * The -c (or --fullcheck) option in lineage was not declared hence didn't work... * ae_individual::reevaluate( ae_environment* envir ) didn't reset the (new) attributes _transcribed, _translated and _folded yielding a flat fitness. * In post-treatments that deleted ae_common::sim, ae_dna::undergo_this_mutation( ae_mutation * mut ) could check whether it had to write in the BARRIER log. It hence tried to access a member of ae_common::sim that was NULL. * LOADS and BARRIER logs now work correctly * There were some inconsistencies with Whole Genome Events (i.e. Whole Genome Duplications) ------------------------------------------------------------------------
-
- Dec 13, 2010
-
-
David Parsons authored
* Organized the repository to manage branches. * ************************************************ Everything you already know has been moved to "trunk" Added a "branches" directory with 2 subdirectories "releases" and "features" * "releases" will be used for branches related to a given release, e.g. when a change to post-treatments are needed for the analysis of data generated using that release. For example: I am analysing data that I generated using versions 2.1.2 of the code. I hence created the branch "releases/aevol-2.1.2" so that I can code my post-treatments in a properly versionned way. These development may (depending on the level of specificity) be added to the trunk eventually (using svn merge) * "features" is meant to be used when developing a new feature that takes time developing. This will enable us to use svn feature more thouroughly, e.g. commit more often (even "unstable" versions) in a personal branch of the svn. If you don't want to use branches or if you just want to be able to update regularly, you need not change your habits, just add "/trunk" when you check out => "svn checkout svn+ssh://username@svn.gforge.liris.cnrs.fr/svnroot/aevol/trunk" Questions/remarks are welcome! David
-