diff --git a/.buildinfo b/.buildinfo
index d1b0762..18d6e22 100644
--- a/.buildinfo
+++ b/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 89a6c49602a0e221fc4b6f21d88229d4
+config: f9b848f52dd5e89f9500cd32d9f7c18d
tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/_modules/index.html b/_modules/index.html
index 8c9dd79..96c707b 100644
--- a/_modules/index.html
+++ b/_modules/index.html
@@ -7,7 +7,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/_modules/pypahdb/decomposer.html b/_modules/pypahdb/decomposer.html
index 48136aa..fa22415 100644
--- a/_modules/pypahdb/decomposer.html
+++ b/_modules/pypahdb/decomposer.html
@@ -7,7 +7,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/_modules/pypahdb/decomposer_base.html b/_modules/pypahdb/decomposer_base.html
index 6e725c7..87dd939 100644
--- a/_modules/pypahdb/decomposer_base.html
+++ b/_modules/pypahdb/decomposer_base.html
@@ -7,7 +7,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/_modules/pypahdb/observation.html b/_modules/pypahdb/observation.html
index d8461eb..3b47007 100644
--- a/_modules/pypahdb/observation.html
+++ b/_modules/pypahdb/observation.html
@@ -7,7 +7,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/_static/basic.css b/_static/basic.css
index 30fee9d..f316efc 100644
--- a/_static/basic.css
+++ b/_static/basic.css
@@ -4,7 +4,7 @@
*
* Sphinx stylesheet -- basic theme.
*
- * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
diff --git a/_static/doctools.js b/_static/doctools.js
index d06a71d..4d67807 100644
--- a/_static/doctools.js
+++ b/_static/doctools.js
@@ -4,7 +4,7 @@
*
* Base JavaScript utilities for all Sphinx HTML documentation.
*
- * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
diff --git a/_static/graphviz.css b/_static/graphviz.css
index 8d81c02..027576e 100644
--- a/_static/graphviz.css
+++ b/_static/graphviz.css
@@ -4,7 +4,7 @@
*
* Sphinx stylesheet -- graphviz extension.
*
- * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
diff --git a/_static/language_data.js b/_static/language_data.js
index 250f566..367b8ed 100644
--- a/_static/language_data.js
+++ b/_static/language_data.js
@@ -5,7 +5,7 @@
* This script contains the language-specific data used by searchtools.js,
* namely the list of stopwords, stemmer, scorer and splitter.
*
- * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -13,7 +13,7 @@
var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"];
-/* Non-minified version is copied as a separate JS file, is available */
+/* Non-minified version is copied as a separate JS file, if available */
/**
* Porter Stemmer
diff --git a/_static/searchtools.js b/_static/searchtools.js
index 7918c3f..92da3f8 100644
--- a/_static/searchtools.js
+++ b/_static/searchtools.js
@@ -4,7 +4,7 @@
*
* Sphinx JavaScript utilities for the full-text search.
*
- * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -99,7 +99,7 @@ const _displayItem = (item, searchTerms, highlightTerms) => {
.then((data) => {
if (data)
listItem.appendChild(
- Search.makeSearchSummary(data, searchTerms)
+ Search.makeSearchSummary(data, searchTerms, anchor)
);
// highlight search terms in the summary
if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js
@@ -116,8 +116,8 @@ const _finishSearch = (resultCount) => {
);
else
Search.status.innerText = _(
- `Search finished, found ${resultCount} page(s) matching the search query.`
- );
+ "Search finished, found ${resultCount} page(s) matching the search query."
+ ).replace('${resultCount}', resultCount);
};
const _displayNextItem = (
results,
@@ -137,6 +137,22 @@ const _displayNextItem = (
// search finished, update title and status message
else _finishSearch(resultCount);
};
+// Helper function used by query() to order search results.
+// Each input is an array of [docname, title, anchor, descr, score, filename].
+// Order the results by score (in opposite order of appearance, since the
+// `_displayNextItem` function uses pop() to retrieve items) and then alphabetically.
+const _orderResultsByScoreThenName = (a, b) => {
+ const leftScore = a[4];
+ const rightScore = b[4];
+ if (leftScore === rightScore) {
+ // same score: sort alphabetically
+ const leftTitle = a[1].toLowerCase();
+ const rightTitle = b[1].toLowerCase();
+ if (leftTitle === rightTitle) return 0;
+ return leftTitle > rightTitle ? -1 : 1; // inverted is intentional
+ }
+ return leftScore > rightScore ? 1 : -1;
+};
/**
* Default splitQuery function. Can be overridden in ``sphinx.search`` with a
@@ -160,13 +176,26 @@ const Search = {
_queued_query: null,
_pulse_status: -1,
- htmlToText: (htmlString) => {
+ htmlToText: (htmlString, anchor) => {
const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html');
- htmlElement.querySelectorAll(".headerlink").forEach((el) => { el.remove() });
+ for (const removalQuery of [".headerlinks", "script", "style"]) {
+ htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() });
+ }
+ if (anchor) {
+ const anchorContent = htmlElement.querySelector(`[role="main"] ${anchor}`);
+ if (anchorContent) return anchorContent.textContent;
+
+ console.warn(
+ `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.`
+ );
+ }
+
+ // if anchor not specified or not found, fall back to main content
const docContent = htmlElement.querySelector('[role="main"]');
- if (docContent !== undefined) return docContent.textContent;
+ if (docContent) return docContent.textContent;
+
console.warn(
- "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template."
+ "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template."
);
return "";
},
@@ -239,16 +268,7 @@ const Search = {
else Search.deferQuery(query);
},
- /**
- * execute search (requires search index to be loaded)
- */
- query: (query) => {
- const filenames = Search._index.filenames;
- const docNames = Search._index.docnames;
- const titles = Search._index.titles;
- const allTitles = Search._index.alltitles;
- const indexEntries = Search._index.indexentries;
-
+ _parseQuery: (query) => {
// stem the search terms and add them to the correct list
const stemmer = new Stemmer();
const searchTerms = new Set();
@@ -284,16 +304,32 @@ const Search = {
// console.info("required: ", [...searchTerms]);
// console.info("excluded: ", [...excludedTerms]);
- // array of [docname, title, anchor, descr, score, filename]
- let results = [];
+ return [query, searchTerms, excludedTerms, highlightTerms, objectTerms];
+ },
+
+ /**
+ * execute search (requires search index to be loaded)
+ */
+ _performSearch: (query, searchTerms, excludedTerms, highlightTerms, objectTerms) => {
+ const filenames = Search._index.filenames;
+ const docNames = Search._index.docnames;
+ const titles = Search._index.titles;
+ const allTitles = Search._index.alltitles;
+ const indexEntries = Search._index.indexentries;
+
+ // Collect multiple result groups to be sorted separately and then ordered.
+ // Each is an array of [docname, title, anchor, descr, score, filename].
+ const normalResults = [];
+ const nonMainIndexResults = [];
+
_removeChildren(document.getElementById("search-progress"));
- const queryLower = query.toLowerCase();
+ const queryLower = query.toLowerCase().trim();
for (const [title, foundTitles] of Object.entries(allTitles)) {
- if (title.toLowerCase().includes(queryLower) && (queryLower.length >= title.length/2)) {
+ if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) {
for (const [file, id] of foundTitles) {
let score = Math.round(100 * queryLower.length / title.length)
- results.push([
+ normalResults.push([
docNames[file],
titles[file] !== title ? `${titles[file]} > ${title}` : title,
id !== null ? "#" + id : "",
@@ -308,46 +344,47 @@ const Search = {
// search for explicit entries in index directives
for (const [entry, foundEntries] of Object.entries(indexEntries)) {
if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) {
- for (const [file, id] of foundEntries) {
- let score = Math.round(100 * queryLower.length / entry.length)
- results.push([
+ for (const [file, id, isMain] of foundEntries) {
+ const score = Math.round(100 * queryLower.length / entry.length);
+ const result = [
docNames[file],
titles[file],
id ? "#" + id : "",
null,
score,
filenames[file],
- ]);
+ ];
+ if (isMain) {
+ normalResults.push(result);
+ } else {
+ nonMainIndexResults.push(result);
+ }
}
}
}
// lookup as object
objectTerms.forEach((term) =>
- results.push(...Search.performObjectSearch(term, objectTerms))
+ normalResults.push(...Search.performObjectSearch(term, objectTerms))
);
// lookup as search terms in fulltext
- results.push(...Search.performTermsSearch(searchTerms, excludedTerms));
+ normalResults.push(...Search.performTermsSearch(searchTerms, excludedTerms));
// let the scorer override scores with a custom scoring function
- if (Scorer.score) results.forEach((item) => (item[4] = Scorer.score(item)));
-
- // now sort the results by score (in opposite order of appearance, since the
- // display function below uses pop() to retrieve items) and then
- // alphabetically
- results.sort((a, b) => {
- const leftScore = a[4];
- const rightScore = b[4];
- if (leftScore === rightScore) {
- // same score: sort alphabetically
- const leftTitle = a[1].toLowerCase();
- const rightTitle = b[1].toLowerCase();
- if (leftTitle === rightTitle) return 0;
- return leftTitle > rightTitle ? -1 : 1; // inverted is intentional
- }
- return leftScore > rightScore ? 1 : -1;
- });
+ if (Scorer.score) {
+ normalResults.forEach((item) => (item[4] = Scorer.score(item)));
+ nonMainIndexResults.forEach((item) => (item[4] = Scorer.score(item)));
+ }
+
+ // Sort each group of results by score and then alphabetically by name.
+ normalResults.sort(_orderResultsByScoreThenName);
+ nonMainIndexResults.sort(_orderResultsByScoreThenName);
+
+ // Combine the result groups in (reverse) order.
+ // Non-main index entries are typically arbitrary cross-references,
+ // so display them after other results.
+ let results = [...nonMainIndexResults, ...normalResults];
// remove duplicate search results
// note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept
@@ -361,7 +398,12 @@ const Search = {
return acc;
}, []);
- results = results.reverse();
+ return results.reverse();
+ },
+
+ query: (query) => {
+ const [searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms] = Search._parseQuery(query);
+ const results = Search._performSearch(searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms);
// for debugging
//Search.lastresults = results.slice(); // a copy
@@ -466,14 +508,18 @@ const Search = {
// add support for partial matches
if (word.length > 2) {
const escapedWord = _escapeRegExp(word);
- Object.keys(terms).forEach((term) => {
- if (term.match(escapedWord) && !terms[word])
- arr.push({ files: terms[term], score: Scorer.partialTerm });
- });
- Object.keys(titleTerms).forEach((term) => {
- if (term.match(escapedWord) && !titleTerms[word])
- arr.push({ files: titleTerms[word], score: Scorer.partialTitle });
- });
+ if (!terms.hasOwnProperty(word)) {
+ Object.keys(terms).forEach((term) => {
+ if (term.match(escapedWord))
+ arr.push({ files: terms[term], score: Scorer.partialTerm });
+ });
+ }
+ if (!titleTerms.hasOwnProperty(word)) {
+ Object.keys(titleTerms).forEach((term) => {
+ if (term.match(escapedWord))
+ arr.push({ files: titleTerms[term], score: Scorer.partialTitle });
+ });
+ }
}
// no match but word was a required one
@@ -496,9 +542,8 @@ const Search = {
// create the mapping
files.forEach((file) => {
- if (fileMap.has(file) && fileMap.get(file).indexOf(word) === -1)
- fileMap.get(file).push(word);
- else fileMap.set(file, [word]);
+ if (!fileMap.has(file)) fileMap.set(file, [word]);
+ else if (fileMap.get(file).indexOf(word) === -1) fileMap.get(file).push(word);
});
});
@@ -549,8 +594,8 @@ const Search = {
* search summary for a given text. keywords is a list
* of stemmed words.
*/
- makeSearchSummary: (htmlText, keywords) => {
- const text = Search.htmlToText(htmlText);
+ makeSearchSummary: (htmlText, keywords, anchor) => {
+ const text = Search.htmlToText(htmlText, anchor);
if (text === "") return null;
const textLower = text.toLowerCase();
diff --git a/background.html b/background.html
index 85312e3..51b4416 100644
--- a/background.html
+++ b/background.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/design.html b/design.html
index 205e4c8..4670b6e 100644
--- a/design.html
+++ b/design.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/genindex.html b/genindex.html
index a753fd2..4dfdbe5 100644
--- a/genindex.html
+++ b/genindex.html
@@ -7,7 +7,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/index.html b/index.html
index 50c4267..cade992 100644
--- a/index.html
+++ b/index.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/installation.html b/installation.html
index 131c519..0244b0b 100644
--- a/installation.html
+++ b/installation.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/py-modindex.html b/py-modindex.html
index 9970051..e3096aa 100644
--- a/py-modindex.html
+++ b/py-modindex.html
@@ -7,7 +7,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
diff --git a/pypahdb.html b/pypahdb.html
index 7b65d53..873d6a2 100644
--- a/pypahdb.html
+++ b/pypahdb.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/release-history.html b/release-history.html
index 4c0e77e..40edfa7 100644
--- a/release-history.html
+++ b/release-history.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/search.html b/search.html
index cb5b23c..4aad73a 100644
--- a/search.html
+++ b/search.html
@@ -7,7 +7,7 @@
-
+
@@ -18,7 +18,7 @@
-
+
diff --git a/searchindex.js b/searchindex.js
index 6594ae9..69e0e4d 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["background", "design", "index", "installation", "pypahdb", "release-history", "usage"], "filenames": ["background.rst", "design.rst", "index.rst", "installation.rst", "pypahdb.rst", "release-history.rst", "usage.rst"], "titles": ["1 Background", "2 Design", "Pypahdb Manual", "3 Installation", "API", "Release History", "4 Usage"], "terms": {"i": [0, 1, 2, 4, 6], "us": [0, 1, 3, 4, 6], "character": [0, 1], "emiss": [0, 1, 4], "from": [0, 1, 2, 3, 4, 6], "one": [0, 1], "most": 0, "preval": 0, "type": 0, "organ": [0, 4], "molecul": [0, 1, 4], "space": [0, 2, 4], "name": 0, "polycycl": 0, "aromat": 0, "hydrocarbon": 0, "pah": [0, 1, 2, 4, 6], "It": [0, 1], "leverag": 0, "detail": [0, 1], "studi": 0, "done": 0, "nasa": [0, 2, 4], "am": [0, 2, 4], "research": [0, 2, 4], "center": [0, 2, 4], "streamlin": 0, "version": [0, 4], "ir": [0, 2, 4], "databas": [0, 1, 2, 4], "": [0, 1, 2, 3, 6], "pahdb": [0, 2, 3, 4], "www": [0, 2, 4], "astrochemistri": [0, 2, 4], "org": [0, 2, 4], "ha": [0, 4, 5, 6], "been": [0, 1, 4, 6], "extens": 0, "analyz": [0, 1], "interpret": 0, "signatur": 0, "plethora": 0, "sourc": [0, 4], "rang": 0, "solar": 0, "system": 0, "object": [0, 1, 4, 6], "entir": [0, 4], "galaxi": 0, "decompos": [0, 1, 6], "astronom": [0, 1, 4, 6], "spectra": [0, 1, 2, 4], "contribut": [0, 1, 4], "sub": 0, "class": [0, 1, 4, 5, 6], "term": [0, 1], "charg": [0, 1, 4], "size": [0, 1, 4], "fit": [0, 1, 4, 6], "techniqu": 0, "The": [0, 1, 2, 4, 6], "input": [0, 1, 4], "ar": [0, 1, 4, 6], "construct": [0, 4, 6], "librari": [0, 2, 4], "take": [0, 1], "account": 0, "photo": 0, "physic": 0, "excit": 0, "process": [0, 1], "deriv": [0, 1], "paramet": [0, 4], "directli": [0, 3], "jwst": [0, 1, 2, 4], "limit": 0, "alon": 0, "light": 0, "softwar": [0, 2], "an": [0, 1, 2, 4, 6], "analog": 0, "off": 0, "A": [0, 1, 4], "present": [0, 1], "tabl": [0, 1, 4, 6], "below": [0, 1, 6], "enabl": 0, "expert": 0, "alik": 0, "includ": [0, 1, 4, 6], "fix": 0, "user": [0, 1], "defin": 0, "energi": 0, "select": 0, "band": [0, 4], "redshift": [0, 4], "model": [0, 2, 4], "breakdown": [0, 1, 4], "parallel": [0, 1], "you": [0, 4], "kindli": [0, 4], "ask": [0, 4], "consid": [0, 1, 4], "follow": [0, 1, 4], "citat": [0, 4], "when": [0, 1, 4], "shannon": [0, 1, 4], "m": [0, 4], "j": [0, 4], "boersma": [0, 1, 4], "c": [0, 4], "IN": [0, 4], "insight": [0, 4], "THE": [0, 4], "molecular": [0, 4], "era": [0, 4], "OF": [0, 4], "jame": [0, 2, 4], "webb": [0, 2, 4], "telescop": [0, 2, 4], "2018": [0, 1, 4], "scipi": 0, "99": [0, 4], "http": [0, 2, 3, 4], "doi": [0, 4], "10": [0, 4], "25080": [0, 4], "majora": [0, 4], "4af1f417": [0, 4], "00f": [0, 4], "w": [0, 4], "bauschlich": [0, 4], "jr": [0, 4], "ricca": [0, 4], "l": [0, 4], "allamandola": [0, 4], "comput": [0, 1, 2, 4], "00": [0, 4], "WITH": [0, 4], "updat": [0, 2, 4], "content": 0, "AND": [0, 4], "introduct": [0, 4], "multipl": [0, 4], "scale": [0, 4], "factor": [0, 4], "astrophys": [0, 2, 4], "journal": [0, 4], "supplement": [0, 4], "seri": [0, 4], "234": [0, 4], "32": [0, 4], "3847": [0, 4], "1538": [0, 4], "4365": [0, 4], "aaa019": [0, 4], "mattioda": [0, 4], "cami": [0, 4], "e": [0, 4, 6], "peeter": [0, 4], "f": [0, 4], "225": 0, "nchez": 0, "de": [0, 4], "arma": [0, 4], "g": [0, 4], "puerta": [0, 4], "saborido": [0, 4], "d": [0, 4], "hudgin": [0, 4], "websit": [0, 1, 2, 4], "ON": [0, 4], "offlin": [0, 4], "211": [0, 4], "8": [0, 4], "2014": [0, 4], "1088": [0, 4], "0067": [0, 4], "0049": [0, 4], "189": 0, "341": 0, "2010": 0, "laboratori": [0, 2, 4], "251": [0, 4], "22": [0, 4], "2020": [0, 4], "abc2c8": [0, 4], "amespahdbpythonsuit": 0, "github": [0, 1, 2, 3], "com": [0, 1, 2, 3], "amespahdbidlsuit": 0, "pleas": [1, 2], "note": [1, 3, 4, 6], "what": [1, 6], "describ": 1, "here": 1, "base": [1, 4], "some": [1, 4], "implement": 1, "have": [1, 4], "chang": 1, "sinc": [1, 2], "pypahdb": [1, 3, 5, 6], "spectroscop": [1, 2, 4], "observ": [1, 6], "spectral": [1, 2, 4], "map": [1, 4], "ioniz": 1, "fraction": [1, 4], "approach": [1, 4], "packag": [1, 2, 4, 6], "import": [1, 6], "statement": 1, "load": [1, 4, 6], "ascii": 1, "file": [1, 4, 6], "highli": 1, "over": [1, 2], "sampl": [1, 6], "pre": 1, "matrix": [1, 3, 4], "interpol": 1, "onto": 1, "wavelength": 1, "grid": 1, "perform": [1, 6], "non": [1, 4], "neg": [1, 4], "least": [1, 4], "squar": [1, 4], "nnl": [1, 4], "which": [1, 2, 4, 6], "yield": 1, "individu": 1, "As": 1, "result": [1, 4], "can": [1, 2, 3, 4, 6], "broken": 1, "down": 1, "3": [1, 4], "written": 1, "disk": [1, 4, 6], "singl": 1, "pdf": [1, 4, 6], "summar": 1, "page": 1, "per": 1, "pixel": [1, 4], "cube": [1, 4], "provid": [1, 2, 6], "gener": [1, 2], "program": [1, 2, 4], "methodologi": 1, "encapsul": 1, "figur": [1, 4], "abov": [1, 6], "read": [1, 4, 6], "contain": [1, 2, 4, 6], "thi": [1, 4, 5], "function": [1, 5], "py": [1, 4, 6], "respons": 1, "ensur": 1, "all": 1, "compon": 1, "remov": 1, "spectrum": [1, 4, 6], "fall": 1, "through": [1, 2, 4], "try": 1, "except": 1, "chain": 1, "attempt": 1, "given": 1, "filenam": [1, 4, 6], "facil": 1, "astropi": 1, "io": 1, "store": 1, "specutil": [1, 4], "spectrum1d": [1, 4], "convert": 1, "between": 1, "differ": 1, "coordin": [1, 2, 4], "represent": 1, "exampl": [1, 2, 6], "python": [1, 2, 4, 6], "code": [1, 6], "demonstr": [1, 6], "sample_data_ngc7023": [1, 6], "tbl": [1, 6], "bundl": [1, 6], "output": [1, 6], "shown": [1, 6], "pkg_resourc": 1, "matplotlib": [1, 4], "pyplot": 1, "plt": 1, "file_path": [1, 4, 6], "resourc": [1, 2, 6], "data_fil": [1, 6], "resource_filenam": 1, "ob": [1, 6], "plot": [1, 4], "spectral_axi": 1, "flux": 1, "0": [1, 4], "show": 1, "subclass": [1, 4, 5], "decomposer_bas": 1, "its": [1, 3, 6], "deep": 1, "copi": 1, "call": 1, "unit": 1, "method": [1, 6], "abscissa": [1, 4], "wavenumb": 1, "subsequ": 1, "numpi": [1, 4], "oversampl": 1, "pickl": [1, 3], "util": 1, "interp": 1, "each": 1, "repres": 1, "column": 1, "frequenc": 1, "multiprocess": 1, "optim": 1, "chosen": 1, "becaus": 1, "appropri": 1, "problem": 1, "fast": 1, "alwai": 1, "converg": 1, "solut": 1, "vector": 1, "weight": 1, "attribut": [1, 4], "privat": 1, "combin": 1, "lazi": 1, "instanti": [1, 6], "properti": [1, 4], "retriev": 1, "calcul": [1, 4], "across": 1, "again": 1, "extend": [1, 4], "previou": 1, "block": [1, 6], "x": 1, "save": [1, 4, 6], "allow": 1, "assess": 1, "qualiti": 1, "later": 1, "write": [1, 4, 6], "incorpor": 1, "relev": 1, "inform": [1, 2, 4], "header": [1, 4, 6], "save_pdf": [1, 4, 6], "ngc7023_pypahdb": 1, "save_fit": [1, 4, 6], "ipac": [1, 4, 6], "spitzer": [1, 4, 6], "pahfit": 1, "underwai": 1, "being": [1, 2, 4], "develop": [1, 2, 4], "part": [1, 2, 4], "same": [1, 5], "er": [1, 2, 4], "1": [2, 4], "2": [2, 4], "host": 2, "world": 2, "foremost": 2, "collect": [2, 4], "infrar": 2, "4": 2, "000": 2, "measur": 2, "quantum": 2, "chemic": 2, "beyond": 2, "data": [2, 4, 6], "also": [2, 5], "tool": [2, 4], "work": [2, 4], "portal": 2, "locat": [2, 4, 6], "award": [2, 4], "earli": [2, 4], "releas": [2, 4], "scienc": [2, 4], "radi": [2, 4], "feedback": [2, 4], "massiv": [2, 4], "star": [2, 4], "trace": [2, 4], "multiband": [2, 4], "imag": [2, 4], "mosaic": [2, 4], "id": [2, 4], "1288": [2, 4], "intern": [2, 4], "core": [2, 4], "team": [2, 4], "19": [2, 4], "scientist": [2, 4], "support": [2, 4], "119": [2, 4], "collabor": [2, 4], "asscoci": [2, 4], "consult": 2, "addit": [2, 4], "cookbook": 2, "usag": 2, "issu": 2, "comment": 2, "suggest": 2, "submit": 2, "last": 2, "march": 2, "2023": 2, "footnot": 2, "fy2019": 2, "2022": 2, "wa": 2, "direct": [2, 4], "titl": [2, 4], "fy2023": 2, "round": 2, "pip": 3, "repositori": 3, "git": 3, "upon": [3, 4], "first": [3, 6], "run": 3, "precomput": [3, 4], "download": [3, 4], "server": 3, "decomposerbas": [4, 5], "theoret": 4, "see": 4, "doc": 4, "more": 4, "return": 4, "self": 4, "_charg": 4, "dictionari": 4, "kei": 4, "anion": 4, "neutral": 4, "cation": 4, "charge_fract": 4, "_charge_fract": 4, "dict": 4, "error": 4, "residu": 4, "d\u03bd": 4, "_yerror": 4, "quantiti": 4, "_yfit": 4, "nc": 4, "averag": 4, "number": 4, "carbon": 4, "atom": 4, "_nc": 4, "_size": 4, "larg": 4, "medium": 4, "small": 4, "size_fract": 4, "_size_fract": 4, "writ": 4, "cation_neutral_ratio": 4, "ratio": 4, "alreadi": 4, "plot_fit": 4, "none": 4, "arg": 4, "int": 4, "ordin": 4, "fig": 4, "instanc": [4, 6], "static": 4, "plot_map": 4, "wc": 4, "im": 4, "string": 4, "keyword": 4, "default": 4, "summari": 4, "str": 4, "path": [4, 6], "option": 4, "domap": [4, 6], "true": 4, "doplot": 4, "bool": 4, "manag": 4, "creat": [4, 6], "instal": 4, "meet": 4, "critera": 4, "fulleren": 4, "c\u2086\u2080": 4, "c\u2087\u2080": 4, "magnesium": 4, "oxygen": 4, "iron": 4, "silicium": 4, "chx": 4, "ch2": 4, "20": 4, "hydrogen": 4, "emploi": 4, "vibrat": 4, "temperatur": 4, "absorpt": 4, "7": 4, "ev": 4, "photon": 4, "integr": 4, "intens": 4, "after": 4, "cascad": 4, "15": 4, "cm": 4, "\u00b9": 4, "mimic": 4, "anharmon": 4, "effect": 4, "gaussian": 4, "profil": 4, "fwhm": 4, "found": 4, "refer": 4, "proceed": 4, "17th": 4, "confer": 4, "ed": 4, "akici": 4, "lippa": 4, "niederhut": 4, "pacer": 4, "sanchez": 4, "In": 5, "functional": 5, "remain": 5, "howev": 5, "document": 5, "seen": 5, "signific": 5, "improv": 5, "move": 5, "writer": 5, "initi": 5, "example_tbl": 6, "make": 6, "importlib_resourc": 6, "__name__": 6, "__main__": 6, "pass": 6, "pahdb_fit": 6, "both": 6, "ngc7023_pypahdb_tbl_exampl": 6, "fals": 6, "let": 6, "briefli": 6, "explor": 6, "do": 6, "argument": 6, "abl": 6, "handl": 6, "varieti": 6, "format": 6, "just": 6, "decomposit": 6, "onli": 6, "posit": 6, "two": 6, "produc": 6, "On": 6, "other": 6, "requir": 6, "explicit": 6, "set": 6, "arbitrari": 6, "possibl": 6, "custom": 6}, "objects": {"": [[4, 0, 0, "-", "pypahdb"]], "pypahdb": [[4, 0, 0, "-", "decomposer"], [4, 0, 0, "-", "decomposer_base"], [4, 0, 0, "-", "observation"]], "pypahdb.decomposer": [[4, 1, 1, "", "Decomposer"]], "pypahdb.decomposer.Decomposer": [[4, 2, 1, "", "cation_neutral_ratio"], [4, 3, 1, "", "plot_fit"], [4, 3, 1, "", "plot_map"], [4, 3, 1, "", "save_fits"], [4, 3, 1, "", "save_pdf"]], "pypahdb.decomposer_base": [[4, 1, 1, "", "DecomposerBase"]], "pypahdb.decomposer_base.DecomposerBase": [[4, 2, 1, "", "charge"], [4, 2, 1, "", "charge_fractions"], [4, 2, 1, "", "error"], [4, 2, 1, "", "fit"], [4, 2, 1, "", "nc"], [4, 2, 1, "", "size"], [4, 2, 1, "", "size_fractions"]], "pypahdb.observation": [[4, 1, 1, "", "Observation"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:property", "3": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "property", "Python property"], "3": ["py", "method", "Python method"]}, "titleterms": {"1": [0, 1, 5, 6], "background": 0, "purpos": 0, "2": [0, 1], "featur": 0, "comparison": 0, "between": 0, "pypahdb": [0, 2, 4], "full": 0, "suit": 0, "idl": 0, "python": 0, "tool": 0, "note": 0, "nnl": 0, "non": 0, "neg": 0, "least": 0, "squar": 0, "nnlc": 0, "chi": 0, "fwhm": 0, "width": 0, "half": 0, "maximum": 0, "line": 0, "profil": 0, "uncertainti": 0, "handl": 0, "observ": [0, 4], "spectroscop": 0, "3": [0, 3], "academ": 0, "refer": 0, "design": 1, "flowchart": 1, "support": 1, "data": 1, "format": 1, "manual": 2, "instal": 3, "api": 4, "submodul": 4, "decomposer_bas": 4, "modul": 4, "decompos": 4, "content": 4, "releas": 5, "histori": 5, "v0": 5, "6": 5, "2018": 5, "10": 5, "12": 5, "0": 5, "08": 5, "15": 5, "4": 6, "usag": 6, "detail": 6}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "nbsphinx": 4, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinx": 60}, "alltitles": {"1\u00a0\u00a0\u00a0Background": [[0, "background"]], "1.1\u00a0\u00a0\u00a0Purpose": [[0, "purpose"]], "1.2\u00a0\u00a0\u00a0Features": [[0, "features"]], "Feature comparison between pypahdb and the full suites of\n IDL/Python tools. Notes: NNLS=non-negative least-squares;\n NNLC=non-negative least-chi-squared; FWHM= full-width at\n half-maximum of a line profile; Uncertainties=handling\n observational spectroscopic uncertainties.": [[0, "id5"]], "1.3\u00a0\u00a0\u00a0Academic references": [[0, "academic-references"]], "2\u00a0\u00a0\u00a0Design": [[1, "design"]], "2.1\u00a0\u00a0\u00a0Flowchart": [[1, "flowchart"]], "2.2\u00a0\u00a0\u00a0Supported data formats": [[1, "supported-data-formats"]], "Pypahdb Manual": [[2, "pypahdb-manual"]], "3\u00a0\u00a0\u00a0Installation": [[3, "installation"]], "API": [[4, "api"]], "Submodules": [[4, "submodules"]], "pypahdb.decomposer_base module": [[4, "module-pypahdb.decomposer_base"]], "pypahdb.decomposer module": [[4, "module-pypahdb.decomposer"]], "pypahdb.observation module": [[4, "module-pypahdb.observation"]], "Module contents": [[4, "module-pypahdb"]], "Release History": [[5, "release-history"]], "v0.6.1 (2018-10-12)": [[5, "v0-6-1-2018-10-12"]], "v0.6.0 (2018-08-15)": [[5, "v0-6-0-2018-08-15"]], "4\u00a0\u00a0\u00a0Usage": [[6, "usage"]], "4.1\u00a0\u00a0\u00a0Details": [[6, "details"]]}, "indexentries": {"decomposer (class in pypahdb.decomposer)": [[4, "pypahdb.decomposer.Decomposer"]], "decomposerbase (class in pypahdb.decomposer_base)": [[4, "pypahdb.decomposer_base.DecomposerBase"]], "observation (class in pypahdb.observation)": [[4, "pypahdb.observation.Observation"]], "cation_neutral_ratio (pypahdb.decomposer.decomposer property)": [[4, "pypahdb.decomposer.Decomposer.cation_neutral_ratio"]], "charge (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.charge"]], "charge_fractions (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.charge_fractions"]], "error (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.error"]], "fit (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.fit"]], "module": [[4, "module-pypahdb"], [4, "module-pypahdb.decomposer"], [4, "module-pypahdb.decomposer_base"], [4, "module-pypahdb.observation"]], "nc (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.nc"]], "plot_fit() (pypahdb.decomposer.decomposer method)": [[4, "pypahdb.decomposer.Decomposer.plot_fit"]], "plot_map() (pypahdb.decomposer.decomposer static method)": [[4, "pypahdb.decomposer.Decomposer.plot_map"]], "pypahdb": [[4, "module-pypahdb"]], "pypahdb.decomposer": [[4, "module-pypahdb.decomposer"]], "pypahdb.decomposer_base": [[4, "module-pypahdb.decomposer_base"]], "pypahdb.observation": [[4, "module-pypahdb.observation"]], "save_fits() (pypahdb.decomposer.decomposer method)": [[4, "pypahdb.decomposer.Decomposer.save_fits"]], "save_pdf() (pypahdb.decomposer.decomposer method)": [[4, "pypahdb.decomposer.Decomposer.save_pdf"]], "size (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.size"]], "size_fractions (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.size_fractions"]]}})
\ No newline at end of file
+Search.setIndex({"alltitles": {"1.1\u00a0\u00a0\u00a0Purpose": [[0, "purpose"]], "1.2\u00a0\u00a0\u00a0Features": [[0, "features"]], "1.3\u00a0\u00a0\u00a0Academic references": [[0, "academic-references"]], "1\u00a0\u00a0\u00a0Background": [[0, "background"]], "2.1\u00a0\u00a0\u00a0Flowchart": [[1, "flowchart"]], "2.2\u00a0\u00a0\u00a0Supported data formats": [[1, "supported-data-formats"]], "2\u00a0\u00a0\u00a0Design": [[1, "design"]], "3\u00a0\u00a0\u00a0Installation": [[3, "installation"]], "4.1\u00a0\u00a0\u00a0Details": [[6, "details"]], "4\u00a0\u00a0\u00a0Usage": [[6, "usage"]], "API": [[4, "api"]], "Feature comparison between pypahdb and the full suites of\n IDL/Python tools. Notes: NNLS=non-negative least-squares;\n NNLC=non-negative least-chi-squared; FWHM= full-width at\n half-maximum of a line profile; Uncertainties=handling\n observational spectroscopic uncertainties.": [[0, "id5"]], "Module contents": [[4, "module-pypahdb"]], "Pypahdb Manual": [[2, "pypahdb-manual"]], "Release History": [[5, "release-history"]], "Submodules": [[4, "submodules"]], "pypahdb.decomposer module": [[4, "module-pypahdb.decomposer"]], "pypahdb.decomposer_base module": [[4, "module-pypahdb.decomposer_base"]], "pypahdb.observation module": [[4, "module-pypahdb.observation"]], "v0.6.0 (2018-08-15)": [[5, "v0-6-0-2018-08-15"]], "v0.6.1 (2018-10-12)": [[5, "v0-6-1-2018-10-12"]]}, "docnames": ["background", "design", "index", "installation", "pypahdb", "release-history", "usage"], "envversion": {"nbsphinx": 4, "sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1}, "filenames": ["background.rst", "design.rst", "index.rst", "installation.rst", "pypahdb.rst", "release-history.rst", "usage.rst"], "indexentries": {"cation_neutral_ratio (pypahdb.decomposer.decomposer property)": [[4, "pypahdb.decomposer.Decomposer.cation_neutral_ratio", false]], "charge (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.charge", false]], "charge_fractions (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.charge_fractions", false]], "decomposer (class in pypahdb.decomposer)": [[4, "pypahdb.decomposer.Decomposer", false]], "decomposerbase (class in pypahdb.decomposer_base)": [[4, "pypahdb.decomposer_base.DecomposerBase", false]], "error (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.error", false]], "fit (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.fit", false]], "module": [[4, "module-pypahdb", false], [4, "module-pypahdb.decomposer", false], [4, "module-pypahdb.decomposer_base", false], [4, "module-pypahdb.observation", false]], "nc (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.nc", false]], "observation (class in pypahdb.observation)": [[4, "pypahdb.observation.Observation", false]], "plot_fit() (pypahdb.decomposer.decomposer method)": [[4, "pypahdb.decomposer.Decomposer.plot_fit", false]], "plot_map() (pypahdb.decomposer.decomposer static method)": [[4, "pypahdb.decomposer.Decomposer.plot_map", false]], "pypahdb": [[4, "module-pypahdb", false]], "pypahdb.decomposer": [[4, "module-pypahdb.decomposer", false]], "pypahdb.decomposer_base": [[4, "module-pypahdb.decomposer_base", false]], "pypahdb.observation": [[4, "module-pypahdb.observation", false]], "save_fits() (pypahdb.decomposer.decomposer method)": [[4, "pypahdb.decomposer.Decomposer.save_fits", false]], "save_pdf() (pypahdb.decomposer.decomposer method)": [[4, "pypahdb.decomposer.Decomposer.save_pdf", false]], "size (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.size", false]], "size_fractions (pypahdb.decomposer_base.decomposerbase property)": [[4, "pypahdb.decomposer_base.DecomposerBase.size_fractions", false]]}, "objects": {"": [[4, 0, 0, "-", "pypahdb"]], "pypahdb": [[4, 0, 0, "-", "decomposer"], [4, 0, 0, "-", "decomposer_base"], [4, 0, 0, "-", "observation"]], "pypahdb.decomposer": [[4, 1, 1, "", "Decomposer"]], "pypahdb.decomposer.Decomposer": [[4, 2, 1, "", "cation_neutral_ratio"], [4, 3, 1, "", "plot_fit"], [4, 3, 1, "", "plot_map"], [4, 3, 1, "", "save_fits"], [4, 3, 1, "", "save_pdf"]], "pypahdb.decomposer_base": [[4, 1, 1, "", "DecomposerBase"]], "pypahdb.decomposer_base.DecomposerBase": [[4, 2, 1, "", "charge"], [4, 2, 1, "", "charge_fractions"], [4, 2, 1, "", "error"], [4, 2, 1, "", "fit"], [4, 2, 1, "", "nc"], [4, 2, 1, "", "size"], [4, 2, 1, "", "size_fractions"]], "pypahdb.observation": [[4, 1, 1, "", "Observation"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "property", "Python property"], "3": ["py", "method", "Python method"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:property", "3": "py:method"}, "terms": {"": [0, 1, 2, 3, 6], "0": [1, 4], "00": [0, 4], "000": 2, "0049": [0, 4], "0067": [0, 4], "00f": [0, 4], "1": [2, 4], "10": [0, 4], "1088": [0, 4], "119": [2, 4], "1288": [2, 4], "15": 4, "1538": [0, 4], "17th": 4, "189": 0, "19": [2, 4], "2": [2, 4], "20": 4, "2010": 0, "2014": [0, 4], "2018": [0, 1, 4], "2020": [0, 4], "2022": 2, "2023": 2, "211": [0, 4], "22": [0, 4], "225": 0, "234": [0, 4], "25080": [0, 4], "251": [0, 4], "3": [1, 4], "32": [0, 4], "341": 0, "3847": [0, 4], "4": 2, "4365": [0, 4], "4af1f417": [0, 4], "7": 4, "8": [0, 4], "99": [0, 4], "A": [0, 1, 4], "AND": [0, 4], "As": 1, "IN": [0, 4], "In": 5, "It": [0, 1], "OF": [0, 4], "ON": [0, 4], "On": 6, "THE": [0, 4], "The": [0, 1, 2, 4, 6], "WITH": [0, 4], "__main__": 6, "__name__": 6, "_charg": 4, "_charge_fract": 4, "_nc": 4, "_size": 4, "_size_fract": 4, "_yerror": 4, "_yfit": 4, "aaa019": [0, 4], "abc2c8": [0, 4], "abl": 6, "abov": [1, 6], "abscissa": [1, 4], "absorpt": 4, "account": 0, "across": 1, "addit": [2, 4], "after": 4, "again": 1, "akici": 4, "alik": 0, "all": 1, "allamandola": [0, 4], "allow": 1, "alon": 0, "alreadi": 4, "also": [2, 5], "alwai": 1, "am": [0, 2, 4], "amespahdbidlsuit": 0, "amespahdbpythonsuit": 0, "an": [0, 1, 2, 4, 6], "analog": 0, "analyz": [0, 1], "anharmon": 4, "anion": 4, "approach": [1, 4], "appropri": 1, "ar": [0, 1, 4, 6], "arbitrari": 6, "arg": 4, "argument": 6, "arma": [0, 4], "aromat": 0, "ascii": 1, "ask": [0, 4], "asscoci": [2, 4], "assess": 1, "astrochemistri": [0, 2, 4], "astronom": [0, 1, 4, 6], "astrophys": [0, 2, 4], "astropi": 1, "atom": 4, "attempt": 1, "attribut": [1, 4], "averag": 4, "award": [2, 4], "band": [0, 4], "base": [1, 4], "bauschlich": [0, 4], "becaus": 1, "been": [0, 1, 4, 6], "being": [1, 2, 4], "below": [0, 1, 6], "between": 1, "beyond": 2, "block": [1, 6], "boersma": [0, 1, 4], "bool": 4, "both": 6, "breakdown": [0, 1, 4], "briefli": 6, "broken": 1, "bundl": [1, 6], "c": [0, 4], "calcul": [1, 4], "call": 1, "cami": [0, 4], "can": [1, 2, 3, 4, 6], "carbon": 4, "cascad": 4, "cation": 4, "cation_neutral_ratio": 4, "center": [0, 2, 4], "ch2": 4, "chain": 1, "chang": 1, "character": [0, 1], "charg": [0, 1, 4], "charge_fract": 4, "chemic": 2, "chosen": 1, "chx": 4, "citat": [0, 4], "class": [0, 1, 4, 5, 6], "cm": 4, "code": [1, 6], "collabor": [2, 4], "collect": [2, 4], "column": 1, "com": [0, 1, 2, 3], "combin": 1, "comment": 2, "compon": 1, "comput": [0, 1, 2, 4], "confer": 4, "consid": [0, 1, 4], "construct": [0, 4, 6], "consult": 2, "contain": [1, 2, 4, 6], "content": 0, "contribut": [0, 1, 4], "converg": 1, "convert": 1, "cookbook": 2, "coordin": [1, 2, 4], "copi": 1, "core": [2, 4], "creat": [4, 6], "critera": 4, "cube": [1, 4], "custom": 6, "c\u2086\u2080": 4, "c\u2087\u2080": 4, "d": [0, 4], "data": [2, 4, 6], "data_fil": [1, 6], "databas": [0, 1, 2, 4], "de": [0, 4], "decompos": [0, 1, 6], "decomposer_bas": 1, "decomposerbas": [4, 5], "decomposit": 6, "deep": 1, "default": 4, "defin": 0, "demonstr": [1, 6], "deriv": [0, 1], "describ": 1, "detail": [0, 1], "develop": [1, 2, 4], "dict": 4, "dictionari": 4, "differ": 1, "direct": [2, 4], "directli": [0, 3], "disk": [1, 4, 6], "do": 6, "doc": 4, "document": 5, "doi": [0, 4], "domap": [4, 6], "done": 0, "doplot": 4, "down": 1, "download": [3, 4], "d\u03bd": 4, "e": [0, 4, 6], "each": 1, "earli": [2, 4], "ed": 4, "effect": 4, "emiss": [0, 1, 4], "emploi": 4, "enabl": 0, "encapsul": 1, "energi": 0, "ensur": 1, "entir": [0, 4], "er": [1, 2, 4], "era": [0, 4], "error": 4, "ev": 4, "exampl": [1, 2, 6], "example_tbl": 6, "except": 1, "excit": 0, "expert": 0, "explicit": 6, "explor": 6, "extend": [1, 4], "extens": 0, "f": [0, 4], "facil": 1, "factor": [0, 4], "fall": 1, "fals": 6, "fast": 1, "feedback": [2, 4], "fig": 4, "figur": [1, 4], "file": [1, 4, 6], "file_path": [1, 4, 6], "filenam": [1, 4, 6], "first": [3, 6], "fit": [0, 1, 4, 6], "fix": 0, "flux": 1, "follow": [0, 1, 4], "footnot": 2, "foremost": 2, "format": 6, "found": 4, "fraction": [1, 4], "frequenc": 1, "from": [0, 1, 2, 3, 4, 6], "fulleren": 4, "function": [1, 5], "functional": 5, "fwhm": 4, "fy2019": 2, "fy2023": 2, "g": [0, 4], "galaxi": 0, "gaussian": 4, "gener": [1, 2], "git": 3, "github": [0, 1, 2, 3], "given": 1, "grid": 1, "ha": [0, 4, 5, 6], "handl": 6, "have": [1, 4], "header": [1, 4, 6], "here": 1, "highli": 1, "host": 2, "howev": 5, "http": [0, 2, 3, 4], "hudgin": [0, 4], "hydrocarbon": 0, "hydrogen": 4, "i": [0, 1, 2, 4, 6], "id": [2, 4], "im": 4, "imag": [2, 4], "implement": 1, "import": [1, 6], "importlib_resourc": 6, "improv": 5, "includ": [0, 1, 4, 6], "incorpor": 1, "individu": 1, "inform": [1, 2, 4], "infrar": 2, "initi": 5, "input": [0, 1, 4], "insight": [0, 4], "instal": 4, "instanc": [4, 6], "instanti": [1, 6], "int": 4, "integr": 4, "intens": 4, "intern": [2, 4], "interp": 1, "interpol": 1, "interpret": 0, "introduct": [0, 4], "io": 1, "ioniz": 1, "ipac": [1, 4, 6], "ir": [0, 2, 4], "iron": 4, "issu": 2, "its": [1, 3, 6], "j": [0, 4], "jame": [0, 2, 4], "journal": [0, 4], "jr": [0, 4], "just": 6, "jwst": [0, 1, 2, 4], "kei": 4, "keyword": 4, "kindli": [0, 4], "l": [0, 4], "laboratori": [0, 2, 4], "larg": 4, "last": 2, "later": 1, "lazi": 1, "least": [1, 4], "let": 6, "leverag": 0, "librari": [0, 2, 4], "light": 0, "limit": 0, "lippa": 4, "load": [1, 4, 6], "locat": [2, 4, 6], "m": [0, 4], "magnesium": 4, "majora": [0, 4], "make": 6, "manag": 4, "map": [1, 4], "march": 2, "massiv": [2, 4], "matplotlib": [1, 4], "matrix": [1, 3, 4], "mattioda": [0, 4], "measur": 2, "medium": 4, "meet": 4, "method": [1, 6], "methodologi": 1, "mimic": 4, "model": [0, 2, 4], "molecul": [0, 1, 4], "molecular": [0, 4], "more": 4, "mosaic": [2, 4], "most": 0, "move": 5, "multiband": [2, 4], "multipl": [0, 4], "multiprocess": 1, "name": 0, "nasa": [0, 2, 4], "nc": 4, "nchez": 0, "neg": [1, 4], "neutral": 4, "ngc7023_pypahdb": 1, "ngc7023_pypahdb_tbl_exampl": 6, "niederhut": 4, "nnl": [1, 4], "non": [1, 4], "none": 4, "note": [1, 3, 4, 6], "number": 4, "numpi": [1, 4], "ob": [1, 6], "object": [0, 1, 4, 6], "observ": [1, 6], "off": 0, "offlin": [0, 4], "one": [0, 1], "onli": 6, "onto": 1, "optim": 1, "option": 4, "ordin": 4, "org": [0, 2, 4], "organ": [0, 4], "other": 6, "output": [1, 6], "over": [1, 2], "oversampl": 1, "oxygen": 4, "pacer": 4, "packag": [1, 2, 4, 6], "page": 1, "pah": [0, 1, 2, 4, 6], "pahdb": [0, 2, 3, 4], "pahdb_fit": 6, "pahfit": 1, "parallel": [0, 1], "paramet": [0, 4], "part": [1, 2, 4], "pass": 6, "path": [4, 6], "pdf": [1, 4, 6], "peeter": [0, 4], "per": 1, "perform": [1, 6], "photo": 0, "photon": 4, "physic": 0, "pickl": [1, 3], "pip": 3, "pixel": [1, 4], "pkg_resourc": 1, "pleas": [1, 2], "plethora": 0, "plot": [1, 4], "plot_fit": 4, "plot_map": 4, "plt": 1, "polycycl": 0, "portal": 2, "posit": 6, "possibl": 6, "pre": 1, "precomput": [3, 4], "present": [0, 1], "preval": 0, "previou": 1, "privat": 1, "problem": 1, "proceed": 4, "process": [0, 1], "produc": 6, "profil": 4, "program": [1, 2, 4], "properti": [1, 4], "provid": [1, 2, 6], "puerta": [0, 4], "py": [1, 4, 6], "pypahdb": [1, 3, 5, 6], "pyplot": 1, "python": [1, 2, 4, 6], "qualiti": 1, "quantiti": 4, "quantum": 2, "radi": [2, 4], "rang": 0, "ratio": 4, "read": [1, 4, 6], "redshift": [0, 4], "refer": 4, "releas": [2, 4], "relev": 1, "remain": 5, "remov": 1, "repositori": 3, "repres": 1, "represent": 1, "requir": 6, "research": [0, 2, 4], "residu": 4, "resourc": [1, 2, 6], "resource_filenam": 1, "respons": 1, "result": [1, 4], "retriev": 1, "return": 4, "ricca": [0, 4], "round": 2, "run": 3, "saborido": [0, 4], "same": [1, 5], "sampl": [1, 6], "sample_data_ngc7023": [1, 6], "sanchez": 4, "save": [1, 4, 6], "save_fit": [1, 4, 6], "save_pdf": [1, 4, 6], "scale": [0, 4], "scienc": [2, 4], "scientist": [2, 4], "scipi": 0, "see": 4, "seen": 5, "select": 0, "self": 4, "seri": [0, 4], "server": 3, "set": 6, "shannon": [0, 1, 4], "show": 1, "shown": [1, 6], "signatur": 0, "signific": 5, "silicium": 4, "sinc": [1, 2], "singl": 1, "size": [0, 1, 4], "size_fract": 4, "small": 4, "softwar": [0, 2], "solar": 0, "solut": 1, "some": [1, 4], "sourc": [0, 4], "space": [0, 2, 4], "spectra": [0, 1, 2, 4], "spectral": [1, 2, 4], "spectral_axi": 1, "spectroscop": [1, 2, 4], "spectrum": [1, 4, 6], "spectrum1d": [1, 4], "specutil": [1, 4], "spitzer": [1, 4, 6], "squar": [1, 4], "star": [2, 4], "statement": 1, "static": 4, "store": 1, "str": 4, "streamlin": 0, "string": 4, "studi": 0, "sub": 0, "subclass": [1, 4, 5], "submit": 2, "subsequ": 1, "suggest": 2, "summar": 1, "summari": 4, "supplement": [0, 4], "support": [2, 4], "system": 0, "tabl": [0, 1, 4, 6], "take": [0, 1], "tbl": [1, 6], "team": [2, 4], "techniqu": 0, "telescop": [0, 2, 4], "temperatur": 4, "term": [0, 1], "theoret": 4, "thi": [1, 4, 5], "through": [1, 2, 4], "titl": [2, 4], "tool": [2, 4], "trace": [2, 4], "true": 4, "try": 1, "two": 6, "type": 0, "underwai": 1, "unit": 1, "updat": [0, 2, 4], "upon": [3, 4], "us": [0, 1, 3, 4, 6], "usag": 2, "user": [0, 1], "util": 1, "varieti": 6, "vector": 1, "version": [0, 4], "vibrat": 4, "w": [0, 4], "wa": 2, "wavelength": 1, "wavenumb": 1, "wc": 4, "webb": [0, 2, 4], "websit": [0, 1, 2, 4], "weight": 1, "what": [1, 6], "when": [0, 1, 4], "which": [1, 2, 4, 6], "work": [2, 4], "world": 2, "writ": 4, "write": [1, 4, 6], "writer": 5, "written": 1, "www": [0, 2, 4], "x": 1, "yield": 1, "you": [0, 4], "\u00b9": 4}, "titles": ["1 Background", "2 Design", "Pypahdb Manual", "3 Installation", "API", "Release History", "4 Usage"], "titleterms": {"0": 5, "08": 5, "1": [0, 1, 5, 6], "10": 5, "12": 5, "15": 5, "2": [0, 1], "2018": 5, "3": [0, 3], "4": 6, "6": 5, "academ": 0, "api": 4, "background": 0, "between": 0, "chi": 0, "comparison": 0, "content": 4, "data": 1, "decompos": 4, "decomposer_bas": 4, "design": 1, "detail": 6, "featur": 0, "flowchart": 1, "format": 1, "full": 0, "fwhm": 0, "half": 0, "handl": 0, "histori": 5, "idl": 0, "instal": 3, "least": 0, "line": 0, "manual": 2, "maximum": 0, "modul": 4, "neg": 0, "nnl": 0, "nnlc": 0, "non": 0, "note": 0, "observ": [0, 4], "profil": 0, "purpos": 0, "pypahdb": [0, 2, 4], "python": 0, "refer": 0, "releas": 5, "spectroscop": 0, "squar": 0, "submodul": 4, "suit": 0, "support": 1, "tool": 0, "uncertainti": 0, "usag": 6, "v0": 5, "width": 0}})
\ No newline at end of file
diff --git a/usage.html b/usage.html
index f44ccfe..1c2f1d1 100644
--- a/usage.html
+++ b/usage.html
@@ -8,7 +8,7 @@
-
+
@@ -18,7 +18,7 @@
-
+