
import("devtools")
import("ggplot2")
import("scales")
import("Rcpp")
import("kableExtra")
import("methods")

importFrom("stats", "cov2cor","D","complete.cases" )
importFrom("Deriv", "Simplify" )
importFrom("methods",  "signature", "as", "is","show", "new","slot", "validObject" )
importFrom("pracma", "linspace","cond","pinv")
importFrom("deSolve", "ode","cleanEventTimes")
importFrom("Matrix", "bdiag")
importFrom("stringr", "str_replace_all","str_remove")
importFrom("stats", "rcauchy", "rnorm", "runif")
importFrom("utils", "combn", "tail")

export(fisher.simplex)
export(fun.amoeba)
export(FedorovWynnAlgorithm_Rcpp)
export(getPlotOptions)
export(LibraryOfPKModels)
export(LibraryOfPDModels)

export(Administration)
export(AdministrationConstraints)
export(Arm)
export(BayesianFim)
export(Combined1)
export(Constant)
export(Design)
export(Distribution)
export(Evaluation)
export(FedorovWynnAlgorithm)
export(Fim)
export(IndividualFim)
export(LibraryOfModels)
export(LibraryOfPKPDModels)
export(LogNormal)
export(Model)
export(ModelAnalytic)
export(ModelAnalyticBolus)
export(ModelAnalyticBolusSteadyState)
export(ModelAnalyticInfusion)
export(ModelAnalyticInfusionSteadyState)
export(ModelAnalyticSteadyState)
export(ModelBolus)
export(ModelError)
export(ModelInfusion)
export(ModelODE)
export(ModelODEBolus)
export(ModelODEDoseInEquations)
export(ModelODEDoseNotInEquations)
export(ModelODEInfusion)
export(ModelODEInfusionDoseInEquations)
export(ModelParameter)
export(MultiplicativeAlgorithm)
export(Normal)
export(Optimization)
export(OptimizationAlgorithm)
export(PFIMProject)
export(PGBOAlgorithm)
export(PSOAlgorithm)
export(PlotEvaluation)
export(PopulationFim)
export(Proportional)
export(SamplingTimeConstraints)
export(SamplingTimes)
export(SimplexAlgorithm)

exportMethods(EvaluateArm)
exportMethods(EvaluateDesign)
exportMethods(EvaluateErrorModelDerivatives)
exportMethods(EvaluateFisherMatrix)
exportMethods(EvaluateModel)
exportMethods(EvaluateVarianceFIM)
exportMethods(EvaluateVarianceModel)
exportMethods(Report)
exportMethods(addModel)
exportMethods(addModels)
exportMethods(checkSamplingTimeConstraintsForContinuousOptimization)
exportMethods(checkValiditySamplingConstraint)
exportMethods(convertPKModelAnalyticToPKModelODE)
exportMethods(defineModel)
exportMethods(defineModelFromLibraryOfModels)
exportMethods(defineModelType)
exportMethods(defineModelUserDefined)
exportMethods(definePKModel)
exportMethods(definePKPDModel)
exportMethods(generateFimsFromConstraints)
exportMethods(generateReportEvaluation)
exportMethods(generateReportOptimization)
exportMethods(generateSamplingsFromSamplingConstraints)
exportMethods(generateTables)
exportMethods(getAdjustedGradient)
exportMethods(getAdministration)
exportMethods(getAdministrationConstraint)
exportMethods(getAdministrations)
exportMethods(getAdministrationsConstraints)
exportMethods(getArms)
exportMethods(getColumnAndParametersNamesFIM)
exportMethods(getColumnAndParametersNamesFIMInLatex)
exportMethods(getConditionNumberFixedEffects)
exportMethods(getConditionNumberVarianceEffects)
exportMethods(getContent)
exportMethods(getCorrelationMatrix)
exportMethods(getDataFrameResults)
exportMethods(getDcriterion)
exportMethods(getDelta)
exportMethods(getDerivatives)
exportMethods(getDescription)
exportMethods(getDesigns)
exportMethods(getDeterminant)
exportMethods(getDistribution)
exportMethods(getDose)
exportMethods(getEigenValues)
exportMethods(getElementaryProtocols)
exportMethods(getEquation)
exportMethods(getEquations)
exportMethods(getEquationsAfterInfusion)
exportMethods(getEquationsDuringInfusion)
exportMethods(getEvaluationFIMResults)
exportMethods(getEvaluationInitialDesignResults)
exportMethods(getFim)
exportMethods(getFisherMatrix)
exportMethods(getFixedEffects)
exportMethods(getFixedMu)
exportMethods(getFixedOmega)
exportMethods(getFixedParameters)
exportMethods(getFixedTimes)
exportMethods(getInitialConditions)
exportMethods(getIterationAndCriteria)
exportMethods(getLambda)
exportMethods(getLibraryPDModels)
exportMethods(getLibraryPKModels)
exportMethods(getMinSampling)
exportMethods(getModel)
exportMethods(getModelEquations)
exportMethods(getModelError)
exportMethods(getModelErrorParametersValues)
exportMethods(getModelFromLibrary)
exportMethods(getModelParameters)
exportMethods(getModelParametersValues)
exportMethods(getMu)
exportMethods(getName)
exportMethods(getNames)
exportMethods(getNumberOfArms)
exportMethods(getNumberOfIterations)
exportMethods(getNumberOfParameters)
exportMethods(getNumberOfTimesByWindows)
exportMethods(getNumberOfsamplingsOptimisable)
exportMethods(getOdeSolverParameters)
exportMethods(getOmega)
exportMethods(getOptimalDesign)
exportMethods(getOptimalWeights)
exportMethods(getOptimizationResults)
exportMethods(getOptimizer)
exportMethods(getOptimizerParameters)
exportMethods(getOutcome)
exportMethods(getOutcomes)
exportMethods(getOutcomesEvaluation)
exportMethods(getOutcomesForEvaluation)
exportMethods(getOutcomesGradient)
exportMethods(getPDModel)
exportMethods(getPKModel)
exportMethods(getPKPDModel)
exportMethods(getParameters)
exportMethods(getProportionsOfSubjects)
exportMethods(getRSE)
exportMethods(getSE)
exportMethods(getSamplingTime)
exportMethods(getSamplingTimeConstraint)
exportMethods(getSamplingTimes)
exportMethods(getSamplingTimesConstraints)
exportMethods(getSamplings)
exportMethods(getSamplingsWindows)
exportMethods(getShrinkage)
exportMethods(getSigmaInter)
exportMethods(getSigmaSlope)
exportMethods(getSize)
exportMethods(getTau)
exportMethods(getTimeDose)
exportMethods(getTinf)
exportMethods(getVarianceEffects)
exportMethods(getcError)
exportMethods(isDoseInEquations)
exportMethods(isModelAnalytic)
exportMethods(isModelBolus)
exportMethods(isModelInfusion)
exportMethods(isModelODE)
exportMethods(isModelSteadyState)
exportMethods(optimize)
exportMethods(parametersForComputingGradient)
exportMethods(plot)
exportMethods(plotOutcomesEvaluation)
exportMethods(plotOutcomesGradient)
exportMethods(plotRSE)
exportMethods(plotSE)
exportMethods(plotShrinkage)
exportMethods(plotWeights)
exportMethods(reportTablesAdministration)
exportMethods(reportTablesDesign)
exportMethods(reportTablesFIM)
exportMethods(reportTablesModelError)
exportMethods(reportTablesModelParameters)
exportMethods(reportTablesPlot)
exportMethods(reportTablesSamplingConstraints)
exportMethods(resizeFisherMatrix)
exportMethods(run)
exportMethods(setAdministrations)
exportMethods(setArm)
exportMethods(setArms)
exportMethods(setContent)
exportMethods(setDerivatives)
exportMethods(setDescription)
exportMethods(setDesigns)
exportMethods(setDistribution)
exportMethods(setDose)
exportMethods(setEquation)
exportMethods(setEquations)
exportMethods(setEquationsAfterInfusion)
exportMethods(setEquationsDuringInfusion)
exportMethods(setEvaluationFIMResults)
exportMethods(setEvaluationInitialDesignResults)
exportMethods(setFim)
exportMethods(setFimTypeToString)
exportMethods(setFisherMatrix)
exportMethods(setFixedEffects)
exportMethods(setFixedMu)
exportMethods(setFixedOmega)
exportMethods(setInitialConditions)
exportMethods(setIterationAndCriteria)
exportMethods(setModel)
exportMethods(setModelError)
exportMethods(setModelFromLibrary)
exportMethods(setMu)
exportMethods(setName)
exportMethods(setNumberOfArms)
exportMethods(setOdeSolverParameters)
exportMethods(setOmega)
exportMethods(setOptimalDesign)
exportMethods(setOptimalWeights)
exportMethods(setOptimizationResults)
exportMethods(setOutcome)
exportMethods(setOutcomes)
exportMethods(setOutcomesEvaluation)
exportMethods(setOutcomesForEvaluation)
exportMethods(setOutcomesGradient)
exportMethods(setParameters)
exportMethods(setSamplingConstraintForOptimization)
exportMethods(setSamplingTime)
exportMethods(setSamplingTimes)
exportMethods(setSamplingTimesConstraints)
exportMethods(setSamplings)
exportMethods(setShrinkage)
exportMethods(setSigmaInter)
exportMethods(setSigmaSlope)
exportMethods(setSize)
exportMethods(setTau)
exportMethods(setTimeDose)
exportMethods(setTinf)
exportMethods(setVarianceEffects)
exportMethods(setcError)
exportMethods(show)
