diff --git a/App-1/code_mathematica.R b/App-1/code_mathematica.R index e161ad9..c76d12c 100644 --- a/App-1/code_mathematica.R +++ b/App-1/code_mathematica.R @@ -1,18 +1,23 @@ +fPrismMathematica <- function(input){ + return(prismCodeBlock(text, language = "matlab")) +} + + fMathematicacode <- function(input){ if(input$dist=="Normal"){ if(input$property=="pdf") - fMakeFunction(mainName="PDF[NormalDistribution", + fMakeFunctionPaste(mainName="PDF[NormalDistribution", params=c(input$mu,input$sigma), postfixparams="x", mathematica=TRUE) else if(input$property=="log_pdf") - fMakeFunction(mainName=paste0("-0.5 Log[2 Pi] - Log[", eval(parse(text=input$sigma)), + fMakeFunctionPaste(mainName=paste0("-0.5 Log[2 Pi] - Log[", eval(parse(text=input$sigma)), "] - (x - ", eval(parse(text=input$mu)), ")^2 / (2 ", eval(parse(text=input$sigma)), "^2)"), freeform=TRUE) else if(input$property=="random") - fMakeFunction(mainName="RandomVariate[NormalDistribution", + fMakeFunctionPaste(mainName="RandomVariate[NormalDistribution", params=c(input$mu,input$sigma), postfixparams="n", mathematica=TRUE) diff --git a/App-1/code_matlab.R b/App-1/code_matlab.R index 2970c72..11d9a03 100644 --- a/App-1/code_matlab.R +++ b/App-1/code_matlab.R @@ -1,19 +1,24 @@ +fPrismMatlab <- function(text){ + return(prismCodeBlock(text, language = "matlab")) +} + + fMatlabcode <- function(input){ if(input$dist=="Normal"){ if(input$property=="pdf") - fMakeFunction(mainName="normpdf", + fPrismMatlab(fMakeFunctionPaste(mainName="normpdf", params=c(input$mu,input$sigma), - prefixparams="x") + prefixparams="x")) else if(input$property=="log_pdf") - fMakeFunction(mainName=paste0("-0.5 * log(2 * pi) - log(", eval(parse(text=input$sigma)), + fPrismMatlab(fMakeFunctionPaste(mainName=paste0("-0.5 * log(2 * pi) - log(", eval(parse(text=input$sigma)), ") - (x - ", eval(parse(text=input$mu)), ")^2 / (2 * ", eval(parse(text=input$sigma)), "^2)"), params=c(input$mu,input$sigma), - freeform=TRUE) + freeform=TRUE)) else if(input$property=="random") - fMakeFunction(mainName="normrnd", + fPrismMatlab(fMakeFunctionPaste(mainName="normrnd", params=c(input$mu,input$sigma), - postfixparams="[n, 1]") + postfixparams="[n, 1]")) } } \ No newline at end of file diff --git a/App-1/ui.R b/App-1/ui.R index 21657aa..1238746 100644 --- a/App-1/ui.R +++ b/App-1/ui.R @@ -23,7 +23,9 @@ shinyUI(fluidPage( # Application title titlePanel("Distribution explorer"), prismDependencies, - prismLanguageDependencies(c("sql", "r", "python", "latex")), + prismLanguageDependencies(c("r", "python", "latex", + "matlab", "mathematica", "cpp", + "julia")), # Sidebar with controls to select the random distribution type # and number of observations to generate. Note the use of the