el_settings 
List of inputs of the Exploded Logit model. It shoud contain the following.

alternatives : Named numeric vector. Names of alternatives and their corresponding value in choiceVar .

avail : Named list of numeric vectors or scalars. Availabilities of alternatives, one element per alternative. Names of elements must match those in alternatives . Values can be 0 or 1. These can be scalars or vectors (of length equal to rows in the database). A user can also specify avail=1 to indicate universal availability, or omit the setting completely.

choiceVars : List of numeric vectors. Contain choices for each position of the ranking. The list must be ordered with the best choice first, second best second, etc. It will usually be a list of columns from the database. Use value 1 if a stage does not apply for a given observations (e.g. when some individuals have shorter rankings).

componentName : Character. Name given to model component.

utilities : Named list of deterministic utilities . Utilities of the alternatives. Names of elements must match those in alternatives.

rows : Boolean vector. Consideration of which rows to include. Length equal to the number of observations (nObs), with entries equal to TRUE for rows to include, and FALSE for rows to exclude. Default is "all" , equivalent to rep(TRUE, nObs) .

scales : List of vectors. Scale factors of each Logit model. At least one element should be normalized to 1. If omitted, scale=1 for all positions is assumed.

functionality 
Character. Setting instructing Apollo what processing to apply to the likelihood function. This is in general controlled by the functions that call apollo_probabilities , though the user can also call apollo_probabilities manually with a given functionality for testing/debugging. Possible values are:

"components" : For further processing/debugging, produces likelihood for each model component (if multiple components are present), at the level of individual draws and observations.

"conditionals" : For conditionals, produces likelihood of the full model, at the level of individual interindividual draws.

"estimate" : For model estimation, produces likelihood of the full model, at the level of individual decisionmakers, after averaging across draws.

"gradient" : For model estimation, produces analytical gradients of the likelihood, where possible.

"output" : Prepares output for postestimation reporting.

"prediction" : For model prediction, produces probabilities for individual alternatives and individual model components (if multiple components are present) at the level of an observation, after averaging across draws.

"preprocess" : Prepares likelihood functions for use in estimation.

"raw" : For debugging, produces probabilities of all alternatives and individual model components at the level of an observation, at the level of individual draws.

"report" : Prepares output summarising model and choiceset structure.

"shares_LL" : Produces overall model likelihood with constants only.

"validate" : Validates model specification, produces likelihood of the full model, at the level of individual decisionmakers, after averaging across draws.

"zero_LL" : Produces overall model likelihood with all parameters at zero.
