Changes in MOC 1.0-1
======================

   Essentially changed density.moc(object... to density.moc(x...
   in order to comply to the new corresponding S3 generic of
   R version 2.2.0

Changes in MOC 1.0-0
======================

   The MOC library have now been extensively tested on a lot of real
   and simulated data sets, the results have been compared to other
   mixture software and is known to produce correct reliable results.
   Some critical computations are now done with a C++ external library
   which results in an increase speed between 30% to 80%. The software
   is now considered a full production tool, consequently the version number
   "jumped" to 1.0


Bugs Fixes:
-----------

   The MixtProb variable added by print.moc in the moc object is now
   the correct table. This variable is not used so it doesn't affect
   any results.

   When there were no parameter to estimate (all fixed), moc tried to return an
   undefined value, it now returns the correct computed value.

   Changed conditionals (if) in plot.residuals.moc to get rid of
   useless warning messages.

   Doubled loglik in print.moc have been removed.

   Changed options in parse and deparse codes to suit the new R
   versions (no parse error).


New Features:
-------------

   The expected function can also depends on the pgmix parameters.

   entropyplot.moc has a new argument shade.gr.col

   Two new types of residuals.moc : gradient and mixture.

   Several new functions:

       update.moc	: update a fitted MOC object.
       confint.moc	: parameters confidence intervals.
       profiles.postCI	: profiles patterns confidence intervals.
       loglike.moc	: computes log(like) at specified parameters values.
       npmle.gradient	: computes mixture and non-parametric gradient.
       density.moc	: computes and plot mixture density estimates.

   New Utils rasch.R to help construct Rasch models with MOC.

   Much faster because of the use of a C++ dynamical library.



Changes in MOC 0.8-4
======================

Bugs Fixes:
-----------
   (see the fixes in version 0-8.3)

New Features:
-------------

   The variable ntimes in the moc object list have been changed
   to nvar.

   An attribute "moc.name" have been added to most moc methods that
   return a value. This attribute contains the name of the moc object
   with which the method was applied.

   obsfit.moc now directly returns its value without print and
   invisible. The attributes moc.name, FUN and along are added and
   the list also includes the "Mean Prior Probabilities".
   profilesplot.moc now include an option 'type' which allow to plot
   subject , variables and posterior probabilities profiles.

   A generic method entropy with entropy.default and entropy.moc
   methods that computes the entropy of a set of probabilities have
   been added.

   Plotting generic method entropyplot with entropyplot.moc have been
   added to make an entropy graph.

   Most plotting functions now use a default main title, use main=""
   to prevent printing of a main title.



Changes in MOC 0.8-3
======================

Bugs Fixes:
-----------

   print.moc now reports the weighted mean of the prior mixture probabilities.

   The first check on the validity of the mixture components
   probablilities returned by gmixture now generates a warning instead
   of an error.

New Features:
-------------

   The first and final checks on the sum of the mixture probabilities
   of gmixture are now made within machine precision (|sum-1| >
   .Machine$double.eps^0.5).

   The returned values of moc now includes the posterior probabilities
   in the element post.prob and the method post.moc simply extract
   this value if it exists or computes it as before when it is not
   present in the moc object.

   print.moc now reports the non-null functions names and uses a better
   formatting of the coefficient table.

   The argument group.colors have been added to plot.residuals.moc

   Two new functions have been added in Sweave/moc_sweave.R to create
   latex tables of obsfit.moc values namely TeXObsfitMixPTable.moc and
   TeXObsfitMeanTable.moc.

   The functions to create latex tables in the file
   Sweave/moc_sweave.R now all pass the argument `...` to cat so it is
   possiblle to use file="any connection" and other `cat`
   arguments. An align="default" argument have been added to the
   functions which value is passed to the tabular LaTeX command. 

   The function TeXListTable.moc in Sweave/moc_sweave.R uses
   concatenated tabular environments and seems more usable.



Changes in MOC 0.8-2
======================

Bugs Fixes:
-----------
   
   The "Mean Posterior Mixture Probabilities" reported by print.moc is now
   a weighted mean.

   The documentation for moc.dat does not issue a check warning anymore.
      
   The length of the parameters np1 and np2 of utility function combine.parfun 
   (see Utils/combine.moc.R) can now be longer then 17.

New Features:
-------------

   The functions to create latex tables in the file Sweave/moc_sweave.R now
   also generate the tabular environment.

   The report generation file Sweave/moc.Rnw now include a pair plot of the
   posterior probabilities.


Changes in MOC 0.8-1
======================

Bugs Fixes:
-----------

   The check for mixture probablities summing to 1 was not performed, it is now
   done before and after fitting the model.

   Attributes of the expected function are now preserved.

   Warning "the condition has length > 1" shouldn't appear anymore (I hope):
   the line if (mix == 1) have been changed to if(object$groups==1) in post.moc.



New Features:
-------------

   AIC( ,k="BIC") also output -2*logLik.

   Scale option in plot.moc now uses weighted mean and standard deviation.

   Parameters np1 and np2 of utility function combine.parfun (see Utils/combine.moc.R)
   now expect parameter indexes insted of numbers of parameters.

   Author and e-mail can be set in Sweave (see Sweave/moc.Rnw).



Changes in MOC 0.8
======================

Bugs Fixes:
-----------

   Printing of moc objects without pgmu parameters is now working
   properly.

   The expected function was not assigned internally when returnig
   a matrix.

   Entropy now works with 0 posterior probabilities.

   The observed posterior means were not computed correctly when there
   was missing values in the response variable. The values were divided
   by the total weighted posterior propabilities instead of the total
   over non-missing responses. This is fixed in the moc object and in
   the method obsfit.moc.

   There where some problems when plotting the residuals with a big
   number of groups, there is a new option to resolve this (see New
   Features).


New Features:
-------------

   The functions gmu,gshape,gextra,expected are now list of functions:
   one for each group. It should make coding of groups definition easier.
   It uses less memory, so you can run larger models.

   There are new options:

   - the option check.length allows to bypass the dimension check of
     the returned value of the functions in gextra. This allows using
     densities with more parameters.
   - plot.moc now has the option scale which tells to plot the scaled
     variables, prob.legend ta add a mixture probablity legend and
     group.colors to specify the group colors.
   - plot.residuals.moc has the option groups to specify for which
     mixture groups the plot is requested.

   Entropy is now weighted.

   There are some new functions:

   - profilesplot.moc that nicely plot subject profiles with a mix of
     colors.
   - mix.colors.moc computes subjects color by mixing group colors
     according to posterior probabilities. This function is in the file
     Utils.moc.R which is sourced when we load the library. This file
     also contain the functions glogit and inv.glogit.

   The file combine.moc.R contains some utility functions to combine moc
   models and must be sourced by the user to be available.



