feat: add missing KF6 framework recipes
This commit is contained in:
+406
@@ -0,0 +1,406 @@
|
||||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
<title>highlight.stan</title>
|
||||
<meta name="generator" content="KF5::SyntaxHighlighting - Definition (Stan) - Theme (Breeze Dark)"/>
|
||||
</head><body style="background-color:#232629;color:#cfcfc2"><pre>
|
||||
<span style="color:#7a7c7d">/* Stan Highlighting Example</span>
|
||||
|
||||
<span style="color:#7a7c7d"> This file contains a syntatically correct but nonsensical Stan program that</span>
|
||||
<span style="color:#7a7c7d"> includes almost every feature of the language needed to validate syntax</span>
|
||||
<span style="color:#7a7c7d"> highlighters. It will compile (as of Stan 2.17.1), but it does nothing</span>
|
||||
<span style="color:#7a7c7d"> useful.</span>
|
||||
|
||||
<span style="color:#7a7c7d"> Author: Jeffrey Arnold <jeffrey.anold@gmail.com></span>
|
||||
<span style="color:#7a7c7d"> Copyright: Jeffrey Arnold (2018)</span>
|
||||
<span style="color:#7a7c7d"> License: MIT</span>
|
||||
|
||||
<span style="color:#7a7c7d">*/</span>
|
||||
<span style="color:#7a7c7d">// line comment</span>
|
||||
<span style="color:#7a7c7d"># deprecated line comment</span>
|
||||
<span style="font-weight:bold">functions</span> {
|
||||
<span style="color:#7a7c7d">#include stuff.stan</span>
|
||||
<span style="color:#7a7c7d">#include "morestuff.stan"</span>
|
||||
<span style="color:#7a7c7d">#include 'moststuff.stan'</span>
|
||||
<span style="color:#7a7c7d">#include <evenmorestuff.stan></span>
|
||||
|
||||
<span style="color:#7a7c7d">// declarations</span>
|
||||
<span style="color:#2980b9">void</span> oof(<span style="color:#2980b9">real</span> x);
|
||||
|
||||
<span style="color:#7a7c7d">// definitions</span>
|
||||
<span style="color:#7a7c7d">// return types</span>
|
||||
<span style="color:#2980b9">void</span> oof(<span style="color:#2980b9">real</span> x) {
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"print "</span>, x);
|
||||
}
|
||||
<span style="color:#7a7c7d">/*</span>
|
||||
<span style="color:#7a7c7d"> </span><span style="color:#3f8058">@param</span><span style="color:#7a7c7d"> x A number</span>
|
||||
<span style="color:#7a7c7d"> </span><span style="color:#3f8058">@return</span><span style="color:#7a7c7d"> x + 1</span>
|
||||
<span style="color:#7a7c7d"> */</span>
|
||||
<span style="color:#2980b9">real</span> foo(<span style="color:#2980b9">real</span> x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#2980b9">int</span> bar(<span style="color:#2980b9">int</span> x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#2980b9">vector</span> baz(<span style="color:#2980b9">vector</span> x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#2980b9">row_vector</span> qux(<span style="color:#2980b9">row_vector</span> x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#2980b9">matrix</span> quux(<span style="color:#2980b9">matrix</span> x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#7a7c7d">// numbers of arguments</span>
|
||||
<span style="color:#2980b9">void</span> corge() {
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"no parameters"</span>);
|
||||
}
|
||||
<span style="color:#2980b9">void</span> grault(<span style="color:#2980b9">int</span> a, <span style="color:#2980b9">real</span> b, <span style="color:#2980b9">vector</span> c, <span style="color:#2980b9">row_vector</span> d, <span style="color:#2980b9">matrix</span> f) {
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"many parameters"</span>);
|
||||
}
|
||||
<span style="color:#2980b9">void</span> garply(<span style="color:#2980b9">real</span> a, <span style="color:#2980b9">real</span>[] b, <span style="color:#2980b9">real</span>[,] c, <span style="color:#2980b9">real</span>[,,] d) {
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"array arguments"</span>);
|
||||
}
|
||||
<span style="color:#7a7c7d">// array return types</span>
|
||||
<span style="color:#2980b9">int</span>[] waldo(<span style="color:#2980b9">int</span>[] x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#2980b9">int</span>[,] fred(<span style="color:#2980b9">int</span>[,] x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#2980b9">int</span>[,,] plough(<span style="color:#2980b9">int</span>[,,] x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#7a7c7d">// data only function argument</span>
|
||||
<span style="color:#2980b9">real</span> plugh(<span style="font-weight:bold">data</span> <span style="color:#2980b9">real</span> x) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> x;
|
||||
}
|
||||
<span style="color:#7a7c7d">// ode function</span>
|
||||
<span style="color:#2980b9">real</span>[] ode_func(<span style="color:#2980b9">real</span> a, <span style="color:#2980b9">real</span>[] b, <span style="color:#2980b9">real</span>[] c, <span style="color:#2980b9">real</span>[] d, <span style="color:#2980b9">int</span>[] e) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">return</span> b;
|
||||
}
|
||||
}
|
||||
<span style="font-weight:bold">data</span> {
|
||||
<span style="color:#7a7c7d">// non-int variable types</span>
|
||||
<span style="color:#2980b9">int</span> x_int;
|
||||
<span style="color:#2980b9">real</span> x_real;
|
||||
<span style="color:#2980b9">real</span> y_real;
|
||||
<span style="color:#2980b9">vector</span>[<span style="color:#f67400">1</span>] x_vector;
|
||||
<span style="color:#2980b9">ordered</span>[<span style="color:#f67400">1</span>] x_ordered;
|
||||
<span style="color:#2980b9">positive_ordered</span>[<span style="color:#f67400">1</span>] x_positive_ordered;
|
||||
<span style="color:#2980b9">simplex</span>[<span style="color:#f67400">1</span>] x_simplex;
|
||||
<span style="color:#2980b9">unit_vector</span>[<span style="color:#f67400">1</span>] x_unit_vector;
|
||||
<span style="color:#2980b9">row_vector</span>[<span style="color:#f67400">1</span>] x_row_vector;
|
||||
<span style="color:#2980b9">matrix</span>[<span style="color:#f67400">1</span>, <span style="color:#f67400">1</span>] x_matrix;
|
||||
<span style="color:#2980b9">cholesky_factor_corr</span>[<span style="color:#f67400">2</span>] x_cholesky_factor_corr;
|
||||
<span style="color:#2980b9">cholesky_factor_cov</span>[<span style="color:#f67400">2</span>] x_cholesky_factor_cov;
|
||||
<span style="color:#2980b9">cholesky_factor_cov</span>[<span style="color:#f67400">2</span>, <span style="color:#f67400">3</span>] x_cholesky_factor_cov_2;
|
||||
<span style="color:#2980b9">corr_matrix</span>[<span style="color:#f67400">2</span>] x_corr_matrix;
|
||||
<span style="color:#2980b9">cov_matrix</span>[<span style="color:#f67400">2</span>] x_cov_matrix;
|
||||
|
||||
<span style="color:#7a7c7d">// range constraints</span>
|
||||
<span style="color:#2980b9">real</span><<span style="font-weight:bold">lower</span> = <span style="color:#f67400">0.</span>, <span style="font-weight:bold">upper</span> = <span style="color:#f67400">1.</span>> alpha;
|
||||
<span style="color:#2980b9">real</span><<span style="font-weight:bold">lower</span> = <span style="color:#f67400">0.</span>> bravo;
|
||||
<span style="color:#2980b9">real</span><<span style="font-weight:bold">upper</span> = <span style="color:#f67400">1.</span>> charlie;
|
||||
|
||||
<span style="color:#7a7c7d">// arrays</span>
|
||||
<span style="color:#2980b9">int</span> echo[<span style="color:#f67400">1</span>];
|
||||
<span style="color:#2980b9">int</span> foxtrot[<span style="color:#f67400">1</span>, <span style="color:#f67400">1</span>];
|
||||
<span style="color:#2980b9">int</span> golf[<span style="color:#f67400">1</span>, <span style="color:#f67400">1</span>, <span style="color:#f67400">1</span>];
|
||||
|
||||
<span style="color:#7a7c7d">// identifier with all valid letters</span>
|
||||
<span style="color:#2980b9">real</span> abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789;
|
||||
|
||||
<span style="color:#7a7c7d">// hard pattern</span>
|
||||
<span style="color:#2980b9">real</span><<span style="font-weight:bold">lower</span> = (bravo < charlie), <span style="font-weight:bold">upper</span> = (bravo > charlie)> ranger;
|
||||
|
||||
<span style="color:#7a7c7d">// identifier patterns</span>
|
||||
<span style="color:#2980b9">real</span> a;
|
||||
<span style="color:#2980b9">real</span> a3;
|
||||
<span style="color:#2980b9">real</span> a_3;
|
||||
<span style="color:#2980b9">real</span> Sigma;
|
||||
<span style="color:#2980b9">real</span> my_cpp_style_variable;
|
||||
<span style="color:#2980b9">real</span> myCamelCaseVariable;
|
||||
<span style="color:#2980b9">real</span> abcdefghijklmnojk;
|
||||
<span style="color:#7a7c7d">// names beginning with keywords</span>
|
||||
<span style="color:#2980b9">real</span> iffffff;
|
||||
<span style="color:#2980b9">real</span> whilest;
|
||||
<span style="color:#7a7c7d">// name ending with truncation</span>
|
||||
<span style="color:#2980b9">real</span> fooT;
|
||||
|
||||
<span style="color:#7a7c7d">// new array syntax</span>
|
||||
<span style="color:#2980b9">array</span> [N] <span style="color:#2980b9">real</span> foo_new;
|
||||
}
|
||||
|
||||
<span style="font-weight:bold">transformed data</span> {
|
||||
<span style="color:#7a7c7d">// declaration and assignment</span>
|
||||
<span style="color:#2980b9">int</span> india = <span style="color:#f67400">1</span>;
|
||||
<span style="color:#2980b9">real</span> romeo = <span style="color:#f67400">1.0</span>;
|
||||
<span style="color:#2980b9">row_vector</span>[<span style="color:#f67400">2</span>] victor = [<span style="color:#f67400">1</span>, <span style="color:#f67400">2</span>];
|
||||
<span style="color:#2980b9">matrix</span>[<span style="color:#f67400">2</span>, <span style="color:#f67400">2</span>] mike = [[<span style="color:#f67400">1</span>, <span style="color:#f67400">2</span>], [<span style="color:#f67400">3</span>, <span style="color:#f67400">4</span>]];
|
||||
<span style="color:#2980b9">real</span> sierra[<span style="color:#f67400">2</span>] = {<span style="color:#f67400">1.</span>, <span style="color:#f67400">2.</span>};
|
||||
<span style="color:#2980b9">complex</span> zulu = <span style="color:#f67400">3</span>+<span style="color:#f67400">4.1i</span>;
|
||||
}
|
||||
<span style="font-weight:bold">parameters</span> {
|
||||
<span style="color:#2980b9">real</span> hotel;
|
||||
<span style="color:#2980b9">real</span><<span style="color:#2980b9">offset</span> = <span style="color:#f67400">0.</span>, <span style="color:#2980b9">multiplier</span> = <span style="color:#f67400">1.</span>> alpha;
|
||||
}
|
||||
<span style="font-weight:bold">transformed parameters</span> {
|
||||
<span style="color:#2980b9">real</span> juliette;
|
||||
juliette = hotel * <span style="color:#f67400">2.</span>;
|
||||
}
|
||||
<span style="font-weight:bold">model</span> {
|
||||
<span style="color:#2980b9">real</span> x;
|
||||
<span style="color:#2980b9">int</span> k;
|
||||
<span style="color:#2980b9">vector</span>[<span style="color:#f67400">2</span>] y = [<span style="color:#f67400">1.</span>, <span style="color:#f67400">1.</span>]';
|
||||
<span style="color:#2980b9">matrix</span>[<span style="color:#f67400">2</span>, <span style="color:#f67400">2</span>] A = [[<span style="color:#f67400">1.</span>, <span style="color:#f67400">1.</span>], [<span style="color:#f67400">1.</span>, <span style="color:#f67400">1.</span>]];
|
||||
<span style="color:#2980b9">real</span> odeout[<span style="color:#f67400">2</span>, <span style="color:#f67400">2</span>];
|
||||
<span style="color:#2980b9">real</span> algout[<span style="color:#f67400">2</span>, <span style="color:#f67400">2</span>];
|
||||
|
||||
<span style="color:#7a7c7d">// if else statements</span>
|
||||
<span style="color:#fdbc4b;font-weight:bold">if</span> (x_real < <span style="color:#f67400">0</span>) x = <span style="color:#f67400">0.</span>;
|
||||
|
||||
<span style="color:#fdbc4b;font-weight:bold">if</span> (x_real < <span style="color:#f67400">0</span>) {
|
||||
x = <span style="color:#f67400">0.</span>;
|
||||
}
|
||||
|
||||
<span style="color:#fdbc4b;font-weight:bold">if</span> (x_real < <span style="color:#f67400">0</span>) x = <span style="color:#f67400">0.</span>;
|
||||
<span style="color:#fdbc4b;font-weight:bold">else</span> x = <span style="color:#f67400">1.</span>;
|
||||
|
||||
<span style="color:#fdbc4b;font-weight:bold">if</span> (x_real < <span style="color:#f67400">0</span>) {
|
||||
x = <span style="color:#f67400">0.</span>;
|
||||
} <span style="color:#fdbc4b;font-weight:bold">else</span> {
|
||||
x = <span style="color:#f67400">1.</span>;
|
||||
}
|
||||
|
||||
<span style="color:#fdbc4b;font-weight:bold">if</span> (x_real < <span style="color:#f67400">0</span>) x = <span style="color:#f67400">0.</span>;
|
||||
<span style="color:#fdbc4b;font-weight:bold">else</span> <span style="color:#fdbc4b;font-weight:bold">if</span> (x_real > <span style="color:#f67400">1</span>) x = <span style="color:#f67400">1.</span>;
|
||||
<span style="color:#fdbc4b;font-weight:bold">else</span> x = <span style="color:#f67400">0.5</span>;
|
||||
|
||||
<span style="color:#fdbc4b;font-weight:bold">if</span> (x_real < <span style="color:#f67400">0</span>) {
|
||||
x = <span style="color:#f67400">0.</span>;
|
||||
} <span style="color:#fdbc4b;font-weight:bold">else</span> <span style="color:#fdbc4b;font-weight:bold">if</span> (x_real > <span style="color:#f67400">1</span>) {
|
||||
x = <span style="color:#f67400">1.</span>;
|
||||
} <span style="color:#fdbc4b;font-weight:bold">else</span> {
|
||||
x = <span style="color:#f67400">0.5</span>;
|
||||
}
|
||||
|
||||
<span style="color:#7a7c7d">// for loops</span>
|
||||
<span style="color:#fdbc4b;font-weight:bold">for</span> (i <span style="color:#fdbc4b;font-weight:bold">in</span> <span style="color:#f67400">1</span>:<span style="color:#f67400">5</span>) {
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"i = "</span>, i);
|
||||
}
|
||||
<span style="color:#7a7c7d">// for (j in echo) {</span>
|
||||
<span style="color:#7a7c7d">// print("j = ", j);</span>
|
||||
<span style="color:#7a7c7d">// }</span>
|
||||
<span style="color:#7a7c7d">// while loop</span>
|
||||
<span style="color:#fdbc4b;font-weight:bold">while</span> (<span style="color:#f67400">1</span>) {
|
||||
<span style="color:#fdbc4b;font-weight:bold">break</span>;
|
||||
<span style="color:#fdbc4b;font-weight:bold">continue</span>;
|
||||
}
|
||||
|
||||
<span style="color:#7a7c7d">// reject statement</span>
|
||||
<span style="font-weight:bold">reject</span>(<span style="color:#f44f4f">"reject statment "</span>, x_real);
|
||||
|
||||
<span style="color:#7a7c7d">// print statement</span>
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"print statement "</span>, x_real);
|
||||
<span style="font-weight:bold">print</span>(<span style="color:#f44f4f">"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_~@#$%^&*`'-+={}[].,;: "</span>);
|
||||
|
||||
<span style="color:#7a7c7d">// increment log probability statements;</span>
|
||||
<span style="font-weight:bold">target +=</span> <span style="color:#f67400">1.</span>;
|
||||
|
||||
<span style="color:#7a7c7d">// valid integer literals</span>
|
||||
k = <span style="color:#f67400">0</span>;
|
||||
k = <span style="color:#f67400">1</span>;
|
||||
k = -<span style="color:#f67400">1</span>;
|
||||
k = <span style="color:#f67400">256</span>;
|
||||
k = -<span style="color:#f67400">127098</span>;
|
||||
k = <span style="color:#f67400">007</span>;
|
||||
|
||||
<span style="color:#7a7c7d">// valid real literals</span>
|
||||
x = <span style="color:#f67400">0.0</span>;
|
||||
x = <span style="color:#f67400">1.0</span>;
|
||||
x = <span style="color:#f67400">3.14</span>;
|
||||
x = <span style="color:#f67400">003.14</span>;
|
||||
x = -<span style="color:#f67400">217.9387</span>;
|
||||
x = <span style="color:#f67400">0.123</span>;
|
||||
x = <span style="color:#f67400">.123</span>;
|
||||
x = <span style="color:#f67400">1.</span>;
|
||||
x = -<span style="color:#f67400">0.123</span>;
|
||||
x = -<span style="color:#f67400">.123</span>;
|
||||
x = -<span style="color:#f67400">1.</span>;
|
||||
x = <span style="color:#f67400">12</span>e34;
|
||||
x = <span style="color:#f67400">12</span>E34;
|
||||
x = <span style="color:#f67400">12.e34</span>;
|
||||
x = <span style="color:#f67400">12.E34</span>;
|
||||
x = <span style="color:#f67400">12.0e34</span>;
|
||||
x = <span style="color:#f67400">12.0E34</span>;
|
||||
x = <span style="color:#f67400">.1e34</span>;
|
||||
x = <span style="color:#f67400">.1E34</span>;
|
||||
x = -<span style="color:#f67400">12</span>e34;
|
||||
x = -<span style="color:#f67400">12</span>E34;
|
||||
x = -<span style="color:#f67400">12.e34</span>;
|
||||
x = -<span style="color:#f67400">12.E34</span>;
|
||||
x = -<span style="color:#f67400">12.0e34</span>;
|
||||
x = -<span style="color:#f67400">12.0E34</span>;
|
||||
x = -<span style="color:#f67400">.1e34</span>;
|
||||
x = -<span style="color:#f67400">.1E34</span>;
|
||||
x = <span style="color:#f67400">12</span>e-<span style="color:#f67400">34</span>;
|
||||
x = <span style="color:#f67400">12</span>E-<span style="color:#f67400">34</span>;
|
||||
x = <span style="color:#f67400">12.e-34</span>;
|
||||
x = <span style="color:#f67400">12.E-34</span>;
|
||||
x = <span style="color:#f67400">12.0e-34</span>;
|
||||
x = <span style="color:#f67400">12.0E-34</span>;
|
||||
x = <span style="color:#f67400">.1e-34</span>;
|
||||
x = <span style="color:#f67400">.1E-34</span>;
|
||||
x = -<span style="color:#f67400">12</span>e-<span style="color:#f67400">34</span>;
|
||||
x = -<span style="color:#f67400">12</span>E-<span style="color:#f67400">34</span>;
|
||||
x = -<span style="color:#f67400">12.e-34</span>;
|
||||
x = -<span style="color:#f67400">12.E-34</span>;
|
||||
x = -<span style="color:#f67400">12.0e-34</span>;
|
||||
x = -<span style="color:#f67400">12.0E-34</span>;
|
||||
x = -<span style="color:#f67400">.1e-34</span>;
|
||||
x = -<span style="color:#f67400">.1E-34</span>;
|
||||
x = <span style="color:#f67400">12</span>e+<span style="color:#f67400">34</span>;
|
||||
x = <span style="color:#f67400">12</span>E+<span style="color:#f67400">34</span>;
|
||||
x = <span style="color:#f67400">12.e+34</span>;
|
||||
x = <span style="color:#f67400">12.E+34</span>;
|
||||
x = <span style="color:#f67400">12.0e+34</span>;
|
||||
x = <span style="color:#f67400">12.0E+34</span>;
|
||||
x = <span style="color:#f67400">.1e+34</span>;
|
||||
x = <span style="color:#f67400">.1E+34</span>;
|
||||
x = -<span style="color:#f67400">12</span>e+<span style="color:#f67400">34</span>;
|
||||
x = -<span style="color:#f67400">12</span>E+<span style="color:#f67400">34</span>;
|
||||
x = -<span style="color:#f67400">12.e+34</span>;
|
||||
x = -<span style="color:#f67400">12.E+34</span>;
|
||||
x = -<span style="color:#f67400">12.0e+34</span>;
|
||||
x = -<span style="color:#f67400">12.0E+34</span>;
|
||||
x = -<span style="color:#f67400">.1e+34</span>;
|
||||
x = -<span style="color:#f67400">.1E+34</span>;
|
||||
|
||||
<span style="color:#7a7c7d">// imaginary literals</span>
|
||||
<span style="color:#2980b9">complex</span> z = <span style="color:#f67400">3</span> + <span style="color:#f67400">3i</span>;
|
||||
z = <span style="color:#f67400">2.3i</span>;
|
||||
z = <span style="color:#f67400">3.4e10i</span>;
|
||||
z = <span style="color:#f67400">0i</span>;
|
||||
|
||||
<span style="color:#7a7c7d">// assignment statements</span>
|
||||
x = <span style="color:#f67400">1</span>;
|
||||
x += <span style="color:#f67400">1.</span>;
|
||||
x -= <span style="color:#f67400">1.</span>;
|
||||
x *= <span style="color:#f67400">1.</span>;
|
||||
x /= <span style="color:#f67400">1.</span>;
|
||||
y .*= x_vector;
|
||||
y ./= x_vector;
|
||||
|
||||
<span style="color:#7a7c7d">// operators</span>
|
||||
x = x_real && <span style="color:#f67400">1</span>;
|
||||
x = x_real || <span style="color:#f67400">1</span>;
|
||||
x = x_real < <span style="color:#f67400">1.</span>;
|
||||
x = x_real <= <span style="color:#f67400">1.</span>;
|
||||
x = x_real > <span style="color:#f67400">1.</span>;
|
||||
x = x_real >= <span style="color:#f67400">1.</span>;
|
||||
x = x_real + <span style="color:#f67400">1.</span>;
|
||||
x = x_real - <span style="color:#f67400">1.</span>;
|
||||
x = x_real * <span style="color:#f67400">1.</span>;
|
||||
x = x_real / <span style="color:#f67400">1.</span>;
|
||||
x = x_real ^ <span style="color:#f67400">2.</span>;
|
||||
x = x_real % <span style="color:#f67400">2</span>;
|
||||
x = !x_real;
|
||||
x = +x_real;
|
||||
x = -x_real;
|
||||
x = x_int ? x_real : <span style="color:#f67400">0.</span>;
|
||||
|
||||
y = x_row_vector';
|
||||
y = x_matrix \ x_vector;
|
||||
y = x_vector .* x_vector;
|
||||
y = x_vector ./ x_vector;
|
||||
|
||||
<span style="color:#7a7c7d">// parenthized expression</span>
|
||||
x = (x_real + x_real);
|
||||
|
||||
<span style="color:#7a7c7d">// block statement</span>
|
||||
{
|
||||
<span style="color:#2980b9">real</span> z;
|
||||
z = <span style="color:#f67400">1.</span>;
|
||||
}
|
||||
|
||||
<span style="color:#fdbc4b;font-weight:bold">profile</span>(<span style="color:#f44f4f">"profile-test"</span>) {
|
||||
<span style="color:#2980b9">real</span> z;
|
||||
z = <span style="color:#f67400">1.</span>;
|
||||
}
|
||||
<span style="color:#7a7c7d">// built-in functions</span>
|
||||
x = log(<span style="color:#f67400">1.</span>);
|
||||
x = exp(<span style="color:#f67400">1.</span>);
|
||||
|
||||
<span style="color:#7a7c7d">// non-built-in function</span>
|
||||
x = foo(<span style="color:#f67400">1.</span>);
|
||||
|
||||
<span style="color:#7a7c7d">// constants and nullary functions</span>
|
||||
x = machine_precision();
|
||||
x = pi();
|
||||
x = e();
|
||||
x = sqrt2();
|
||||
x = log2();
|
||||
x = log10();
|
||||
<span style="color:#7a7c7d">// special values</span>
|
||||
x = not_a_number();
|
||||
x = positive_infinity();
|
||||
x = negative_infinity();
|
||||
x = machine_precision();
|
||||
<span style="color:#7a7c7d">// log probability</span>
|
||||
x = target();
|
||||
|
||||
<span style="color:#7a7c7d">// sampling statement</span>
|
||||
x_real ~ normal(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
|
||||
<span style="color:#7a7c7d">// truncation</span>
|
||||
x_real ~ normal(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>) <span style="font-weight:bold">T</span>[-<span style="color:#f67400">1.</span>, <span style="color:#f67400">1.</span>];
|
||||
x_real ~ normal(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>) <span style="font-weight:bold">T</span>[, <span style="color:#f67400">1.</span>];
|
||||
x_real ~ normal(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>) <span style="font-weight:bold">T</span>[-<span style="color:#f67400">1.</span>, ];
|
||||
x_real ~ normal(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>) <span style="font-weight:bold">T</span>[ , ];
|
||||
|
||||
<span style="color:#7a7c7d">// transformation on lhs of sampling</span>
|
||||
log(x_real) ~ normal(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
|
||||
<span style="color:#7a7c7d">// lhs indexes</span>
|
||||
y[<span style="color:#f67400">1</span>] = <span style="color:#f67400">1.</span>;
|
||||
A[<span style="color:#f67400">1</span>, <span style="color:#f67400">2</span>] = <span style="color:#f67400">1.</span>;
|
||||
A[<span style="color:#f67400">1</span>][<span style="color:#f67400">2</span>] = <span style="color:#f67400">1.</span>;
|
||||
|
||||
<span style="color:#7a7c7d">// special functions</span>
|
||||
odeout = <span style="font-weight:bold">integrate_ode</span>(ode_func, {<span style="color:#f67400">1.</span>}, x_real, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">0</span>});
|
||||
odeout = <span style="font-weight:bold">integrate_ode_bdf</span>(ode_func, {<span style="color:#f67400">1.</span>}, x_real, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">0</span>},
|
||||
x_real, x_real, x_int);
|
||||
odeout = <span style="font-weight:bold">integrate_ode_rk45</span>(ode_func, {<span style="color:#f67400">1.</span>}, x_real, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">1.</span>}, {<span style="color:#f67400">0</span>},
|
||||
x_real, x_real, x_int);
|
||||
<span style="color:#7a7c7d">// algout = algebra_solver(algebra_func, x_vector, x_vector, {1.}, {0});</span>
|
||||
|
||||
<span style="color:#7a7c7d">// distribution functions</span>
|
||||
x = normal_lpdf(<span style="color:#f67400">0.5</span> | <span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
x = normal_cdf(<span style="color:#f67400">0.5</span>, <span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
x = normal_lcdf(<span style="color:#f67400">0.5</span> | <span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
x = normal_lccdf(<span style="color:#f67400">0.5</span> | <span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
x = binomial_lpmf(<span style="color:#f67400">1</span> | <span style="color:#f67400">2</span>, <span style="color:#f67400">0.5</span>);
|
||||
|
||||
<span style="color:#7a7c7d">// deprecated features</span>
|
||||
foo <- <span style="color:#f67400">1</span>;
|
||||
increment_log_prob(<span style="color:#f67400">0.0</span>);
|
||||
y_hat = <span style="font-weight:bold">integrate_ode</span>(sho, y0, t0, ts, theta, x_r, x_i);
|
||||
x = get_lp();
|
||||
x = multiply_log(<span style="color:#f67400">1.0</span>, <span style="color:#f67400">1.0</span>);
|
||||
x = binomial_coefficient_log(<span style="color:#f67400">1.0</span>, <span style="color:#f67400">1.0</span>);
|
||||
<span style="color:#7a7c7d">// deprecated distribution functions versions</span>
|
||||
x = normal_log(<span style="color:#f67400">0.5</span>, <span style="color:#f67400">0.0</span>, <span style="color:#f67400">1.0</span>);
|
||||
x = normal_cdf_log(<span style="color:#f67400">0.5</span>, <span style="color:#f67400">0.0</span>, <span style="color:#f67400">1.0</span>);
|
||||
x = normal_ccdf_log(<span style="color:#f67400">0.5</span>, <span style="color:#f67400">0.0</span>, <span style="color:#f67400">1.0</span>);
|
||||
|
||||
}
|
||||
<span style="font-weight:bold">generated quantities</span> {
|
||||
<span style="color:#2980b9">real</span> Y;
|
||||
<span style="color:#7a7c7d">// rng function</span>
|
||||
Y = normal_rng(<span style="color:#f67400">0.</span>, <span style="color:#f67400">1.</span>);
|
||||
|
||||
<span style="color:#2980b9">tuple</span>(<span style="color:#2980b9">real</span>, <span style="color:#2980b9">int</span>) tupl = (<span style="color:#f67400">1.5</span>, <span style="color:#f67400">2</span>);
|
||||
<span style="color:#2980b9">complex_matrix</span> C_mike = mike;
|
||||
}
|
||||
</pre></body></html>
|
||||
Reference in New Issue
Block a user