On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
On this page
${missingFields[0]} field.`,
+ message: `The items being returned for this search do not include all the required fields. Please ensure that your index items include the ${missingFields[0]} field or use index-fields in your _quarto.yml file to specify the field names.`,
+ };
+ } else if (missingFields.length > 1) {
+ const missingFieldList = missingFields
+ .map((field) => {
+ return `${field}`;
+ })
+ .join(", ");
+
+ throw {
+ name: `Error: Search index is missing the following fields: ${missingFieldList}.`,
+ message: `The items being returned for this search do not include all the required fields. Please ensure that your index items includes the following fields: ${missingFieldList}, or use index-fields in your _quarto.yml file to specify the field names.`,
+ };
+ }
+ }
+}
+
+let lastQuery = null;
+function showCopyLink(query, options) {
+ const language = options.language;
+ lastQuery = query;
+ // Insert share icon
+ const inputSuffixEl = window.document.body.querySelector(
+ ".aa-Form .aa-InputWrapperSuffix"
+ );
+
+ if (inputSuffixEl) {
+ let copyButtonEl = window.document.body.querySelector(
+ ".aa-Form .aa-InputWrapperSuffix .aa-CopyButton"
+ );
+
+ if (copyButtonEl === null) {
+ copyButtonEl = window.document.createElement("button");
+ copyButtonEl.setAttribute("class", "aa-CopyButton");
+ copyButtonEl.setAttribute("type", "button");
+ copyButtonEl.setAttribute("title", language["search-copy-link-title"]);
+ copyButtonEl.onmousedown = (e) => {
+ e.preventDefault();
+ e.stopPropagation();
+ };
+
+ const linkIcon = "bi-clipboard";
+ const checkIcon = "bi-check2";
+
+ const shareIconEl = window.document.createElement("i");
+ shareIconEl.setAttribute("class", `bi ${linkIcon}`);
+ copyButtonEl.appendChild(shareIconEl);
+ inputSuffixEl.prepend(copyButtonEl);
+
+ const clipboard = new window.ClipboardJS(".aa-CopyButton", {
+ text: function (_trigger) {
+ const copyUrl = new URL(window.location);
+ copyUrl.searchParams.set(kQueryArg, lastQuery);
+ copyUrl.searchParams.set(kResultsArg, "1");
+ return copyUrl.toString();
+ },
+ });
+ clipboard.on("success", function (e) {
+ // Focus the input
+
+ // button target
+ const button = e.trigger;
+ const icon = button.querySelector("i.bi");
+
+ // flash "checked"
+ icon.classList.add(checkIcon);
+ icon.classList.remove(linkIcon);
+ setTimeout(function () {
+ icon.classList.remove(checkIcon);
+ icon.classList.add(linkIcon);
+ }, 1000);
+ });
+ }
+
+ // If there is a query, show the link icon
+ if (copyButtonEl) {
+ if (lastQuery && options["copy-button"]) {
+ copyButtonEl.style.display = "flex";
+ } else {
+ copyButtonEl.style.display = "none";
+ }
+ }
+ }
+}
+
+/* Search Index Handling */
+// create the index
+var fuseIndex = undefined;
+var shownWarning = false;
+
+// fuse index options
+const kFuseIndexOptions = {
+ keys: [
+ { name: "title", weight: 20 },
+ { name: "section", weight: 20 },
+ { name: "text", weight: 10 },
+ ],
+ ignoreLocation: true,
+ threshold: 0.1,
+};
+
+async function readSearchData() {
+ // Initialize the search index on demand
+ if (fuseIndex === undefined) {
+ if (window.location.protocol === "file:" && !shownWarning) {
+ window.alert(
+ "Search requires JavaScript features disabled when running in file://... URLs. In order to use search, please run this document in a web server."
+ );
+ shownWarning = true;
+ return;
+ }
+ const fuse = new window.Fuse([], kFuseIndexOptions);
+
+ // fetch the main search.json
+ const response = await fetch(offsetURL("search.json"));
+ if (response.status == 200) {
+ return response.json().then(function (searchDocs) {
+ searchDocs.forEach(function (searchDoc) {
+ fuse.add(searchDoc);
+ });
+ fuseIndex = fuse;
+ return fuseIndex;
+ });
+ } else {
+ return Promise.reject(
+ new Error(
+ "Unexpected status from search index request: " + response.status
+ )
+ );
+ }
+ }
+
+ return fuseIndex;
+}
+
+function inputElement() {
+ return window.document.body.querySelector(".aa-Form .aa-Input");
+}
+
+function focusSearchInput() {
+ setTimeout(() => {
+ const inputEl = inputElement();
+ if (inputEl) {
+ inputEl.focus();
+ }
+ }, 50);
+}
+
+/* Panels */
+const kItemTypeDoc = "document";
+const kItemTypeMore = "document-more";
+const kItemTypeItem = "document-item";
+const kItemTypeError = "error";
+
+function renderItem(
+ item,
+ createElement,
+ state,
+ setActiveItemId,
+ setContext,
+ refresh,
+ quartoSearchOptions
+) {
+ switch (item.type) {
+ case kItemTypeDoc:
+ return createDocumentCard(
+ createElement,
+ "file-richtext",
+ item.title,
+ item.section,
+ item.text,
+ item.href,
+ item.crumbs,
+ quartoSearchOptions
+ );
+ case kItemTypeMore:
+ return createMoreCard(
+ createElement,
+ item,
+ state,
+ setActiveItemId,
+ setContext,
+ refresh
+ );
+ case kItemTypeItem:
+ return createSectionCard(
+ createElement,
+ item.section,
+ item.text,
+ item.href
+ );
+ case kItemTypeError:
+ return createErrorCard(createElement, item.title, item.text);
+ default:
+ return undefined;
+ }
+}
+
+function createDocumentCard(
+ createElement,
+ icon,
+ title,
+ section,
+ text,
+ href,
+ crumbs,
+ quartoSearchOptions
+) {
+ const iconEl = createElement("i", {
+ class: `bi bi-${icon} search-result-icon`,
+ });
+ const titleEl = createElement("p", { class: "search-result-title" }, title);
+ const titleContents = [iconEl, titleEl];
+ const showParent = quartoSearchOptions["show-item-context"];
+ if (crumbs && showParent) {
+ let crumbsOut = undefined;
+ const crumbClz = ["search-result-crumbs"];
+ if (showParent === "root") {
+ crumbsOut = crumbs.length > 1 ? crumbs[0] : undefined;
+ } else if (showParent === "parent") {
+ crumbsOut = crumbs.length > 1 ? crumbs[crumbs.length - 2] : undefined;
+ } else {
+ crumbsOut = crumbs.length > 1 ? crumbs.join(" > ") : undefined;
+ crumbClz.push("search-result-crumbs-wrap");
+ }
+
+ const crumbEl = createElement(
+ "p",
+ { class: crumbClz.join(" ") },
+ crumbsOut
+ );
+ titleContents.push(crumbEl);
+ }
+
+ const titleContainerEl = createElement(
+ "div",
+ { class: "search-result-title-container" },
+ titleContents
+ );
+
+ const textEls = [];
+ if (section) {
+ const sectionEl = createElement(
+ "p",
+ { class: "search-result-section" },
+ section
+ );
+ textEls.push(sectionEl);
+ }
+ const descEl = createElement("p", {
+ class: "search-result-text",
+ dangerouslySetInnerHTML: {
+ __html: text,
+ },
+ });
+ textEls.push(descEl);
+
+ const textContainerEl = createElement(
+ "div",
+ { class: "search-result-text-container" },
+ textEls
+ );
+
+ const containerEl = createElement(
+ "div",
+ {
+ class: "search-result-container",
+ },
+ [titleContainerEl, textContainerEl]
+ );
+
+ const linkEl = createElement(
+ "a",
+ {
+ href: offsetURL(href),
+ class: "search-result-link",
+ },
+ containerEl
+ );
+
+ const classes = ["search-result-doc", "search-item"];
+ if (!section) {
+ classes.push("document-selectable");
+ }
+
+ return createElement(
+ "div",
+ {
+ class: classes.join(" "),
+ },
+ linkEl
+ );
+}
+
+function createMoreCard(
+ createElement,
+ item,
+ state,
+ setActiveItemId,
+ setContext,
+ refresh
+) {
+ const moreCardEl = createElement(
+ "div",
+ {
+ class: "search-result-more search-item",
+ onClick: (e) => {
+ // Handle expanding the sections by adding the expanded
+ // section to the list of expanded sections
+ toggleExpanded(item, state, setContext, setActiveItemId, refresh);
+ e.stopPropagation();
+ },
+ },
+ item.title
+ );
+
+ return moreCardEl;
+}
+
+function toggleExpanded(item, state, setContext, setActiveItemId, refresh) {
+ const expanded = state.context.expanded || [];
+ if (expanded.includes(item.target)) {
+ setContext({
+ expanded: expanded.filter((target) => target !== item.target),
+ });
+ } else {
+ setContext({ expanded: [...expanded, item.target] });
+ }
+
+ refresh();
+ setActiveItemId(item.__autocomplete_id);
+}
+
+function createSectionCard(createElement, section, text, href) {
+ const sectionEl = createSection(createElement, section, text, href);
+ return createElement(
+ "div",
+ {
+ class: "search-result-doc-section search-item",
+ },
+ sectionEl
+ );
+}
+
+function createSection(createElement, title, text, href) {
+ const descEl = createElement("p", {
+ class: "search-result-text",
+ dangerouslySetInnerHTML: {
+ __html: text,
+ },
+ });
+
+ const titleEl = createElement("p", { class: "search-result-section" }, title);
+ const linkEl = createElement(
+ "a",
+ {
+ href: offsetURL(href),
+ class: "search-result-link",
+ },
+ [titleEl, descEl]
+ );
+ return linkEl;
+}
+
+function createErrorCard(createElement, title, text) {
+ const descEl = createElement("p", {
+ class: "search-error-text",
+ dangerouslySetInnerHTML: {
+ __html: text,
+ },
+ });
+
+ const titleEl = createElement("p", {
+ class: "search-error-title",
+ dangerouslySetInnerHTML: {
+ __html: ` ${title}`,
+ },
+ });
+ const errorEl = createElement("div", { class: "search-error" }, [
+ titleEl,
+ descEl,
+ ]);
+ return errorEl;
+}
+
+function positionPanel(pos) {
+ const panelEl = window.document.querySelector(
+ "#quarto-search-results .aa-Panel"
+ );
+ const inputEl = window.document.querySelector(
+ "#quarto-search .aa-Autocomplete"
+ );
+
+ if (panelEl && inputEl) {
+ panelEl.style.top = `${Math.round(panelEl.offsetTop)}px`;
+ if (pos === "start") {
+ panelEl.style.left = `${Math.round(inputEl.left)}px`;
+ } else {
+ panelEl.style.right = `${Math.round(inputEl.offsetRight)}px`;
+ }
+ }
+}
+
+/* Highlighting */
+// highlighting functions
+function highlightMatch(query, text) {
+ if (text) {
+ const start = text.toLowerCase().indexOf(query.toLowerCase());
+ if (start !== -1) {
+ const startMark = "";
+ const endMark = "";
+
+ const end = start + query.length;
+ text =
+ text.slice(0, start) +
+ startMark +
+ text.slice(start, end) +
+ endMark +
+ text.slice(end);
+ const startInfo = clipStart(text, start);
+ const endInfo = clipEnd(
+ text,
+ startInfo.position + startMark.length + endMark.length
+ );
+ text =
+ startInfo.prefix +
+ text.slice(startInfo.position, endInfo.position) +
+ endInfo.suffix;
+
+ return text;
+ } else {
+ return text;
+ }
+ } else {
+ return text;
+ }
+}
+
+function clipStart(text, pos) {
+ const clipStart = pos - 50;
+ if (clipStart < 0) {
+ // This will just return the start of the string
+ return {
+ position: 0,
+ prefix: "",
+ };
+ } else {
+ // We're clipping before the start of the string, walk backwards to the first space.
+ const spacePos = findSpace(text, pos, -1);
+ return {
+ position: spacePos.position,
+ prefix: "",
+ };
+ }
+}
+
+function clipEnd(text, pos) {
+ const clipEnd = pos + 200;
+ if (clipEnd > text.length) {
+ return {
+ position: text.length,
+ suffix: "",
+ };
+ } else {
+ const spacePos = findSpace(text, clipEnd, 1);
+ return {
+ position: spacePos.position,
+ suffix: spacePos.clipped ? "…" : "",
+ };
+ }
+}
+
+function findSpace(text, start, step) {
+ let stepPos = start;
+ while (stepPos > -1 && stepPos < text.length) {
+ const char = text[stepPos];
+ if (char === " " || char === "," || char === ":") {
+ return {
+ position: step === 1 ? stepPos : stepPos - step,
+ clipped: stepPos > 1 && stepPos < text.length,
+ };
+ }
+ stepPos = stepPos + step;
+ }
+
+ return {
+ position: stepPos - step,
+ clipped: false,
+ };
+}
+
+// removes highlighting as implemented by the mark tag
+function clearHighlight(searchterm, el) {
+ const childNodes = el.childNodes;
+ for (let i = childNodes.length - 1; i >= 0; i--) {
+ const node = childNodes[i];
+ if (node.nodeType === Node.ELEMENT_NODE) {
+ if (
+ node.tagName === "MARK" &&
+ node.innerText.toLowerCase() === searchterm.toLowerCase()
+ ) {
+ el.replaceChild(document.createTextNode(node.innerText), node);
+ } else {
+ clearHighlight(searchterm, node);
+ }
+ }
+ }
+}
+
+function escapeRegExp(string) {
+ return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string
+}
+
+// highlight matches
+function highlight(term, el) {
+ const termRegex = new RegExp(term, "ig");
+ const childNodes = el.childNodes;
+
+ // walk back to front avoid mutating elements in front of us
+ for (let i = childNodes.length - 1; i >= 0; i--) {
+ const node = childNodes[i];
+
+ if (node.nodeType === Node.TEXT_NODE) {
+ // Search text nodes for text to highlight
+ const text = node.nodeValue;
+
+ let startIndex = 0;
+ let matchIndex = text.search(termRegex);
+ if (matchIndex > -1) {
+ const markFragment = document.createDocumentFragment();
+ while (matchIndex > -1) {
+ const prefix = text.slice(startIndex, matchIndex);
+ markFragment.appendChild(document.createTextNode(prefix));
+
+ const mark = document.createElement("mark");
+ mark.appendChild(
+ document.createTextNode(
+ text.slice(matchIndex, matchIndex + term.length)
+ )
+ );
+ markFragment.appendChild(mark);
+
+ startIndex = matchIndex + term.length;
+ matchIndex = text.slice(startIndex).search(new RegExp(term, "ig"));
+ if (matchIndex > -1) {
+ matchIndex = startIndex + matchIndex;
+ }
+ }
+ if (startIndex < text.length) {
+ markFragment.appendChild(
+ document.createTextNode(text.slice(startIndex, text.length))
+ );
+ }
+
+ el.replaceChild(markFragment, node);
+ }
+ } else if (node.nodeType === Node.ELEMENT_NODE) {
+ // recurse through elements
+ highlight(term, node);
+ }
+ }
+}
+
+/* Link Handling */
+// get the offset from this page for a given site root relative url
+function offsetURL(url) {
+ var offset = getMeta("quarto:offset");
+ return offset ? offset + url : url;
+}
+
+// read a meta tag value
+function getMeta(metaName) {
+ var metas = window.document.getElementsByTagName("meta");
+ for (let i = 0; i < metas.length; i++) {
+ if (metas[i].getAttribute("name") === metaName) {
+ return metas[i].getAttribute("content");
+ }
+ }
+ return "";
+}
+
+function algoliaSearch(query, limit, algoliaOptions) {
+ const { getAlgoliaResults } = window["@algolia/autocomplete-preset-algolia"];
+
+ const applicationId = algoliaOptions["application-id"];
+ const searchOnlyApiKey = algoliaOptions["search-only-api-key"];
+ const indexName = algoliaOptions["index-name"];
+ const indexFields = algoliaOptions["index-fields"];
+ const searchClient = window.algoliasearch(applicationId, searchOnlyApiKey);
+ const searchParams = algoliaOptions["params"];
+ const searchAnalytics = !!algoliaOptions["analytics-events"];
+
+ return getAlgoliaResults({
+ searchClient,
+ queries: [
+ {
+ indexName: indexName,
+ query,
+ params: {
+ hitsPerPage: limit,
+ clickAnalytics: searchAnalytics,
+ ...searchParams,
+ },
+ },
+ ],
+ transformResponse: (response) => {
+ if (!indexFields) {
+ return response.hits.map((hit) => {
+ return hit.map((item) => {
+ return {
+ ...item,
+ text: highlightMatch(query, item.text),
+ };
+ });
+ });
+ } else {
+ const remappedHits = response.hits.map((hit) => {
+ return hit.map((item) => {
+ const newItem = { ...item };
+ ["href", "section", "title", "text", "crumbs"].forEach(
+ (keyName) => {
+ const mappedName = indexFields[keyName];
+ if (
+ mappedName &&
+ item[mappedName] !== undefined &&
+ mappedName !== keyName
+ ) {
+ newItem[keyName] = item[mappedName];
+ delete newItem[mappedName];
+ }
+ }
+ );
+ newItem.text = highlightMatch(query, newItem.text);
+ return newItem;
+ });
+ });
+ return remappedHits;
+ }
+ },
+ });
+}
+
+let subSearchTerm = undefined;
+let subSearchFuse = undefined;
+const kFuseMaxWait = 125;
+
+async function fuseSearch(query, fuse, fuseOptions) {
+ let index = fuse;
+ // Fuse.js using the Bitap algorithm for text matching which runs in
+ // O(nm) time (no matter the structure of the text). In our case this
+ // means that long search terms mixed with large index gets very slow
+ //
+ // This injects a subIndex that will be used once the terms get long enough
+ // Usually making this subindex is cheap since there will typically be
+ // a subset of results matching the existing query
+ if (subSearchFuse !== undefined && query.startsWith(subSearchTerm)) {
+ // Use the existing subSearchFuse
+ index = subSearchFuse;
+ } else if (subSearchFuse !== undefined) {
+ // The term changed, discard the existing fuse
+ subSearchFuse = undefined;
+ subSearchTerm = undefined;
+ }
+
+ // Search using the active fuse
+ const then = performance.now();
+ const resultsRaw = await index.search(query, fuseOptions);
+ const now = performance.now();
+
+ const results = resultsRaw.map((result) => {
+ const addParam = (url, name, value) => {
+ const anchorParts = url.split("#");
+ const baseUrl = anchorParts[0];
+ const sep = baseUrl.search("\\?") > 0 ? "&" : "?";
+ anchorParts[0] = baseUrl + sep + name + "=" + value;
+ return anchorParts.join("#");
+ };
+
+ return {
+ title: result.item.title,
+ section: result.item.section,
+ href: addParam(result.item.href, kQueryArg, query),
+ text: highlightMatch(query, result.item.text),
+ crumbs: result.item.crumbs,
+ };
+ });
+
+ // If we don't have a subfuse and the query is long enough, go ahead
+ // and create a subfuse to use for subsequent queries
+ if (
+ now - then > kFuseMaxWait &&
+ subSearchFuse === undefined &&
+ resultsRaw.length < fuseOptions.limit
+ ) {
+ subSearchTerm = query;
+ subSearchFuse = new window.Fuse([], kFuseIndexOptions);
+ resultsRaw.forEach((rr) => {
+ subSearchFuse.add(rr.item);
+ });
+ }
+ return results;
+}
diff --git a/docs/2_39/stan-users-guide-2_39.pdf b/docs/2_39/stan-users-guide-2_39.pdf
new file mode 100644
index 000000000..011fadac0
Binary files /dev/null and b/docs/2_39/stan-users-guide-2_39.pdf differ
diff --git a/docs/2_39/stan-users-guide/algebraic-equations.html b/docs/2_39/stan-users-guide/algebraic-equations.html
new file mode 100644
index 000000000..171d090df
--- /dev/null
+++ b/docs/2_39/stan-users-guide/algebraic-equations.html
@@ -0,0 +1,1342 @@
+
+
+
+
+
+
+
+
+
+Page Not Found
}); + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/cmdstan-guide/bib.html b/docs/cmdstan-guide/bib.html index cda8b7cf5..5bed838fb 100644 --- a/docs/cmdstan-guide/bib.html +++ b/docs/cmdstan-guide/bib.html @@ -787,8 +787,35 @@Re
});
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/command_line_options.html b/docs/cmdstan-guide/command_line_options.html
index 81addd6f9..e821bbec5 100644
--- a/docs/cmdstan-guide/command_line_options.html
+++ b/docs/cmdstan-guide/command_line_options.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/compiling_stan_programs.html b/docs/cmdstan-guide/compiling_stan_programs.html
index d4b8592ce..2b151827e 100644
--- a/docs/cmdstan-guide/compiling_stan_programs.html
+++ b/docs/cmdstan-guide/compiling_stan_programs.html
@@ -289,7 +289,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/diagnose_config.html b/docs/cmdstan-guide/diagnose_config.html
index 7fb35fc53..e590ceb56 100644
--- a/docs/cmdstan-guide/diagnose_config.html
+++ b/docs/cmdstan-guide/diagnose_config.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/diagnose_utility.html b/docs/cmdstan-guide/diagnose_utility.html
index b23b61ea8..804b2d293 100644
--- a/docs/cmdstan-guide/diagnose_utility.html
+++ b/docs/cmdstan-guide/diagnose_utility.html
@@ -289,7 +289,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/example_model_data.html b/docs/cmdstan-guide/example_model_data.html
index 6e9039a47..7bd1e760e 100644
--- a/docs/cmdstan-guide/example_model_data.html
+++ b/docs/cmdstan-guide/example_model_data.html
@@ -260,7 +260,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/external_code.html b/docs/cmdstan-guide/external_code.html
index 0fd42c59f..591f51b58 100644
--- a/docs/cmdstan-guide/external_code.html
+++ b/docs/cmdstan-guide/external_code.html
@@ -259,7 +259,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/index.html b/docs/cmdstan-guide/index.html
index fe5f177f6..db95069e3 100644
--- a/docs/cmdstan-guide/index.html
+++ b/docs/cmdstan-guide/index.html
@@ -74,7 +74,7 @@
-
+
@@ -225,7 +225,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/installation.html b/docs/cmdstan-guide/installation.html
index 74fa8aa25..abdc6b9c4 100644
--- a/docs/cmdstan-guide/installation.html
+++ b/docs/cmdstan-guide/installation.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/json_apdx.html b/docs/cmdstan-guide/json_apdx.html
index 5b2b06ab7..f958afc7a 100644
--- a/docs/cmdstan-guide/json_apdx.html
+++ b/docs/cmdstan-guide/json_apdx.html
@@ -289,7 +289,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/laplace_sample_config.html b/docs/cmdstan-guide/laplace_sample_config.html
index 6d639198d..65f2b4133 100644
--- a/docs/cmdstan-guide/laplace_sample_config.html
+++ b/docs/cmdstan-guide/laplace_sample_config.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/log_prob_config.html b/docs/cmdstan-guide/log_prob_config.html
index 01ea7fdcc..b60d63e64 100644
--- a/docs/cmdstan-guide/log_prob_config.html
+++ b/docs/cmdstan-guide/log_prob_config.html
@@ -260,7 +260,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/mcmc_config.html b/docs/cmdstan-guide/mcmc_config.html
index dd4f21874..d418b1d8a 100644
--- a/docs/cmdstan-guide/mcmc_config.html
+++ b/docs/cmdstan-guide/mcmc_config.html
@@ -275,7 +275,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/optimize_config.html b/docs/cmdstan-guide/optimize_config.html
index a16b09626..56a348a61 100644
--- a/docs/cmdstan-guide/optimize_config.html
+++ b/docs/cmdstan-guide/optimize_config.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/parallelization.html b/docs/cmdstan-guide/parallelization.html
index ba2d09864..a6c4315fc 100644
--- a/docs/cmdstan-guide/parallelization.html
+++ b/docs/cmdstan-guide/parallelization.html
@@ -226,7 +226,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/pathfinder_config.html b/docs/cmdstan-guide/pathfinder_config.html
index 247e91e8b..3ad17a27a 100644
--- a/docs/cmdstan-guide/pathfinder_config.html
+++ b/docs/cmdstan-guide/pathfinder_config.html
@@ -275,7 +275,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/print.html b/docs/cmdstan-guide/print.html
index 1a33ecfea..38a6da455 100644
--- a/docs/cmdstan-guide/print.html
+++ b/docs/cmdstan-guide/print.html
@@ -226,7 +226,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/rdump_apdx.html b/docs/cmdstan-guide/rdump_apdx.html
index fd5461561..aea8c2afe 100644
--- a/docs/cmdstan-guide/rdump_apdx.html
+++ b/docs/cmdstan-guide/rdump_apdx.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/stan_csv_apdx.html b/docs/cmdstan-guide/stan_csv_apdx.html
index f764c5ff8..0c202f475 100644
--- a/docs/cmdstan-guide/stan_csv_apdx.html
+++ b/docs/cmdstan-guide/stan_csv_apdx.html
@@ -255,7 +255,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/stanc.html b/docs/cmdstan-guide/stanc.html
index 7ed425e4a..0a8d4f5ff 100644
--- a/docs/cmdstan-guide/stanc.html
+++ b/docs/cmdstan-guide/stanc.html
@@ -226,7 +226,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/stansummary.html b/docs/cmdstan-guide/stansummary.html
index 4611817d4..e9070745a 100644
--- a/docs/cmdstan-guide/stansummary.html
+++ b/docs/cmdstan-guide/stansummary.html
@@ -275,7 +275,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/cmdstan-guide/variational_config.html b/docs/cmdstan-guide/variational_config.html
index e0ca7d9f0..96e9ed10f 100644
--- a/docs/cmdstan-guide/variational_config.html
+++ b/docs/cmdstan-guide/variational_config.html
@@ -275,7 +275,7 @@
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/array_operations.html b/docs/functions-reference/array_operations.html
index a61e53b3a..dc0b99ca2 100644
--- a/docs/functions-reference/array_operations.html
+++ b/docs/functions-reference/array_operations.html
@@ -288,7 +288,7 @@
+
+
+
+
@@ -1467,8 +1473,35 @@ Reversing functions
Stan Functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/bounded_continuous_distributions.html b/docs/functions-reference/bounded_continuous_distributions.html index f69007d73..eda015ead 100644 --- a/docs/functions-reference/bounded_continuous_distributions.html +++ b/docs/functions-reference/bounded_continuous_distributions.html @@ -255,7 +255,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/bounded_discrete_distributions.html b/docs/functions-reference/bounded_discrete_distributions.html index 5b142af7e..36da4d4c7 100644 --- a/docs/functions-reference/bounded_discrete_distributions.html +++ b/docs/functions-reference/bounded_discrete_distributions.html @@ -255,7 +255,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/circular_distributions.html b/docs/functions-reference/circular_distributions.html index 7e81ff5cb..a2e8bc372 100644 --- a/docs/functions-reference/circular_distributions.html +++ b/docs/functions-reference/circular_distributions.html @@ -289,7 +289,7 @@Numerical stability + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/complex-valued_basic_functions.html b/docs/functions-reference/complex-valued_basic_functions.html index 80143c22c..70ee5f82b 100644 --- a/docs/functions-reference/complex-valued_basic_functions.html +++ b/docs/functions-reference/complex-valued_basic_functions.html @@ -289,7 +289,7 @@
Complex hyperbolic trigonom + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/complex_matrix_operations.html b/docs/functions-reference/complex_matrix_operations.html index 03bb5f7e1..35eaadeb8 100644 --- a/docs/functions-reference/complex_matrix_operations.html +++ b/docs/functions-reference/complex_matrix_operations.html @@ -288,7 +288,7 @@
Rev + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/compound_arithmetic_and_assignment.html b/docs/functions-reference/compound_arithmetic_and_assignment.html index 8d34e2cbc..1b6ce2cfe 100644 --- a/docs/functions-reference/compound_arithmetic_and_assignment.html +++ b/docs/functions-reference/compound_arithmetic_and_assignment.html @@ -226,7 +226,7 @@
- \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/continuous_distributions_on_0_1.html b/docs/functions-reference/continuous_distributions_on_0_1.html index 252cce468..df8c1baeb 100644 --- a/docs/functions-reference/continuous_distributions_on_0_1.html +++ b/docs/functions-reference/continuous_distributions_on_0_1.html @@ -255,7 +255,7 @@
Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/conventions_for_probability_functions.html b/docs/functions-reference/conventions_for_probability_functions.html index 838febad9..892c0238d 100644 --- a/docs/functions-reference/conventions_for_probability_functions.html +++ b/docs/functions-reference/conventions_for_probability_functions.html @@ -289,7 +289,7 @@Return type
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/correlation_matrix_distributions.html b/docs/functions-reference/correlation_matrix_distributions.html index b1b16ce4c..2d9c7541a 100644 --- a/docs/functions-reference/correlation_matrix_distributions.html +++ b/docs/functions-reference/correlation_matrix_distributions.html @@ -309,7 +309,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/covariance_matrix_distributions.html b/docs/functions-reference/covariance_matrix_distributions.html index 77e397def..26470d87e 100644 --- a/docs/functions-reference/covariance_matrix_distributions.html +++ b/docs/functions-reference/covariance_matrix_distributions.html @@ -255,7 +255,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/deprecated_functions.html b/docs/functions-reference/deprecated_functions.html index 2b5f328d0..1a9def5ee 100644 --- a/docs/functions-reference/deprecated_functions.html +++ b/docs/functions-reference/deprecated_functions.html @@ -289,7 +289,7 @@Sizes and para + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/distributions_over_unbounded_vectors.html b/docs/functions-reference/distributions_over_unbounded_vectors.html index dc0eee2d7..aa66e4846 100644 --- a/docs/functions-reference/distributions_over_unbounded_vectors.html +++ b/docs/functions-reference/distributions_over_unbounded_vectors.html @@ -275,7 +275,7 @@
Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/embedded_laplace.html b/docs/functions-reference/embedded_laplace.html new file mode 100644 index 000000000..e3e23970e --- /dev/null +++ b/docs/functions-reference/embedded_laplace.html @@ -0,0 +1,1517 @@ + + + + + + + + + +On this page
G
(matrix A) : matrix (matrix_operations.html)
+
+-
+
- +
(int dimension) : tuple(vector, real, int, int, int, int)(embedded_laplace.html) +
+ - +
(vector theta_init) : tuple(vector, real, int, int, int, int)(embedded_laplace.html) +
+
laplace_latent_bernoulli_logit_rng:
+-
+
- +
laplace_latent_neg_binomial_2_log_rng:
+-
+
- +
laplace_latent_poisson_log_rng:
+-
+
- +
-
+
- +
-
+
- +
laplace_latent_tol_bernoulli_logit_rng:
+-
+
- +
laplace_latent_tol_neg_binomial_2_log_rng:
+-
+
- +
laplace_latent_tol_poisson_log_rng:
+-
+
- +
-
+
- +
laplace_marginal_bernoulli_logit:
+-
+
- +distribution statement (embedded_laplace.html) +
+
laplace_marginal_bernoulli_logit_lpmf:
+-
+
- +
laplace_marginal_bernoulli_logit_lupmf:
+-
+
- +
laplace_marginal_neg_binomial_2_log:
+-
+
- +distribution statement (embedded_laplace.html) +
+
laplace_marginal_neg_binomial_2_log_lpmf:
+-
+
- +
laplace_marginal_neg_binomial_2_log_lupmf:
+-
+
- +
-
+
- +distribution statement (embedded_laplace.html) +
+
laplace_marginal_poisson_log_lpmf:
+-
+
- +
laplace_marginal_poisson_log_lupmf:
+-
+
- +
-
+
- +
laplace_marginal_tol_bernoulli_logit:
+-
+
- +distribution statement (embedded_laplace.html) +
+
laplace_marginal_tol_bernoulli_logit_lpmf:
+-
+
- +
laplace_marginal_tol_bernoulli_logit_lupmf:
+-
+
- +
laplace_marginal_tol_neg_binomial_2_log:
+-
+
- +distribution statement (embedded_laplace.html) +
+
laplace_marginal_tol_neg_binomial_2_log_lpmf:
+-
+
- +
laplace_marginal_tol_neg_binomial_2_log_lupmf:
+-
+
- +
laplace_marginal_tol_poisson_log:
+-
+
- +distribution statement (embedded_laplace.html) +
+
laplace_marginal_tol_poisson_log_lpmf:
+-
+
- +
laplace_marginal_tol_poisson_log_lupmf:
+-
+
- +
-
+
- +
(matrix A, matrix B) : real(matrix_operations.html) +
+
- @@ -6784,6 +6974,51 @@
W
Y
+ +-
+
- +distribution statement (unbounded_discrete_distributions.html) +
+
-
+
- +
(ints n | reals alpha) : real(unbounded_discrete_distributions.html) +
+
-
+
- +
(ints n | reals alpha) : real(unbounded_discrete_distributions.html) +
+
-
+
- +
(ints n | reals alpha) : real(unbounded_discrete_distributions.html) +
+
-
+
- +
(ints n | reals alpha) : real(unbounded_discrete_distributions.html) +
+
-
+
- +
(ints n | reals alpha) : real(unbounded_discrete_distributions.html) +
+
-
+
- +
(reals alpha) : R(unbounded_discrete_distributions.html) +
+
Z
@@ -7387,8 +7622,35 @@Z
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/hidden_markov_models.html b/docs/functions-reference/hidden_markov_models.html index 639e59fb4..4b055c0fc 100644 --- a/docs/functions-reference/hidden_markov_models.html +++ b/docs/functions-reference/hidden_markov_models.html @@ -30,7 +30,7 @@ - + @@ -255,7 +255,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/higher-order_functions.html b/docs/functions-reference/higher-order_functions.html index d37d0bdb1..1b73b613a 100644 --- a/docs/functions-reference/higher-order_functions.html +++ b/docs/functions-reference/higher-order_functions.html @@ -309,7 +309,7 @@Rectangular map
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/index.html b/docs/functions-reference/index.html index 273f5b5b9..820f6d50b 100644 --- a/docs/functions-reference/index.html +++ b/docs/functions-reference/index.html @@ -74,7 +74,7 @@ - + @@ -225,7 +225,7 @@Stan Functions Reference
-Version 2.38
+Version 2.39
Stan Functions Reference
the Stan User’s Guide. The Stan user’s guide provides example models and programming techniques for coding statistical models in Stan. It also serves as an example-driven introduction to Bayesian modeling and inference:
the Stan Reference Manual. Stan’s modeling language is shared across all of its interfaces. The Stan Language Reference Manual provides a concise definition of the language syntax for all elements in the language together with an overview of the inference algorithms and posterior inference tools.
Download the pdf version of this manual.
+Download the pdf version of this manual.
Copyright and trademark
-
@@ -1102,8 +1108,35 @@
Licensing
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/integer-valued_basic_functions.html b/docs/functions-reference/integer-valued_basic_functions.html index 61f8975e8..4788a0d0f 100644 --- a/docs/functions-reference/integer-valued_basic_functions.html +++ b/docs/functions-reference/integer-valued_basic_functions.html @@ -255,7 +255,7 @@ +Casting functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/mathematical_functions.html b/docs/functions-reference/mathematical_functions.html index 47259bf12..d81ac39a9 100644 --- a/docs/functions-reference/mathematical_functions.html +++ b/docs/functions-reference/mathematical_functions.html @@ -31,7 +31,7 @@ - + @@ -255,7 +255,7 @@Digamma
Specialized products<
real quad_form_sym(matrix A, vector B)
Similarly to quad_form, gives B' * A * B, but additionally checks if A is symmetric and ensures that the result is also symmetric.
real trace_dot(matrix A, matrix B)
The trace of the matrix product, i.e., trace(A * B).
real trace_quad_form(matrix A, matrix B)
The trace of the quadratic form, i.e., trace(B' * A * B).
QR decomposition
matrix qr_R(matrix A)
The upper trapezoidal matrix in the fat QR decomposition of A, which implies that the resulting matrix will be rectangular with the same dimensions as A
tuple(matrix, matrix) qr(matrix A)
Returns both portions of the QR decomposition of A. The first element (“Q”) is the orthonormal matrix in the thin QR decomposition and the second element (“R”) is upper triangular. This function is equivalent to (qr_Q(A), qr_R(A)) but with a lower computational cost due to the shared work between the two results.
tuple(matrix, matrix) qr(matrix A)
Returns both portions of the QR decomposition of A. The first element (“Q”) is the orthogonal matrix in the fat QR decomposition and the second element (“R”) is upper trapezoidal. This function is equivalent to (qr_Q(A), qr_R(A)) but with a lower computational cost due to the shared work between the two results.
The thin QR decomposition is always preferable because it will consume much less memory when the input matrix is large than will the fat QR decomposition. Both versions of the decomposition represent the input matrix as \[\begin{equation*} A = Q \, R. \end{equation*}\] Multiplying a column of an orthogonal matrix by \(-1\) still results in an orthogonal matrix, and you can multiply the corresponding row of the upper trapezoidal matrix by \(-1\) without changing the product. Thus, Stan adopts the normalization that the diagonal elements of the upper trapezoidal matrix are strictly positive and the columns of the orthogonal matrix are reflected if necessary. Also, these QR decomposition algorithms do not utilize pivoting and thus may be numerically unstable on input matrices that have less than full rank.
Reverse functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/mixed_operations.html b/docs/functions-reference/mixed_operations.html index 8101005d9..af4d23e2a 100644 --- a/docs/functions-reference/mixed_operations.html +++ b/docs/functions-reference/mixed_operations.html @@ -255,7 +255,7 @@Mixed Operations
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/multivariate_discrete_distributions.html b/docs/functions-reference/multivariate_discrete_distributions.html index 348a6c101..007d82fcc 100644 --- a/docs/functions-reference/multivariate_discrete_distributions.html +++ b/docs/functions-reference/multivariate_discrete_distributions.html @@ -255,7 +255,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/positive_continuous_distributions.html b/docs/functions-reference/positive_continuous_distributions.html index c29d8e03e..6c27f5814 100644 --- a/docs/functions-reference/positive_continuous_distributions.html +++ b/docs/functions-reference/positive_continuous_distributions.html @@ -255,7 +255,7 @@Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/positive_lower-bounded_distributions.html b/docs/functions-reference/positive_lower-bounded_distributions.html index c658d57df..aa3c8aca2 100644 --- a/docs/functions-reference/positive_lower-bounded_distributions.html +++ b/docs/functions-reference/positive_lower-bounded_distributions.html @@ -275,7 +275,7 @@Tolerance tuning
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/real-valued_basic_functions.html b/docs/functions-reference/real-valued_basic_functions.html index b46001086..96f0b6ebe 100644 --- a/docs/functions-reference/real-valued_basic_functions.html +++ b/docs/functions-reference/real-valued_basic_functions.html @@ -309,7 +309,7 @@Hypergeometric Fu
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/references.html b/docs/functions-reference/references.html
index 4458bfda0..8c2cd1b2a 100644
--- a/docs/functions-reference/references.html
+++ b/docs/functions-reference/references.html
@@ -787,8 +787,35 @@ Re
});
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/removed_functions.html b/docs/functions-reference/removed_functions.html
index 041785972..869196b5c 100644
--- a/docs/functions-reference/removed_functions.html
+++ b/docs/functions-reference/removed_functions.html
@@ -255,7 +255,7 @@
+
+
+
+
@@ -1169,8 +1175,35 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/simplex_distributions.html b/docs/functions-reference/simplex_distributions.html
index bd3e01b16..8d7aafd24 100644
--- a/docs/functions-reference/simplex_distributions.html
+++ b/docs/functions-reference/simplex_distributions.html
@@ -289,7 +289,7 @@
+
+
+
+
@@ -1216,8 +1222,35 @@ Stan functions
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/sparse_matrix_operations.html b/docs/functions-reference/sparse_matrix_operations.html
index 25534a49a..e7596edd0 100644
--- a/docs/functions-reference/sparse_matrix_operations.html
+++ b/docs/functions-reference/sparse_matrix_operations.html
@@ -255,7 +255,7 @@
+
+
+
+
@@ -1177,8 +1183,35 @@ Sparse matrix
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/transform_functions.html b/docs/functions-reference/transform_functions.html
index 43ab4cbc9..7311ee935 100644
--- a/docs/functions-reference/transform_functions.html
+++ b/docs/functions-reference/transform_functions.html
@@ -255,7 +255,7 @@
+
+
+
+
@@ -1429,8 +1435,35 @@ Sum-to-zero matrices<
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/unbounded_continuous_distributions.html b/docs/functions-reference/unbounded_continuous_distributions.html
index b08557e47..807dfed4c 100644
--- a/docs/functions-reference/unbounded_continuous_distributions.html
+++ b/docs/functions-reference/unbounded_continuous_distributions.html
@@ -275,7 +275,7 @@
+
+
+
+
@@ -1765,8 +1771,35 @@ Stan functions
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/functions-reference/unbounded_discrete_distributions.html b/docs/functions-reference/unbounded_discrete_distributions.html
index a8a99e58b..d06a2783e 100644
--- a/docs/functions-reference/unbounded_discrete_distributions.html
+++ b/docs/functions-reference/unbounded_discrete_distributions.html
@@ -275,7 +275,7 @@
+
+
+
+
@@ -583,6 +589,12 @@ On this page
Distribution statement
Stan functions
+ Yule Simon distribution
+
@@ -986,6 +998,50 @@ Stan functions
- \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/simplex_distributions.html b/docs/functions-reference/simplex_distributions.html index bd3e01b16..8d7aafd24 100644 --- a/docs/functions-reference/simplex_distributions.html +++ b/docs/functions-reference/simplex_distributions.html @@ -289,7 +289,7 @@
Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/sparse_matrix_operations.html b/docs/functions-reference/sparse_matrix_operations.html index 25534a49a..e7596edd0 100644 --- a/docs/functions-reference/sparse_matrix_operations.html +++ b/docs/functions-reference/sparse_matrix_operations.html @@ -255,7 +255,7 @@Sparse matrix + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/transform_functions.html b/docs/functions-reference/transform_functions.html index 43ab4cbc9..7311ee935 100644 --- a/docs/functions-reference/transform_functions.html +++ b/docs/functions-reference/transform_functions.html @@ -255,7 +255,7 @@
Sum-to-zero matrices< + - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/unbounded_continuous_distributions.html b/docs/functions-reference/unbounded_continuous_distributions.html index b08557e47..807dfed4c 100644 --- a/docs/functions-reference/unbounded_continuous_distributions.html +++ b/docs/functions-reference/unbounded_continuous_distributions.html @@ -275,7 +275,7 @@
Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/unbounded_discrete_distributions.html b/docs/functions-reference/unbounded_discrete_distributions.html index a8a99e58b..d06a2783e 100644 --- a/docs/functions-reference/unbounded_discrete_distributions.html +++ b/docs/functions-reference/unbounded_discrete_distributions.html @@ -275,7 +275,7 @@On this page
Stan functions
R beta_neg_binomial_rng(reals r, reals alpha, reals beta)
Generate a beta negative binomial variate with parameters r, alpha and beta; may only be used in transformed data and generated quantities blocks. r \(\cdot\) beta \(/\) (alpha\(-1\)) must be less than \(2 ^ {29}\). For a description of argument and return types, see section vectorized function signatures.
Yule Simon distribution
+Probability mass function
+If \(\alpha \in \mathbb{R}^+\), then for \(n \in \mathbb{N}^+=\{1,2,...\}\), \[\begin{equation*} +\text{YuleSimon}(n|\alpha) = \alpha \, \mathrm{B}(\alpha + 1, n) = \alpha \, \frac{\Gamma(n) \, \Gamma(\alpha + 1)}{\Gamma(n + \alpha + 1)}. +\end{equation*}\]
+Distribution statement
+n ~ yule_simon(alpha)
Increment target log probability density with yule_simon_lupmf(n | alpha).
Stan functions
+ + +real yule_simon_lpmf(ints n | reals alpha)
The log Yule Simon probability mass of n given parameter alpha.
real yule_simon_lupmf(ints n | reals alpha)
The log Yule Simon probability mass of n given parameter alpha dropping constant additive terms.
real yule_simon_cdf(ints n | reals alpha)
The Yule Simon cumulative distribution function of n given parameter alpha.
real yule_simon_lcdf(ints n | reals alpha)
The log of the Yule Simon cumulative distribution function of n given parameter alpha.
real yule_simon_lccdf(ints n | reals alpha)
The log of the Yule Simon complementary cumulative distribution function of n given parameter alpha.
R yule_simon_rng(reals alpha)
Generate a Yule Simon variate with parameter alpha; may only be used in transformed data and generated quantities blocks. alpha \(/\) (alpha\(-1\)) must be less than \(2 ^ {29}\). For a description of argument and return types, see section vectorized function signatures.
Stan functions
+ - \ No newline at end of file + \ No newline at end of file diff --git a/docs/functions-reference/void_functions.html b/docs/functions-reference/void_functions.html index 5752c5b39..3cf06665a 100644 --- a/docs/functions-reference/void_functions.html +++ b/docs/functions-reference/void_functions.html @@ -226,7 +226,7 @@Fatal error statemen
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
index 8c2fee151..5ba34cc12 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -74,7 +74,7 @@
-
+
@@ -213,7 +213,7 @@
Stan Documentation
-Version 2.38
+Version 2.39
@@ -239,14 +239,14 @@ Stan Documentation
This is the official documentation for Stan.
-The Stan User’s Guide (pdf) provides example models and programming techniques for coding statistical models in Stan.
-The Stan Reference Manual (pdf) specifies the Stan programming language and inference algorithms.
-The Stan Functions Reference (pdf) specifies the functions built into the Stan programming language.
+The Stan User’s Guide (pdf) provides example models and programming techniques for coding statistical models in Stan.
+The Stan Reference Manual (pdf) specifies the Stan programming language and inference algorithms.
+The Stan Functions Reference (pdf) specifies the functions built into the Stan programming language.
-There are also separate installation and getting started guides for CmdStan (pdf), the command-line interface to the Stan inference engine, and the R, Python, and Julia interfaces.
+There are also separate installation and getting started guides for CmdStan (pdf), the command-line interface to the Stan inference engine, and the R, Python, and Julia interfaces.
Older Versions
-This documentation is for Stan 2.38. Older versions of each of the documents linked above can be found in the table below:
+This documentation is for Stan 2.39. Older versions of each of the documents linked above can be found in the table below:
@@ -259,146 +259,153 @@ Older Versions
+2.39
+html pdf
+html pdf
+html pdf
+html pdf
+
+
2.38
html pdf
html pdf
html pdf
html pdf
-
+
2.37
html pdf
html pdf
html pdf
html pdf
-
+
2.36
html pdf
html pdf
html pdf
html pdf
-
+
2.35
html pdf
html pdf
html pdf
html pdf
-
+
2.34
html pdf
html pdf
html pdf
html pdf
-
+
2.33
html pdf
html pdf
html pdf
html pdf
-
+
2.32
html pdf
html pdf
html pdf
html pdf
-
+
2.31
html pdf
html pdf
html pdf
html pdf
-
+
2.30
html pdf
html pdf
html pdf
html pdf
-
+
2.29
html pdf
html pdf
html pdf
html pdf
-
+
2.28
html pdf
html pdf
html pdf
html pdf
-
+
2.27
html pdf
html pdf
html pdf
html pdf
-
+
2.26
html pdf
html pdf
html pdf
html pdf
-
+
2.25
html pdf
html pdf
html pdf
html pdf
-
+
2.24
html pdf
html pdf
html pdf
html pdf
-
+
2.23
html pdf
html pdf
html
html pdf
-
+
2.22
html pdf
html pdf
html pdf
-
+
2.21
html pdf
html pdf
html pdf
-
+
2.20
html pdf
html pdf
html pdf
-
+
2.19
html pdf
html pdf
html pdf
-
+
2.18
html pdf
html pdf
@@ -1088,8 +1095,35 @@ Licensing
});
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/reference-manual/analysis.html b/docs/reference-manual/analysis.html
index 2831fdcf7..70de8e8bb 100644
--- a/docs/reference-manual/analysis.html
+++ b/docs/reference-manual/analysis.html
@@ -275,7 +275,7 @@
+
+
+
+
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/reference-manual/blocks.html b/docs/reference-manual/blocks.html
index cab4af7f5..15e8de1b5 100644
--- a/docs/reference-manual/blocks.html
+++ b/docs/reference-manual/blocks.html
@@ -309,7 +309,7 @@
+
+
+
+
+
-
Stan Documentation
-Version 2.38
+Version 2.39
Stan Documentation

This is the official documentation for Stan.
-
-
The Stan User’s Guide (pdf) provides example models and programming techniques for coding statistical models in Stan.
-The Stan Reference Manual (pdf) specifies the Stan programming language and inference algorithms.
-The Stan Functions Reference (pdf) specifies the functions built into the Stan programming language.
+The Stan User’s Guide (pdf) provides example models and programming techniques for coding statistical models in Stan.
+The Stan Reference Manual (pdf) specifies the Stan programming language and inference algorithms.
+The Stan Functions Reference (pdf) specifies the functions built into the Stan programming language.
There are also separate installation and getting started guides for CmdStan (pdf), the command-line interface to the Stan inference engine, and the R, Python, and Julia interfaces.
+There are also separate installation and getting started guides for CmdStan (pdf), the command-line interface to the Stan inference engine, and the R, Python, and Julia interfaces.
Older Versions
-This documentation is for Stan 2.38. Older versions of each of the documents linked above can be found in the table below:
+This documentation is for Stan 2.39. Older versions of each of the documents linked above can be found in the table below:
| 2.39 | +html pdf | +html pdf | +html pdf | +html pdf | +
| 2.38 | html pdf | html pdf | html pdf | html pdf |
| 2.37 | html pdf | html pdf | html pdf | html pdf |
| 2.36 | html pdf | html pdf | html pdf | html pdf |
| 2.35 | html pdf | html pdf | html pdf | html pdf |
| 2.34 | html pdf | html pdf | html pdf | html pdf |
| 2.33 | html pdf | html pdf | html pdf | html pdf |
| 2.32 | html pdf | html pdf | html pdf | html pdf |
| 2.31 | html pdf | html pdf | html pdf | html pdf |
| 2.30 | html pdf | html pdf | html pdf | html pdf |
| 2.29 | html pdf | html pdf | html pdf | html pdf |
| 2.28 | html pdf | html pdf | html pdf | html pdf |
| 2.27 | html pdf | html pdf | html pdf | html pdf |
| 2.26 | html pdf | html pdf | html pdf | html pdf |
| 2.25 | html pdf | html pdf | html pdf | html pdf |
| 2.24 | html pdf | html pdf | html pdf | html pdf |
| 2.23 | html pdf | html pdf | html | html pdf |
| 2.22 | html pdf | html pdf | html pdf | |
| 2.21 | html pdf | html pdf | html pdf | |
| 2.20 | html pdf | html pdf | html pdf | |
| 2.19 | html pdf | html pdf | html pdf | |
| 2.18 | html pdf | html pdf | @@ -1088,8 +1095,35 @@

+ 
+ 











+
+
+
+
+
+
Comments
+Stan supports C++-style line-based and bracketed comments. Comments may be used anywhere whitespace is allowed in a Stan program.
+Line-based comments
+Any characters on a line following two forward slashes (
+//) is ignored along with the slashes. These may be used, for example, to document variables,Bracketed comments
+For bracketed comments, any text between a forward-slash and asterisk pair (
+ + +/*) and an asterisk and forward-slash pair (*/) is ignored.