Answers.Body: <p>First and foremost, the fastcodeml guys didn't replace codeml via refactorising all the functionality of codeml, they refactorised one particular calculation and hence the confusion. fastcodeml isn't a particularly name helpful in truth, because it is not a faster version of all the functionality codeml, its just one of the calculations.</p>
  <p>In the authors defence they (notably) improved the runtime of the most intensive calculation in codeml and thats their point - its proof of concept.</p>
  <p>Thus, basically no fastcodeml can not be used in this context. fastcodeml runs the branch-site model of codeml only.</p>
  <p>What the OP describes isn't how the branch-sites model works, they are describing the branch model.</p>
  <p>The branch-site null model sets dN/dS to 1, and the LRT compares dN/dS likelihood between the designated branch(es) between dN/dS fixed to neutral against allowing dN/dS to be any value. Thus it's measuring whether the branch (branches) deviate from neutrality. What the OP describes via, model 0 one rate for the tree versus model 2 meaning two or more rates for the tree (basically two rates) and that is a different analysis and it is called a branch model.</p>
  <hr />
  <p>If fastcodeml can be shoehorned to perform sites and branch-models that would be good to know.</p>
  <hr />
  <p>There is an issue about 'tip selection' but the key answer concerns the basic difference between codeml and fastcodeml.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-05-15T16:38:00.643Z
Answers.LastActivityDate: 2023-05-15T17:00:57.780Z
Answers.LastEditDate: 2023-05-15T17:00:57.780Z
Answers.UserDisplayName: M__
Body: <p>I am using positive selection analysis for each leaves in a phylogenetic tree.</p>
  <p>In the routine calculation via <code>codeml</code>, I will be running model zero for all leaves and then model 2 for each leaves as foreground (marking leaves as #1 in phylogenetic tree), then calculate selection using a likelihood ratio test.</p>
  <p>Is there a method for using <a href="https://gitlab.sib.swiss/phylo/fastcodeml" rel="nofollow noreferrer"><code>FastCodeML</code></a> for each leaves as foreground instead of the branch?</p>
  
Tags: <phylogenetics><phylogeny><positive-selection>
Title: Selection analysis based on each leaves as foreground with FastCodeML
ThreadText: # Selection analysis based on each leaves as foreground with FastCodeML
  
  (Asked by: username_0 on 2021-10-15)
  
  I am using positive selection analysis for each leaves in a phylogenetic tree.
  
  In the routine calculation via `codeml`, I will be running model zero for all leaves and then model 2 for each leaves as foreground (marking leaves as #1 in phylogenetic tree), then calculate selection using a likelihood ratio test.
  
  Is there a method for using [`FastCodeML`](https://gitlab.sib.swiss/phylo/fastcodeml) for each leaves as foreground instead of the branch?
  
  **Tags:** phylogenetics, phylogeny, positive-selection
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2023-05-15. Score: 0
  
  First and foremost, the fastcodeml guys didn't replace codeml via refactorising all the functionality of codeml, they refactorised one particular calculation and hence the confusion. fastcodeml isn't a particularly name helpful in truth, because it is not a faster version of all the functionality codeml, its just one of the calculations.
  
  In the authors defence they (notably) improved the runtime of the most intensive calculation in codeml and thats their point - its proof of concept.
  
  Thus, basically no fastcodeml can not be used in this context. fastcodeml runs the branch-site model of codeml only.
  
  What the OP describes isn't how the branch-sites model works, they are describing the branch model.
  
  The branch-site null model sets dN/dS to 1, and the LRT compares dN/dS likelihood between the designated branch(es) between dN/dS fixed to neutral against allowing dN/dS to be any value. Thus it's measuring whether the branch (branches) deviate from neutrality. What the OP describes via, model 0 one rate for the tree versus model 2 meaning two or more rates for the tree (basically two rates) and that is a different analysis and it is called a branch model.
  
  ---
  
  If fastcodeml can be shoehorned to perform sites and branch-models that would be good to know.
  
  ---
  
  There is an issue about 'tip selection' but the key answer concerns the basic difference between codeml and fastcodeml.
  
  
  ---
  
  