Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

[UNMAINTAINED] The library is no logner maintained by me as I don't work in the area anymore. Please see the forks for newer, maintened versions.
XPPy is a Python interface for Bard Ermentrout's XPP. XPPy was inspired by a similar XPP-Matlab interface by Rob Clewley. The main feature is ability to parse and change XPP's ode and set files, and run a simulation using XPP. The package contains some data wrapping classes that aid working with data files produced by XPP (timetraces, allinfo and bifurcation files files). In addition, it contains additional plotting tools for matplotlib. #################
# LICENCE #
#################
XPPy is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XPPy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with XPPy in COPYING.txt file. If not, see http://www.gnu.org/licenses/.
#################
# DOCUMENTATION #
#################
Since XPPy is a collection of tools I created on a course of my work, it was primary used by one person, therefore it is not extremely well documented.
Nevertheless, there is a Doxygen-generated documentation for the package in
the folder doc. You can choose between HTML and LaTeX documentation.
To obtain PDF from LaTeX documentation you need to have PDFLaTeX installed.
To make PDF file just go to the LaTeX documentation folder and type 'make', e.g.:
$ cd doc/latex
$ make
Moreover, every object contains docstring, which more or less explains its purpose.
#################
# INSTALLATION #
#################
Before you install XPPy you should install NumPy, which is extensively used by XPPy. Also if you want to use plotting tools (xppy.utils.plot) you should have matplotlib. Note that XPPy installation script does not check for those packages and will install anyway, the error messages will appear when you will try to import XPPy.
XPPy has a Python distutils setup script. To install XPPy just unpack the source package and change the directory, e.g.
$ unzip xppy-x.y.z.zip $ cd xppy-x.y.z
(where x.y.z is a current version number, e.g. 1.2.3), and type the below command to install the package
$ python setup.py install
This command will install XPPy in as standard site-packages folder of the Python version used. If you have more then one Python on your machine, it is advisable to check which version is currently used or call a certain version of Python by writing, e.g. python2.6 instead of just python. If you have some problems or want to know more about the installation proces, please check distutils documentation first. Before you start using XPPy make sure that path to XPP is present in your PATH variable. Easy way to check that is to type xppaut in the terminal window anywhere outside the XPP directory, that should open XPP window. If you have some problems with XPP itself, please refer to XPP documentation.
#####################
# HOW TO CITE XPPY? #
#####################
If you want to refer to XPPy in a publication, you can use "Nowacki J. XPPy. 2011. Available at: http://seis.bris.ac.uk/~enxjn/xppy/."
or BibTeX:
@misc{xppy, author = {Nowacki, Jakub}, title = {{XPPy}}, url = {http://seis.bris.ac.uk/~enxjn/xppy/}, year = {2011} }

About

[UNMAINTAINED] XPPy is Python interface for Bard Ermentrout's XPP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages