pyfr-1.5.0/000077500000000000000000000000001277740313300125045ustar00rootroot00000000000000pyfr-1.5.0/.gitignore000066400000000000000000000003261277740313300144750ustar00rootroot00000000000000# Python crud *.pyc *.pyo # Distfiles related goo MANIFEST dist/ build/ # Documentation doc/build/ # PyFR mesh and solution files *.pyfrs *.pyfrm # Mac OS X junk .DS_Store # Backup files *~ # Hidden files .* pyfr-1.5.0/AUTHORS000066400000000000000000000006021277740313300135520ustar00rootroot00000000000000Harry Davis Antony Farrington Arvind Iyer Niki Loppi George Ntemos Jin Seok Park Brian Vermeire Peter Vincent Freddie Witherden pyfr-1.5.0/LICENSE000066400000000000000000000027631277740313300135210ustar00rootroot00000000000000Copyright (c) 2012, 2013, 2014, 2015, 2016 Imperial College London All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: a. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. b. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. c. Neither the name of PyFR nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. pyfr-1.5.0/README.rst000066400000000000000000000013501277740313300141720ustar00rootroot00000000000000PyFR ==== Overview -------- PyFR is an open-source Python based framework for solving advection-diffusion type problems on streaming architectures using the Flux Reconstruction approach of Huynh. The framework is designed to solve a range of governing systems on mixed unstructured grids containing various element types. It is also designed to target a range of hardware platforms via use of an in-built domain specific language derived from the Mako templating engine. Authors ------- See the AUTHORS file. License ------- PyFR is released under the New BSD License (see the LICENSE file for details). Documentation is made available under a Creative Commons Attribution 4.0 license (see ). pyfr-1.5.0/doc/000077500000000000000000000000001277740313300132515ustar00rootroot00000000000000pyfr-1.5.0/doc/Makefile000066400000000000000000000126671277740313300147250ustar00rootroot00000000000000# Makefile for Sphinx documentation # # You can set these variables from the command line. SPHINXOPTS = SPHINXBUILD = sphinx-build PAPER = BUILDDIR = build # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) src # the i18n builder cannot share the environment and doctrees with the others I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) src .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext help: @echo "Please use \`make ' where is one of" @echo " html to make standalone HTML files" @echo " dirhtml to make HTML files named index.html in directories" @echo " singlehtml to make a single large HTML file" @echo " pickle to make pickle files" @echo " json to make JSON files" @echo " htmlhelp to make HTML files and a HTML help project" @echo " qthelp to make HTML files and a qthelp project" @echo " devhelp to make HTML files and a Devhelp project" @echo " epub to make an epub" @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" @echo " latexpdf to make LaTeX files and run them through pdflatex" @echo " text to make text files" @echo " man to make manual pages" @echo " texinfo to make Texinfo files" @echo " info to make Texinfo files and run them through makeinfo" @echo " gettext to make PO message catalogs" @echo " changes to make an overview of all changed/added/deprecated items" @echo " linkcheck to check all external links for integrity" @echo " doctest to run all doctests embedded in the documentation (if enabled)" clean: -rm -rf $(BUILDDIR)/* html: $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." dirhtml: $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." singlehtml: $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml @echo @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." pickle: $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle @echo @echo "Build finished; now you can process the pickle files." json: $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json @echo @echo "Build finished; now you can process the JSON files." htmlhelp: $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp @echo @echo "Build finished; now you can run HTML Help Workshop with the" \ ".hhp project file in $(BUILDDIR)/htmlhelp." qthelp: $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(BUILDDIR)/qthelp, like this:" @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PyFR.qhcp" @echo "To view the help file:" @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PyFR.qhc" devhelp: $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp @echo @echo "Build finished." @echo "To view the help file:" @echo "# mkdir -p $$HOME/.local/share/devhelp/PyFR" @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PyFR" @echo "# devhelp" epub: $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub @echo @echo "Build finished. The epub file is in $(BUILDDIR)/epub." latex: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." @echo "Run \`make' in that directory to run these through (pdf)latex" \ "(use \`make latexpdf' here to do that automatically)." latexpdf: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through pdflatex..." $(MAKE) -C $(BUILDDIR)/latex all-pdf @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." text: $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text @echo @echo "Build finished. The text files are in $(BUILDDIR)/text." man: $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man @echo @echo "Build finished. The manual pages are in $(BUILDDIR)/man." texinfo: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." @echo "Run \`make' in that directory to run these through makeinfo" \ "(use \`make info' here to do that automatically)." info: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo "Running Texinfo files through makeinfo..." make -C $(BUILDDIR)/texinfo info @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." gettext: $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale @echo @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." changes: $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes @echo @echo "The overview file is in $(BUILDDIR)/changes." linkcheck: $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck @echo @echo "Link check complete; look for any errors in the above output " \ "or in $(BUILDDIR)/linkcheck/output.txt." doctest: $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest @echo "Testing of doctests in the sources finished, look at the " \ "results in $(BUILDDIR)/doctest/output.txt." pyfr-1.5.0/doc/ext/000077500000000000000000000000001277740313300140515ustar00rootroot00000000000000pyfr-1.5.0/doc/ext/tikz.py000066400000000000000000000316771277740313300154220ustar00rootroot00000000000000# -*- coding: utf-8 -*- # Copyright (c) 2011 by Christoph Reller. All rights reserved. # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # THIS SOFTWARE IS PROVIDED BY CHRISTOPH RELLER ''AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL CHRISTOPH RELLER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY # OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # The views and conclusions contained in the software and documentation are # those of the authors and should not be interpreted as representing official # policies, either expressed or implied, of Christoph Reller. """ tikz ~~~~ Render TikZ pictures We make use of * latex * pdftoppm (part of Poppler) * pnmcrop (part of Netpbm) * pnmtopng (part of Netpbm) Author: Christoph Reller Email: creller@ee.ethz.ch Version: 0.4 $Date: 2010-12-17 15:32:57 +0100 (Fri, 17 Dec 2010) $ $Revision: 37 $ """ import tempfile import posixpath import shutil import sys from os import path, getcwd, chdir, mkdir, system from subprocess import Popen, PIPE, call try: from hashlib import sha1 as sha except ImportError: from sha import sha from docutils import nodes, utils from docutils.parsers.rst import directives from sphinx.errors import SphinxError try: from sphinx.util.osutil import ensuredir, ENOENT, EPIPE except: from sphinx.util import ensuredir, ENOENT, EPIPE from sphinx.util.compat import Directive class TikzExtError(SphinxError): category = 'Tikz extension error' class tikzinline(nodes.Inline, nodes.Element): pass def tikz_role(role, rawtext, text, lineno, inliner, option={}, content=[]): tikz = utils.unescape(text, restore_backslashes=True) return [tikzinline(tikz=tikz)], [] class tikz(nodes.Part, nodes.Element): pass class TikzDirective(Directive): has_content = True required_arguments = 0 optional_arguments = 1 final_argument_whitespace = True option_spec = {'libs':directives.unchanged,'stringsubst':directives.flag} def run(self): node = tikz() if not self.content: node['caption'] = '' node['tikz'] = '\n'.join(self.arguments) else: node['tikz'] = '\n'.join(self.content) node['caption'] = '\n'.join(self.arguments) node['libs'] = self.options.get('libs', '') if 'stringsubst' in self.options: node['stringsubst'] = True else: node['stringsubst'] = False return [node] DOC_HEAD = r''' \documentclass[12pt]{article} \usepackage[utf8]{inputenc} \usepackage{amsmath} \usepackage{amsthm} \usepackage{amssymb} \usepackage{amsfonts} \usepackage{bm} \usepackage{tikz} \usetikzlibrary{%s} \pagestyle{empty} ''' DOC_BODY = r''' \begin{document} \begin{tikzpicture} %s \end{tikzpicture} \end{document} ''' def render_tikz(self,tikz,libs='',stringsubst=False): hashkey = tikz.encode('utf-8') fname = 'tikz-%s.png' % (sha(hashkey).hexdigest()) relfn = posixpath.join(self.builder.imgpath, fname) outfn = path.join(self.builder.outdir, '_images', fname) if path.isfile(outfn): return relfn if hasattr(self.builder, '_tikz_warned'): return None ensuredir(path.dirname(outfn)) curdir = getcwd() latex = DOC_HEAD % libs latex += self.builder.config.tikz_latex_preamble if stringsubst: tikz = tikz % {'wd': curdir} latex += DOC_BODY % tikz if isinstance(latex, str): latex = latex.encode('utf-8') if not hasattr(self.builder, '_tikz_tempdir'): tempdir = self.builder._tikz_tempdir = tempfile.mkdtemp() else: tempdir = self.builder._tikz_tempdir chdir(tempdir) tf = open('tikz.tex', 'w') tf.write(latex) tf.close() try: try: p = Popen(['pdflatex', '--interaction=nonstopmode', 'tikz.tex'], stdout=PIPE, stderr=PIPE) except OSError as err: if err.errno != ENOENT: # No such file or directory raise self.builder.warn('LaTeX command cannot be run') self.builder._tikz_warned = True return None finally: chdir(curdir) stdout, stderr = p.communicate() if p.returncode != 0: raise TikzExtError('Error (tikz extension): latex exited with error:\n' '[stderr]\n%s\n[stdout]\n%s' % (stderr, stdout)) chdir(tempdir) # the following does not work for pdf patterns # p1 = Popen(['convert', '-density', '120', '-colorspace', 'rgb', # '-trim', 'tikz.pdf', outfn], stdout=PIPE, stderr=PIPE) # stdout, stderr = p1.communicate() try: p = Popen(['pdftoppm', '-r', '120', 'tikz.pdf', 'tikz'], stdout=PIPE, stderr=PIPE) except OSError as e: if e.errno != ENOENT: # No such file or directory raise self.builder.warn('pdftoppm command cannot be run') self.builder.warn(err) self.builder._tikz_warned = True chdir(curdir) return None stdout, stderr = p.communicate() if p.returncode != 0: self.builder._tikz_warned = True raise TikzExtError('Error (tikz extension): pdftoppm exited with error:' '\n[stderr]\n%s\n[stdout]\n%s' % (stderr, stdout)) if self.builder.config.tikz_proc_suite == 'ImageMagick': convert_args = [] if self.builder.config.tikz_transparent: convert_args = ['-fuzz', '2%', '-transparent', 'white'] try: p1 = Popen(['convert', '-trim'] + convert_args + ['tikz-1.ppm', outfn], stdout=PIPE, stderr=PIPE) except OSError as e: if e.errno != ENOENT: # No such file or directory raise self.builder.warn('convert command cannot be run') self.builder.warn(err) self.builder._tikz_warned = True chdir(curdir) return None stdout, stderr = p1.communicate() if p1.returncode != 0: self.builder._tikz_warned = True chdir(curdir) raise TikzExtError('Error (tikz extension): convert exited with ' 'error:\n[stderr]\n%s\n[stdout]\n%s' % (stderr, stdout)) elif self.builder.config.tikz_proc_suite == 'Netpbm': try: p1 = Popen(['pnmcrop', 'tikz-1.ppm'], stdout=PIPE, stderr=PIPE) except OSError as err: if err.errno != ENOENT: # No such file or directory raise self.builder.warn('pnmcrop command cannot be run:') self.builder.warn(err) self.builder._tikz_warned = True chdir(curdir) return None pnm_args = [] if self.builder.config.tikz_transparent: pnm_args = ['-transparent', 'white'] try: p2 = Popen(['pnmtopng'] + pnm_args, stdin=p1.stdout, stdout=PIPE, stderr=PIPE) except OSError as err: if err.errno != ENOENT: # No such file or directory raise self.builder.warn('pnmtopng command cannot be run:') self.builder.warn(err) self.builder._tikz_warned = True chdir(curdir) return None pngdata, stderr2 = p2.communicate() dummy, stderr1 = p1.communicate() if p1.returncode != 0: self.builder._tikz_warned = True raise TikzExtError('Error (tikz extension): pnmcrop exited with ' 'error:\n[stderr]\n%s' % (stderr1)) if p2.returncode != 0: self.builder._tikz_warned = True raise TikzExtError('Error (tikz extension): pnmtopng exited with ' 'error:\n[stderr]\n%s' % (stderr2)) f = open(outfn,'wb') f.write(pngdata) f.close() else: self.builder._tikz_warned = True chdir(curdir) raise TikzExtError('Error (tikz extension): Invalid configuration ' 'value for tikz_proc_suite') chdir(curdir) return relfn def html_visit_tikzinline(self,node): libs = self.builder.config.tikz_tikzlibraries libs = libs.replace(' ', '').replace('\t', '').strip(', ') try: fname = render_tikz(self,node['tikz'],libs); except TikzExtError as exc: info = str(exc)[str(exc).find('!'):-1] sm = nodes.system_message(info, type='WARNING', level=2, backrefs=[], source=node['tikz']) sm.walkabout(self) self.builder.warn('display latex %r: \n' % node['tikz'] + str(exc)) raise nodes.SkipNode if fname is None: # something failed -- use text-only as a bad substitute self.body.append('%s' % self.encode(node['tikz']).strip()) else: self.body.append('%s' % (fname, self.encode(node['tikz']).strip())) raise nodes.SkipNode def html_visit_tikz(self,node): libs = self.builder.config.tikz_tikzlibraries + ',' + node['libs'] libs = libs.replace(' ', '').replace('\t', '').strip(', ') try: fname = render_tikz(self,node['tikz'],libs,node['stringsubst']) except TikzExtError as exc: info = str(exc)[str(exc).find('!'):-1] sm = nodes.system_message(info, type='WARNING', level=2, backrefs=[], source=node['tikz']) sm.walkabout(self) self.builder.warn('display latex %r: \n' % node['tikz'] + str(exc)) raise nodes.SkipNode if fname is None: # something failed -- use text-only as a bad substitute self.body.append('%s' % self.encode(node['tikz']).strip()) else: self.body.append(self.starttag(node, 'div', CLASS='figure')) self.body.append('

') self.body.append('%s

\n' % (fname, self.encode(node['tikz']).strip())) if node['caption']: self.body.append('

%s

' % self.encode(node['caption']).strip()) self.body.append('') raise nodes.SkipNode def latex_visit_tikzinline(self, node): tikz = node['tikz'] if tikz[0] == '[': cnt,pos = 1,1 while cnt > 0 and cnt < len(tikz): if tikz[pos] == '[': cnt = cnt + 1 if tikz[pos] == ']': cnt = cnt - 1 pos = pos + 1 tikz = tikz[:pos] + '{' + tikz[pos:] else: tikz = '{' + tikz self.body.append('\\tikz' + tikz + '}') raise nodes.SkipNode def latex_visit_tikz(self, node): if node['caption']: latex = '\\begin{figure}[htp]\\centering\\begin{tikzpicture}' + \ node['tikz'] + '\\end{tikzpicture}' + '\\caption{' + \ self.encode(node['caption']).strip() + '}\\end{figure}' else: latex = '\\begin{center}\\begin{tikzpicture}' + node['tikz'] + \ '\\end{tikzpicture}\\end{center}' self.body.append(latex) def depart_tikz(self,node): pass def cleanup_tempdir(app, exc): if exc: return if not hasattr(app.builder, '_tikz_tempdir'): return try: shutil.rmtree(app.builder._tikz_tempdir) except Exception: pass def setup(app): app.add_node(tikz, html=(html_visit_tikz, depart_tikz), latex=(latex_visit_tikz, depart_tikz)) app.add_node(tikzinline, html=(html_visit_tikzinline, depart_tikz), latex=(latex_visit_tikzinline, depart_tikz)) app.add_role('tikz', tikz_role) app.add_directive('tikz', TikzDirective) app.add_config_value('tikz_latex_preamble', '', 'html') app.add_config_value('tikz_tikzlibraries', '', 'html') app.add_config_value('tikz_transparent', True, 'html') app.add_config_value('tikz_proc_suite', 'Netpbm', 'html') app.connect('build-finished', cleanup_tempdir) pyfr-1.5.0/doc/fig/000077500000000000000000000000001277740313300140165ustar00rootroot00000000000000pyfr-1.5.0/doc/fig/couette_flow_2d/000077500000000000000000000000001277740313300171025ustar00rootroot00000000000000pyfr-1.5.0/doc/fig/couette_flow_2d/couette_flow_2d.png000066400000000000000000001270361277740313300227050ustar00rootroot00000000000000PNG  IHDR!:$iCCPICC Profile8UoT>oR? XGůUS[IJ*$:7鶪O{7@Hkk?<kktq݋m6nƶد-mR;`zv x#=\% oYRڱ#&?>ҹЪn_;j;$}*}+(}'}/LtY"$].9⦅%{_a݊]hk5'SN{<_ t jM{-4%TńtY۟R6#v\喊x:'HO3^&0::m,L%3:qVE t]~Iv6Wٯ) |ʸ2]G4(6w‹$"AEv m[D;Vh[}چN|3HS:KtxU'D;77;_"e?Yqxl+ pHYs  @IDATxKneKUD Z#`t0&3Cyq? GQgwKKFDF~ֲk{~_@@@@@`#?JS@@@@۷    l&'L     EH }     ;!2    ;!@@@@@`So?M'8    <[wBlV     ױ78    NH m     Nl P{ؿX  Vud RoyYY  ;!ߍ<  ]^wBɋw@CwB ,9cᬔBC@5OX;;!gE@?N^k{  T(O@c  o?(   PG|kբ   @>]ro? uQ?֮Lr!0'ޜqr[ُmJ>Ԥ֨}I݋ <.k86)\lxϺެ >罾ޟ=7'F@,NH0͝/0kC@Z^~eE~C@:׊N@@o\L׍(*6lJ͍+^q:f _ձX̯8 H/U+Wq)5럩~\ -#    ) yʾh @@$`Z@@G_="  0(C|Ckнx{+^<?x~"    @E?#z,SJF@H=/RY.gJ?דCuZ SU[^Fk8 %ׄfK5XA ,Kr4>~'XY+61  @@󲖘cxluQVƥ+frMg6tW|ԙ@    \X yG  @Q@:AS|gn%! +`?B#f5HнB3r{.,c_:  p/άq.ዙfr_8 G_[ovۣ?#'3UV^T\ܹ׌2w F@@4ϓOq]qS\@@cy:oWWc[z\kzKՏʋ\ҥŎ\|^c3kSM F8FE@6p6ۻƊz?N`zrHk\5kom9FY@o867    l*-3|>*rz{I~],Zׯ8sGksM|\V~VK~WL]ϣ:ӽ4ĥr9wN]+/;ccָ1O@}:|^}/Y+@eO}>WJ/\Gcni-_ʥbTLkKPT>"?eo@w..w>Wbx9} oGjz brc'q|Gr}@砷׏[!gf#@@`s_QZW/m/?-, yO=h@@DZD     Uo<;!MPǗhbּXSuF򕫚#5Z_u{%ZkX_#ZMKy+~u?,vNOՉ5zˊmeEMj|\גK͔њkk[Ul8R uqyNȿN. Pyl-WG˪:.}w{ u:)V9|\OTh-~@驐ʷkz/x_m-~q~Pqu|릥F̵<#ʵ:HМ~D~ΫT"p@wc/ :5^T֍    S/B)A@@@@@(p.#^oNWpQWl|99`Ǻ/4;;q'=Q3q[EX<^!t>sν:?D߭v;" s񗶧~ǤkZTC5kZjX-Q5ʷz+ko~Z{Qȴ%3c7W Qkc֚k[-_Îc,5-FH/:w=r?ZSA;8קTLi,H 躬_)w}o|)FKb Wzv=?Z_yFi<ù?ugYWX+oF~{C\J#  g~$k=ך^Kvk+?7O|o+0{Mg[rs1畦31?}3D    y^0     _|}h[M'oQ@Mģů+Zs{)ps;9 yf$%}R @J|<'~|kM+9:|h[or)'?ʷk\~Fk:mi~v~{u)#?ʷk\~ϵvym>[5z̝V{<4}Cz͑1,SU!u @@$Im  Cq\h    Qy<"    ~!e"    p!%uGi^mޣٽ~yOWk7}W;mޚb|kjXهuZOo}?+ޭz#{ߏwRwۄ۷Nd-Ll6/oFw3Գj5dԱjjq9R4S_~xqkj)OǪ[SuZu\5[sSZ+V\KW lߪ!l[bRkXb}VǪ?W˷[r}ɵ|{~T|{>3- w[  [ǞηTZ=ku׏9q,qlK5bN^-_9Owjrqz|鼎s[|X.ǤxcF.ևz(jw)kY|b}h~K ֜ױjl\ @n@@-ZZ2\+zգT Z'?ڏ򮾕:Vǚ_V;[#[>R5z/X?rokzeÙ\ N,   K]:zhagΊ 9f?L/;n-֎8>8 iߧE)O5JkU6z,bUȪ5YQo'xgޔy.Uk6?Vq*FcXW-c_:r]Z[~FOV5z{}䯪auf2[s64j`fq-3{|̼f~LY3ӊyzZKxӂ=@@@@@!7@$    | "{     /BnJI@@@@EO @@@@@`^     )!    *%@@@@@S!?-C@@@@ xrTJ"    _! L=ܪ%ւڜ>:5Te]-1Ugݩ:ʙݞɳQ뎞GԈ=Xo}Fn^84ZG;R;mk&Fzֵbxqߵ2@@`W*]-Դjzu \>THȚbc};R#w;Lk׹v=ke{c6?93Ln칵ߘ1W뾋ce  Y^?|g9؏:VS/w̮=kNRlMc-5J=Q֯8Ϸ)>R{H9XhȭF?C؃׳#g݇=f`);!y]Y HYXDrul,{ft35nuJzj>{zSAuz֤mj==s򭏮:Zk}bs,г9Mϙѻ%5xZrץF*&05oKh#J|7f  @?&-ñfZE͝:o9|{1;Mc[jjXjY]C~պjgXO<|F隴页R5C:jV#|5 j\2瞚73K&$;!wf@񅹏5"[j|?z߈VvN>la:5juRkݨQ/6=quW?>vV/c~͛ɏ5ï\_!FC;҃QھzX]C=Qr-,;Y#d%S'kzʷQpq>װsg/m=h߻ΕM*uNaʳc ,X\{ዄAk)6ָqz]wZKhO=sc#r}9cfl(-ylVCzRs1GOcs?깘ۥ&zsO^q{{.9sۑkk-RVX^!,W)ZuDX/Y#U_u{n?{taܟv>bTiq-ͳG^vfܖ6LX3wb.հ9F{5F묪/zH]+jF5`qf-uo+jƊ}>ܙ~:@k a}B@BRϛl\e9R k1sXZ{kO>G{9K z5߶5fWr?X=rEo3Xz5rb|Ojzro˝s[>R~-gyG猽sx?)}g=֟C1ceィ޼uW\zl-y{TqX#8^'k0b?nUj]z:SׯG/ƹjDZ{PsVӟ#\M;;{驳5uY;:?dz=Z+zњokΧ\Rv3fGS#}CcR\i((Ŕ4o.&w^y\;hnKgq<X-5G{~ 2" ߃OUFW3)\Ms2G]c.Vc0=}f+u?lh&sjNێG{ _s+sn4RQ8y [@91fnlu'Ջﯾ]Frk\9yb];ϵE|loܪ[KR\:vN霎}|n_9~'VԈuz{XF][=XQ5lh:KN=kuD=Gy=@*yW>Zb{j&x#[?->^[{i;ږ@Z>Ƿ1?Y&G@6l Ly@@@@.ٟ@@@@@`^SY \B{Fl9Ŗ[3_ު:9YjXݣ먗}YC5+jZ>fkh=:oL-9CaaG?{Y'9 .iKy߅@s iԺ_[T7m}Rin7bS}Ymej}?oVN4|I~zy~װ:+z54o\l[je7g%0sb6jEnq}TT(Rcb,eǩ+O|暩a_ïR5||nE1&zx*ychO͟ךN5b-R[>Leu|ql弳|RaJܙoJ # P:7jhe-_6G}=Zcsq[}T/ySznLK(5JcWѺ[S.6w;\|ϵR\i,)R3;^z|Znҵg U{6{>ۻݺO0M!@@@@x'd     +b# l)CeUn6\QP@@o?_|ĪY$ V{;t'c\kUulT\r1q\\tq̷+j։^.3o}ֈV3>Jk=jzPϹ^ZK뙭ѓcE Yi[3U+:Z_?"eN]_<]>13ױ<-5_y9gZGm)| IO>͏=zbQ:m~{_1ZQw >#Ԙͷ9}51ڃ#-`x,pv=ie"䝐W#K5cu  GU5|}P |?5vL̉_39k31'L*>uϬϣ?#fgrۺ# {%ʞ{o9aJW*    DZORB@@@@C⍐3) Gwy>O1v>x>jQX/c,7mƪ:ؼl~BИJ㩱X#9jV/ܸ/\RLKH(4f1ؘƽW.j+jX})c5sTbyb{-ŔƬ=J1|~*ri<7ܸ΍_ ׫);X   *d# Y>ա7@@f{󛱱@@     ^N  ﺶ    DZzR @@@@&p _j揥u>WC9~xKRթը寪QGQW3Q MKI:T ׸[j\r}ĸ\_-\?[ʋkVZߔSi8zv?O[=wK=G}~'d1     0(# @@@@~8v[8Q  VјykDl|N6W6׷b4Ƕ3uV2Ӈ3ZC:?宪Ѻ\7ͷ:H1Y0X֎G:Zc~|\[͵y 3o3" [ xcjΏle-_YWڶVǮRCVG}6Wf.1Xܟˍsi͍jǽn7c~jhbU31'+.R/-VT[jX{jXoFWQo}OZ~n|;[c&?檧Fssy-}_k[{\sj[/zoƓ#    n;!WP@}xTk^l$@{ 8:H%s3<^QTV}yK}fzE> R_ZfS*oy/hΕVGt뜶5xS 8>j֙QWϩ5F\S.mɷ>k5GJ=|ֈN.R~k/+jhRVղY1W۷u﷮;|X\K~*K_C1+75{-uZ굾4>Bmmfrs5[n5o8vbO# P՛_{SsƖJcy3Ԙa&,fgWYQczYY~O>P-^l5L3#^+?=s5E@G#{E8rV{GVuFQLMq@ys5ghzy轵ǭzkgz3ה\@ Lq>N1:-5v8o4[-/WZj5l^`frWYQ}lj_@jM۹RrzXՏU-3ܷyNG '"^=>Zz0nճքqj!gގ{  ncLWsu޶gDZS:Xm5ϥxjWM3:[g>FjfORz+j+W%W5zrUl@~{D@xG_Z5U}V>g[ssqުS5l?;K5jcZs=j4GzfXjAי- #'X@@@IDAT7;ȅf ,8;!{~OO/"qROOǹӸsٖ:1j- H}XI)ߒ[rk_k[ܑz>׵Z=kc8SsW-3gu=rTn^KR|eTk։fފq3Rc&ʡT"Z'߻սu߽ٵښ|3ѻW'%|     {$@@Jg;=lX7z{v#n>s}-uJ^jGN-_檆m}|_c43oYч\fk5Z/[+Uw]L~oWʋ- +pmx@@Hƕֲ}ٵu_̮uVIkٮuδ^ΟGE 񗱞{Y9  {bT<@%;!fLDƩ^3ՋQmݏeqeu[s5_kU5Ol-jjL>[3fXb{{#McƊѱ\xN:~,jX\k\|+?[]wYޯu螰{@6zOLKՈy8/bϝ2-1>NxӚZK;7#lkj]|פu!    4sыA< Wc>\Mbkyj[nk=HkҘTlǚß:kYza=|-?)q}kE65v>ΟO6ޓhzyfusŖƔ1,׏jbT/7nc14f1v}{b(YLnx {  7s!    8ӽqW# N"gޝRzjQliNi ^7˷G>x.68Co/jU-ձG=k&& G@@`R%`UY'0{jVJ;5Ί=k'8̗@@@@wBڋ=_>},FQ5Ư^WmԓUF_7xو[Pe9xd~r85+{ 0ەRUMU5X=kֈf۴@\oks_J+P7zߥtյ^ϸfwBƠG]#|\lsv=zխzݪnڞ̮Ƴ_Zq}zb}}K|:urC`ŵZQz=_OoWNݝri_0-VnjΌz^ыӧk5}8S\^O-_}@{į=_|nk3EbR1TMe>kE߾^/jfuJ;OKnFO~HzFˑ[A=%檆m[UVgE Vև-iZY}ck17SjvlhʵZ- Z7﹘kΌǹgjܸǼTm2d+{    D;!m]WOXWS]9ܽk*o|!5j};k֒_)ɾS1Z--wXߝjȅ- ۏ-S@@I{!JZb e~z]ѵz/{k{jc ,O󹭯ӛkZ|_}̮gu~TǶ+kK['YjZ<@^e7*y@@@@@ff  un{gK꼏~`JZkhNmUs4_u\ٻޘ['ouZz)ԨͷzG+:kjS=ZhO[Yk^޵jkkjl@=^Ù9@@@@xcX8    l'R@@@@~,4,͕o=G;ֹ|nM(?SjXZ ]SOl@+05A9Riz,&5?5okTxneRbKqyS~\(ogk5Oi=-V'W5װO5l6jأ:|Ui/I|1qՍqqbq1&[>6WW*6UGq㖸RLkMKŪZ YsGc#@>)N珼_KŨ_-K=[/Zz9:׻}o{    )>G3꧍ǖu<>> Ry=鼭*7{9-6c~?:mS1sӶ{13>z-7UC5[k9USu^OVq4f\y;cS9s#P.1;zT5zg=^g]FZzұ[o;NȽ͙@@@@G iuY,     NfD@@@@ N]l    of@@C@x<>S|כ:OmK6RԈ+j֡yJc6=R1#Z:0`u볞1b:#@XC:Kfv@@Ώxu>7v|^-k(ŔzUuz*vZZWMpE5XKEONM\cmy-7uGĸTLZbS>[@s ~yhE1[rSyso{iKrJ۔gOms8|Ncq?WZ[jo\/=5԰x9>ڷ>>qNK~5lSK.~|[^,\;=,/Wo:G`@^#k.gP5^Ggc17qT<@@@@@a^X  u"@@`_t(R@8^Z?{gkރ7ٵȷ]1@$;!Z@@]:V\Gɑ [E-27zT{˹K׼bN[Q7c 8L?3_u~Mɏ9{d9clur5VZ#׃}6_[ꡥZ~L~Ko/ժ~VYKOi[W?_Tﭕst-?[j>65n8qG..X#cq<@`>q~z'aMG@@@@׬,.M9@zGWք  8X ) z\H?5Uoܟ @ya]sV P@NH}qF1^zͭZ8Qlz)ͣ\?~:ʵs\5Ru9Tm\񪥺:}cKuZkXͳYZz6cYGk[-\]德{%N[sw?56ji|1f-@@@@@ i     ^^Ux[gT{m]Ws=<{ \S@_G5G-O9{5Y^ >>Ϗ{5<     <~yל#    ۏ]c2@@znR-5,~#=Xマ>(b:b^˘?҃X޹-[ {{s+e">9@@@@x&cB@@@@@`?^Ϛ@@@@x/B>h@@@@E @@@@G lױ&F@9]j9b|:vO[kU|j[-Zq>gzZgjӪ:5ۏvE-[UkzV D_~ug    &o6!!    ~fʜOŧbSqӾnbda\Q/O1gN"N@_czY^of1jgʵV'КRS^[^Q6W̞5r=X/}(Q1|5ULij鑊Xܪv&g?Q6ie߯Z;[@@@@?} F    \MmSo:5=4cӲ|XږSZښ- -733WY94KRbRLiLuJ11˷q{ľ?Ώ[9[ysFOmgk|X7札:!ohcǭ6Zڎ|m۪5R_9ZCi9_TCcʋ=|O=Zq.bTöןc9-ȕ4t?k]:έAq6X.lgozs=<  U{;xEj  .cN΄  =f_45˪@@k "䵯#    pz7}93Y[lRlk?fb&q \I`몾v~MVk}|̯BkRYKuZKuR%K*ՈҘ#cg{x|{eO#[G1~us5,w:V}Y-{uQ>gj8}oKk+lkS^Ǿ    'DZOt1h@@@@; qQg_S|;m{|M>s+?NsszǭG~g_h&A@ |>Õe~NȞ k'ZqͿ3=˞uv=>cgßm/]Rŧ[UɍNneQz6OVZFKkzLk5#6Z 7[)#F?w=wc-     rC\J#    o]     T'%Ic\)gEWZ_ڪbjs+- W}_r4Ϭzr5_oC=s~djy5UZoPcEO~Fo}eoN.W1ԱZlTsa#=V%߳oǵd@@@@?} E    \U!z@@@@mggϖ[?C}:>FcM)&ns 5ӹ>I)77:ʵc霎x\ܳ[=fQjռH-y6|մmKT~O\V;>R:guX{E~fZuFճcֈGzb/:nVꝵVZ[֨Zl@`N,j6H>_[o_f׭>  rOG0Z#}@@4  \`勅+k-_(@@N,      B!W(R@@@@?#[s`W4TC@[}y_iNߧRS|s[}5R& ^Rv~]so1V'r5stζ/>|~\/؃j[֢KucTly@_^ru>]k[Zl~Fk{#Z/uIkΖ:|SQ˯hߺFk>zQx-wi:B@ά     B@|-*5c~)׏żcWZZ!cc   )<_]Q֬:#=lU [@@`k䋐[OJ}@@@@xR@@@@U!wf2@@@@'ϻ@@@@]xrWn&C@@@@ykΊ@@@@U-_NƠ6V@wxzRjX]1Om^k /^e9#g']ej&{R=bJc>_w1vUkۣd&p7wnܜ[{歭'/{֏=sI}  p_s=9yVϟoMߚa$׺~F]\?q1͑q;WcFj- 5k7\ sV'FszO霶1[y?r>g` >_k<]|Қ\xk@@ 9g1=yEs.ʺ^8)7-/9)Y=R1#"fkkn}Nq3F5ufj) V>kΞ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@@@E@@@@G"#.3D@@@@8^<Ξ@@@@x/B>2H@@^@@Q@OW[zť֡\+Tϕzzn?G`Ssp ks8NS.i__>;{ʉ:oZe@%Ɨ+ӳ:ճTM?IŕνuzRcR`VS[X5@8J@_[m}}km1|]x-Vu5]%I}r_n{^ZʋR!    r$@@@@hEV)@@@@@`H!HB8>hQوQ@53! Zh\CKRl^_ԇbN|Ҝx]O@Ϊ{ѹGg|~:?}l5ctr^ljA whcWux^[y s# vnF}k<;Wr㸯|! }@@@@@`@닕K&    ?  @ @Xxs#}V|.dtΥj/k盛$t>qZ̭U۵|xt4~㹹\i\sK%%s?jLռ4nn_:Gs]G~!@r͞ﰲz @K5Go6oW @ @ ~2k @ @y.Bgof @ @(NZ?>~w9W9.zıe<9W\i\\jpj(q*;Ҽ @ 0+}!ܪ^ywd]Gε.4?sw皯Y[X븥Lkx]&d?~ӹ+3\z:wy'1-E룺ׯs*+NF\zNcB @ @ ^Rti\y9*qn)G˹JkB.ܺƵvNOk΍IcryFǬۻ\Q⏪o:O @RuJ_gN3? @ @"Yhm @ @8KEȳK @ @!ڭ^yysu1z;Ŵ{i3k9ܖ:#k;\MaR!&܎Gig_R5vKj)n4ŸjUOX\a_{s+usk8՚~EQݯhyKq+r1ڼ?\'Y~ @ @T 8v5 @ @㷊ν3 bKMKKk s. 1SΥ9⎚gnqӸ.9CuMB\-a\n_.G鶐wOsJmߒvL#&6uג9Okŧ1-55g @ @^`?EgZs1!}L: @ @ pQǾ) @ @U?}&I@@_ ~ qqژ86Obn  @ @1^ 1KT=<lP&6c @ @|_ @ @^^ @ @8_E@ @ @n-"䭗Ws @ @p5P]5'qM쮢~aW @&ױ@z5jb'] @ p篁  @ @Zvu˯__(wd]ӜGwqCͣY)s\94f#7v.vK[0n/Vok8GVSCIl@y%_}Ww+۲=;7W3͓2:f\!ƕކ\q|7O1Kj;׻0Y:gǶ:i^z1#@ @@,Pzc.nܡҸ0m[ a\߹ @ @ @`UӬ @ @ @`{%@ @ @`U`;!WG @6"sbq+eM @ .Z0x#@热㷎kغT @ @@G;JM*5OSl{w\ @7)IDAT @ x'yf&0 [ƤMȑ @KC5x?|F @ @Ox%/B @Nv2tK-b  @ @eKpm\l(  @ 0/.L yvކqkqi+?== qm'g%TB @wXz}'EL4⦰46zôΑj i|ᑵ(qQk7=ܟzƥ}}a;}/Ljr/z'ı @ @@x}R&U}!O{zTk.Ňosu5u1N8} @ @T T:{倹+ki+!Gmm|$6s~zr}?L<&@ @ @ ^ mjԚG+0AGL>¨U{ܱSl5N-޿zi? @wl: @`D9nϣiO?}FGyZ=a\=߱;ufq~q p^=] @ /pധJ @ @}#}gN&@ @ @`HC @ @FwBަ#h .~R>6>mZ\a)q\ W~^Nj'@ @@/.N^GOjKrKǕƝb'K @Mʯ _O\_o/zVwZYuyGXPKnG/WW'XkruK˱:Ծ5m3Ͻ;#$H\9ۯ(0w΍xONu]cb048vLQk=ͭHk =p-S}v# 0jecyt΅Zm}c8W7B @ @NGOS @ @~fH @ @;3ߺ9bgT3:N9q7j/GX*SfYq<uR:>(@sNN{z;b糞Kc6:۲E8=n?3՜/#jFKJUhd<S#ֲVxItjmQWs[wF 8. ,>wG{u~A]Η1G @ @^wH^ èwMdvL @xy1Uɡwq7; @ @`U`YR @ @q.  @ @\C;!N$@ @ pYQ'mή/uLk+9FҘ`1zcrۻZ4 .o#=ko5/k'0@8KjؿKum_N܄鶚Q=q2rmKu[{ulWѺK˹}>rGF|;'n @ @>ޖqL+7ۗnpɻ 8*'y3ȵ>U> @ @lp @)1^)n./xt3 @ @KXG 4w @ @' |#] @ @8ױ~h@'Vs+朶Ɣ]~賤ɢ&> 1an)*}ԣ&.g}tl;7z`֭Md+AssfI{Y89Wkd\.&mC< Ć1GޮշW{[-JƕČ`кqni_q^t3'oZҸtTD[϶:qZ2$Nyy @ @';!L @ @ i/]Ϲ)2=- @ @U^K҄: [y6~UG @8c @ @~+ @ @NH_~~/уo!GضVC_:.Ĺ%@ @xͽ?fz 0熭r[sm6 @ @`c7 @ @ Av @ @ @`@Xb!>q=CҸ)~.6:69bmgx38Kq-Mbqq|#}XޚjܘؽO @뉒5WS u/cҜ8vDIaKKJr&Em59F+ƞm_3Mlϵ=޵kbKC @j^C^]ҸG/$K @ @C  @ @ |03~F q}Fmúxsy-X@?t}jrw;rk~Ka;yIs1?,`AL3rm,ߐeng{"LcῚ.aM @~ cV1#bZEH ^R˕k/O }>N  @ @`D 9⪨ @ @\bj @ @~fĆD @ @X] s^? kj-RޥBRL=m9sCWMRZw;fF]s\knO @5ZŽ>v:Z1= _viq/$U=\ 8fʜF9; @)pwQh{- @ @ >~]  @ @ 0xqF @ @]@z @ @ @`\5{=J1:ݩt4|>(+ |tέj/ #稹8{:f1jI6wưm-׭ 9"-DnWxqUqu<9> +W6fmF#2wܶs @ @F~4 @ @^;l%@ @ @@ [}'d 9 @ @h+"d[O @ @HNo oOۗkhijݷkmC8.uQ:o<&d|<$>3F!>mVhdy\mZS8]/5#%(=ym%ri5鿏J~ &o\_ Os5}59 6ǵe+߯1\|׭Ӹ1q]q}8>ںllw9fk8vk)YHn\^1hnl/}tlW\|E9zwa?[۟;aiq6crr~nP^m @ p^ld\I˹kG:vK` @ @fq @ @(x;! | @ @ S^vf8 @ @7N, @ @,1ruj#@ @ @~ K @ @c 9 @ @\j @ @.B>#@ @ py!/ @ @ 0c @ @\^E/ @ @-": @ @pK @ @c 9 @ @\j @ @.B>#@ @ pyۿt?;o>5kN/曛+OyL Ḯ=øz墨Ss×[ܜs[?woi'[:yqzHMm|L].w">x}k~:U6?eƞk v|?kwFUm D.  P!DP'@yqwB. @ @(pwB^qUL @ @FFXZ!@ @ @^;!͌ @ @ @BwBV` %@ @ @^]ob @ @ |'dCL @ @.;!B @ @@Cl) @ @^o\{Ώcf3 X107($Jn-7hrpd9}'hzn {A[Z @:a}Gϴ^kWqF": gݙqe%'Ǖl|# @gg=!シ#@ @ @l * @ @_\ @ @|1t @ @||'- @ @ @c7Ĕ @ @.B~7),l5c5B :?Zw|k-z|#?>5 @<[տ;Eȭҭr=AUGղuT$ @8F=κL.B6 @ @_λJ @ @@#l)  @ @y!. @ @ Hc7i~=N8NCypqكMGbf|X[ʽt|:&oZ"@`@{wB z1P5U  @ @c_aH @ @.B^xN @ @ 'H @ @fkز?uEC~͍]~ Qɹ ɶ-pK @sq`?1}aq}ykƬXzf&@ FZ[阹xLscjYg3|ԫq"dr( }S_ '  l-붌ieƴS.">.RkEP& @ @ |^. @ @\_DZS~Nn!0 @ @@Gk9t+cw'6 @ @g 8_ @ @ qm5ou]{D5+bG @ @`d5Qzq] @ @ 8v{S  @ @2p @ @W2 @ @ @ x'dpK @ @@ مUR @ @G @ @^>' @ @AwB  @ @tu.%%@ @ @$ @ @ ٕWr @ @>DZ @ @/ @ @xoX@. @ @) \ c:r}:\TfZ @ @@Q. yW& @ @ Nȫ  @@?#@wܼS @77hJ  0?. @WxzLsK @ @trR @ @ }Q @ @F0 9]t/;!6 @ @uNשo|a.:(J"@ @@u"Nȼ @ @484J%  @ @ |~|g @ @V 靐0!@ @ @E߷B @ @F\ @ @ڕNHhhU" @ @>?ipl'@ @ @`g @ @3N  @ @h qll( @ @3!0͌ @ @4xk4R @ @ @ / @ @$xNN @ @ ) H @ @ @ïc㕙 @ @  @ @ @DZ @ @.?O @ @;!K9'@ @ @N @ @@o-,? @ @ |^Nȇ'@ @ U_N 9 @ @^ @ @.zݕM@ @ @ fH @ @ @_+- @ @ -UIENDB`pyfr-1.5.0/doc/fig/euler_vortex_2d/000077500000000000000000000000001277740313300171265ustar00rootroot00000000000000pyfr-1.5.0/doc/fig/euler_vortex_2d/euler_vortex_2d.png000066400000000000000000001651561277740313300227620ustar00rootroot00000000000000PNG  IHDRv$iCCPICC Profile8UoT>oR? XGůUS[IJ*$:7鶪O{7@Hkk?<kktq݋m6nƶد-mR;`zv x#=\% oYRڱ#&?>ҹЪn_;j;$}*}+(}'}/LtY"$].9⦅%{_a݊]hk5'SN{<_ t jM{-4%TńtY۟R6#v\喊x:'HO3^&0::m,L%3:qVE t]~Iv6Wٯ) |ʸ2]G4(6w‹$"AEv m[D;Vh[}چN|3HS:KtxU'D;77;_"e?Yqxl+ pHYs  @IDATx݂븱g>O.sI=W"?(l P(4/'0M:60J$LN;wk3EuKe00،f(@)2GٸLL^Gu= lLzcvgpzCve `Q}m$M`LzL& ^Gu= lDz#vc&`&` +XP0 8J}?;4c>yEۋ508Cm'k&`&_Rwo<3x>3&G7h&`&`&4OCk& Hڏ ǿ @,Y y&tOGL kn&`&`{'' XP{sp\՘ޖ ,oeSx3 7o7pz[ 9ի:Wd!`QjXP_& la!`Q}DAU9ի2~ gbA/}gc&`Q}MLn"`!}. &`Q M^PKL`p0K,/q A XHt^z%&p,cg{(ԇ.O,O^ #Շ:OLL+L~x$()Ջ200 `\m{MC9\c XP{o `AL`EW 와ws3O$`Q5?Ok&0"`A=K0&x &`&`&`&`&`Q}wCQl'rrR|<8,n'n&`&`&`&{ >y"(˓5#`Qa嚀 lOz{QbHQ7&`+XTd'`A=ŵ&5 ꭉڟ ,gj&`&`  6z&`&`&`&`$`QN{#BonLLL$`Q}'8w  a |j&ptGH{&`&`&#; OLLLL,o]hl&`&`&`&jO%cOk&`&`&`7; G^&`G `Q}]pLLL`',wk(LLL,_# |/NM{vk100>ێz=&`&`&`&`/'`QrLLLLl,϶\~r[&?xt8-nf&`&`&`&*կ"qLLLLNK[{ϲ^ Ewk3000x ` &`&`&`&`g&`Q}LL`|k[㉙ E.ld&`&`&`&`=ꞅK#H200%`Q=ŕ&`&`&`&`&EzV40000YճX\i&`&`&`&` XTgeK0000%`Q=ŕ&`&`&`&`&EzV40000YճX\i&`&`&`&` XTgeK0000%`Q=ŕ&`&`&`&`&EzV40000YճX\i&`&\=׽ XTB˶&`&`&`#`Q>LLLL$,O^ XTG60008 la&`!KgsTaqLm&`& "L$r:ȌsƵ*00M 301D5>O׀ y XTwo2x+=uKe00 Do#>Oȗٻpe~> җ30!Hlj#]_|ٛ \#`Q}M ILnil&`&؂}lLG?6;͑ܡ'`/L 8R헁 jGL- 樸LL^TKLX~foTG7Gj&`$H.œ2}8Sdz?,Qq =,>O$O{k ΛpxԳX\i&pJէV/'p?<LL>S}51<ᦾuIR7x9G_.яe6mtAML3XT>{&HrLLL`5ըlh#`AY,/ Lh,c~zk-"_M㙀 x>p\ p#zk&p\Twхڵ 였E7S31 1^[\wo<30xgP+| 7?h30@7Xi7nַ Ews8r9ѫ009sT\g;"`!`*Zo.LL`,w) H/>ߞzE&`M߫1 oΆS>oӮLL|L`E WiϿs'j/L>zi# qu{[oA>LL=,ݣGVuE E 6K8> +ĖDLO= \$`tG7_Io&,B078hz#گx&`!`Q}DFbl;vz1{&`!9z:ޞy&`&`Q}鼞7- d~]}{&`{#`Q|LL>W}Ld,O^K쏏g8gh&`&(G \ `s6%ڦ8Ln&`Q}32w00000!!_^Lk4L՟^ I CXe&`yM&`wsG5 LLc /nnG'p`^cUGmLLUUT< <@Q-vE'5mI/500yW4軸[=[1,ciO&`&vN"p 2ڣ E{(^fs -ۚ Eӫ1 )nXߚl;00;{c8_ڂ}I\Soe00=|g3}lO?A݊w\,߽LMw8yO p(5V" [}k_Sd+0>z]&k_l_ug??cך 셀e'<]8Oz?bzӜ}$dL&`&`K^"z0 H>M;|0z~k&`"Hm(ʋ⨵>O=Gu&`EoN@"x= Ei 9S/J<|޷c{0t՟ oIk} 'ZM >Qd׭}ֽ\Ax'[ Ewl>|+ E{{Tؘ룙e _ LL,OG]{9Dk^ LeS&10O#`Qi;8ǝ?fi2.Z~_n14՟Z`n`;>ϣ?x|ޞ{&`&jvNbwhoz`cPw&`&Zկ" F'7ݜS2x#7з)G./TyV0$՟ۧXJrqa~; XTmG?b=^>o{=Džyyn&`&p4G1Ϸ!`axJq{!i8%H*Fd?1A<_k:[10g;3l/x^Z_/fX2}M(/_^+֗Wy׫^f&`&pEe>n5 V?cRcxg"Ln!3շв txݸc<$|qcL#`Q? GwLdD%q 륕LL`ule |#ë7sb(q9KX;Z=lW M,oec0`}z~|%co&`&Y,?kpV>{͟|q5kގ= gM:gez9篨}wAXm{`&`O$Hڵ D Xvk_nX~=Yh&`{$`Q]LG%q?La \'`Q}-L6%"L1Eo֏нMLXTޞ{&F,[쏋g kie0N:#[ lBzQ>6Y^/kLLgn&@zbo5q}A̵s UO^ 셀yX mM\8zqNX^+91v EQw6Hnsv;y6B[nEַ Evk10||bsq0c"[ ׋guyi+08cgi nب(1@}{zpu #돁G50w?޽L`Bt,Fg Xݷ>ĵK\_am@la&`!`Q}L@`8Bc>~^\#׉뭄[PzP0x+x+~ng$pރuYX~la&`!`Q}LM$nj+&oy5Zo1Z\o!}z+6&`Fv5xzZk:6ˑb.k g}*M$ -r׷xny]ڏ|= ."p].7$Y+Z"RFsWv[Vz~˯_νy&ph%*B/{OE&׈a}yǽ׭&`&p>qL/xV6^VKNnc^+6fTu,YZ>ԧ]c"zXk\|dK+t Ey+1hE#}ҘkvKևyqa}Yr Ev`ںQ%YVko+-ۼlo=7kB$z9r{tLC8{噚 HݺV@wN fA揂\>h;^KLu,_#GP+[Al~Y-9=\o'x/ vĽML`ֽy snsm"ƻܮ֌^X 4b,LD`qO3\LM@5x^kfLߦ%ĵXΉkɼem/503X~>x1~6EֶޟMmkl\kq'r?}nYvu,?CqckG׿2mi&pws˫08V]v+ #%4޲ؾ,[>KQq=XX/MH`xzM&HHrFnXLQIQsXxm.Dmc/osC[[1_niu4W?t 3M!? 9 ZA-qx}\rM,_4 v{˯? a C|n^. @{%za&~-Z"sHb5Qj k㵂p: ]-kE'4΍?#5- ۼx^á kV8f?F.F&`&#wMS1>ZO`nxӵ(Z8l氥Z!- KNx Ud&^ֿt  |a&pHwC.6c1֧YJz?.c:ܒyZ;}{@h[-8K=oumo&pLwcó6?g mVPbs9:2y]fYv;{>z=/!HZ{<חXXkMD`|y-&wU=Unss7*(R:K3SxGYt+DoOsBYmk{̢o5+Gkz|$DšG֦笧z 'ۘ QGi!?c15 m`.M@Ϲb2۵sK~i^l^gv%vgCky&}fLN@%lI`|zi'$ԭlEc ̦:%![m!{o%Epͱ}]VbZ}ŵ5sF/%jma=]ט E9ի2 H(ͻUruv3A-8}b_CiNKJ kn>S=ɞؚEq]Th\냒PX>j}ސ] XT0G@}$5Cm\_BZ1}t-znECT`kZS޵GBZar掃.{Q~ML`'w0M _G9,/Ee|pլ$f"3c\۷ KxF6OfEuzxf~èu/-sL|,Ϸ^|DË}(S-Bzx{ޏ~$e"g3Ev^`O_GCƑkAwxZڨ#֣ XTz{x~VuO!A=y*WX]3~>̏K9?c n$Myl^:ba}603>nz-D`hԗ~,Wr|A-aXF]Le^HOm\/Y/0 h^?`/E/Kga?I0q28&sE\ϝ ky/y/_^-ºosLFzo;|}GGfgyl$D9ˡKmt/]SӷVD q[֊#! Q["Ca ~Ca݋qܹ @εy&`7?爸'2kA=\PP7;Pd~io2Λy~?S>i):ȌjǜnsIo#׵-D/]} ƏxZܝ 와Ews{3矫fGtK~oR?[P4Bu PD{{}QCZ?،kfݭ#EXΌhu#d{nƭsC_so!-[EvɞSҌ_<\Z{Z/G{*uo ܻfz2Z#% ƶ)FCߍ킘Bz(zi﫟w2<"j#Ņ4oZslqH\#&uMG! QKCa5Qk^S㻂, 1<7%'0x7w9G٠}4w(b{z]L3bۉ馮璐Q{O9E]S=E諽 lEe#q_C[̡!rz1j] k֤ 뎎 &`&Vz}$< VOɘu5Kw 0;}tb14[S@uAݏRwQL %ݏRsr^zFyt4[z/{ l悿"!q_p,/BŨu]B^s_` k:.yqvbvf&fz~4< ;RD|Iqxi>SPlcl vBSRx!>=92b m("DK~RZ졸?j=X3".g0w;;M`c[~DŽ([l&gٽ-²fZ7L6`NT<}$GK*px/۽zy%=3w4;xt̸=k= º :$ q K XTL 롈+8'EHh]nT+6ˑwYH3o(4ży<,} nW:= 8#]>mͭ#)^˶c1͵Љ֚wMºʽsYced? u#z$8$ۅ{ҽ}5A=R7}~u}51=o,vl`۱^J}%{.m^dv`>>.A\KzHPhO `Nݦºg0x5Wx&p{VuZA]%:]q'b>"vZD{@XnoNmrbMDXh+^huv+kghŵ8ץZ׹7輦>`Eīy[-nv̑aꞑK&`$`QJHP߿5Yw}5G?E{oK~E"j981+5!݋YT}t `M~Lb\ kwJ>K;m:qM/aߪZ.Q2HF9w?&vׅu _e~klapL5,_٣G~~t_Rˈ 8Gг*xa;+Ȅnz=m eˌTP$vagSz6e\q̸_p,>h6b9RF[Mec_SQ Lc"ijcHHZ)ӸjF W9kugsjqn&w׌QL^+V+7݂k~Ӳm&ξO/"bQ0uN102݋^ĸlbuu*dk k,J#uw/K]FDG&F!0"[fEp, UU_?7k?aQ e#GA-VkG ? Eky{Shѭ m ~4Jݏ0R>LEAݹv+{ߣt'ph:1GyC"ϊw}t&`'`Q|._X_pZ[u#Ngrk\(L[ӯ91'isG=tQC1]-!S i+Dt'զ\|zI]7_!$#QږB{,3]lJ[GDuw4`؊luk^dT>~}O^GuVza3_w u lMzkg7OX2Z J]˜^P#Ҩ@hW j^A-1ktzILOx<..ј,(SD2 er h3L{q9/i-! EpFĪ\dVb:%uK8S׉(Δ"1gud6smu9G6  ֓=8?=q_Zy+{k[ FXcdYX~60~W{5"p[:t»sQxDP?([!IDZS9_OQaƐF$ڔq5cv둸8ʭB9|0mOCs|{,k~|z޾Dy Sx NSL%wG nVяVwbY0G6׶ґ$:cSP:̖x22݊鱐n: DV¹ӝF>(_JiCE)9<)_oG'qQkn'㌏qVT}9kY 8?;kQ`u Z:},KiDuL%`Q(A7M .7яeY^howkW#qjA+Q2m51='%%%'9PkRJU rb5Z7R mb9*ڣ"N.uy:Tn'Yq`4 !9gq:A_QWYQ˔-:ƇnWo0Zma N'0mXTo^L`CvG?\l@D;9\9"L+uwoFP\NPksb0ĖmMk#VKui-^\BvbDؠwQ*'wkEX\3uv= qa+5YwqbqYXxw`_.#;"H::e?f\u sNuC\5\^/3:--DeC?G6GԽjI)VKՠ/# g ћю ݉%k}BPW'(flrHHH봏ڌ"u$0$\YTE(HMG7’ҮɒQ26f.h.vc c&`&;Ϛ~1 s痏PA Njf/5בr؈7  '!(#᣻]^{t#Dt]$Q}*vQrAգ$Z}FSzک'16.S8noG[̪aKsIBvF ˼f-Qc!kW aRuM57_b$bS'.8k2e^%y=8BRLL`;۱'x"D;_RVĒuѽU)}Jو$ǣ\:D t@Dr(Q|>Hx@F\jji/(ۨ~\-]j<KRԚK$&VPӮ6rM]$pN1Z2ˈxAF_`,SJb5b0*j'ʝDʟoYPnu~S4d"ԨPesZҵDp"J9_}CnR] dZκ(#v ҦSK81Ui̓6li,6H1禫慝5:FquF:E=u\X5B"U]y:#tQj4<Ҷl&` XTgeKx3DNjG쓄t_PEukPuԈ"RG^5<9?+Sv%Zjc8G j”(ubڢMA胐NubIw\B\ey(^sy+,ʓzCL[+Gf,"ѐzcrPYkL< W.DONNq wWLEXxB9\JXu?_lH$h{άS6q9H}P 0B@0Wl&o6y4JRwZQV|%8 ɿ(>ʏyjD풠OF#lJ؊kb._Q,FH-Xθ.䳎bh#E{/j]w:8 RuL-La]@ѿ)zXrn n.ZM lA`h a&[FKyN1r*U˨OQj$u8'KhSh#i,|H SG#IxiKK<.ot91] ݵEqMmK' y#rʼÓoy0g,.OF%aC}y ċp:GӤ-:a] R0FRsG)K)O f̜0ɹDm M΃D;i3S)q":s\S"$3B7YkQzutIpiXjaοYZK;}HdA=:Rf0P8Lz9Z; Y4L6 PQw(5u>t:ͱԧQu(?"LA:pH\m5&!>yP~k:эhHyl:'HmJ*+G%+oDt*6}Oފk8]3&9js3Zc*`Sr0 A͞h~?Q QĄ9sHe:aEلѯ-^ciS, ̦w5ŇE3L'`Q8C{0"08ށjkRRRV"(>f)D'"M*5LGg_Q]ouy:ATWʩWYyT=9ޱS)!XQ ;1ɗ i5cc[͍<Ǡ&'g^VV95 [K#sBoxcO{p 11|HNk \'t-LJ9G@w(=O]eӣ;~DS@-bDU1bbҊV /,kNPz` ri?!n }D;e|j;(5g0=.EhNN N<3D\ӟhZ# s_ h2G<ʎ-+oP_l2b[뼇5_\AgW/4.H`X5+eF %]V?ML2|lV0O$Iqv"K"D)Gu'()ay#DXP#{H K:۔12؝8ګ6UG鶄oҿJ6xF"%)SK\*:qYGMw:l2!u"X_P1iPsْhQYb|el4%:!KyPG;:#4u`K>y,Y%/0")7:6Ixc<ˀW$g ы׏fQrfR6ү,+? ލLKՄ#,R8msG?JRjԥ))Q⋻AtwB TX3aZP;ӈiƕna~UG鵉⚹(zͻ>6)cF92Lq»)k]dΔJ \к[HD}cb9_;Sn L|b#52չ@r}?w_Y̎qSTLwqML 穧H051R[D8J~9(5PO;49 UfBH)6mH,ˠ=\OQ_$h6l2.Z͆ @PG=hvJDIyR kƐp|)G>~|G|5H-Ռ¹aa#Aa_"mB0 IAT=N&`&p1.q @JHʃ|rkxiԩT~X"L5O\ Kh7%,iils.S^).♜0$NWdr. ҵlخ]k51?̙3m%@\bͨ"ҴQVKv@XqI dL?7Sb@=h?UxLbMOZuAN m{['0XGz'[@ͥ9[8ߪ>ԗ:DSR[4J .km\:5wPlsK.$$4!Y!1D9B4R;ri<"hXlN/&I[?u\ӆyOlt7Qj~(5>jԣRѱD#[5j5#ȑ}"SGNƴv4sPn#[|%:#i)a皜Dp?I7B"S~by?$ r"eeAXG,&SQb"yšH5Lsc #xɋ=WȀ/,BTIEt=ί}m&pvgaC #GcNo S INV8 D)qM=咈G*R=ϬYzVOLLZ.Qv09Az!!cOP,wauѶpf'D#Ċu@P6̹Na{c6qd&`~ H^2zM#Q?s4<\RNbIB[ CY8z59Vh@;԰—qLPQb:rtQK5}*Aj U pwKujT)ʗ3T#(FXvv>2{IK xc XqBͣςt $DP~"ba]-'57GOfs:̤fTidm:f# 3\e&s $˷Ç"yR"=$BP*EqUI7]u_NTQmEN_ʡRPW~EP79/]NSΕX,SmF#ԑy$Z 穋FDȈtAM鎾B_YOzSDv]l&p19˛9D[APt뿢=]KB`6y' _1&!x G;UQ0KNəGÖ7xїQۨu΂z:G|"FXǀyqM^j8RGaLK] ,*is_X쿘ȯQD:^c# 1 ~f_ |n/^AqTw(eD"ƃkQHO5HQ­|8"w(d\pz)aӍ2\K("Zuќq4HLTyGqkFɣLs7zx^u:;3B,WSG{.0rP] Gcy;x, .JN 73 0h/,D1{| 7י fa&pxObw:rznLUmu?PΊ 扠[4Qcc;JM8z6D{ss6"ԥNm2Lh"c/^ ^ BӬ>ށ"c=F-%TX<$0LuͻY9-+g(ⴋ2vq$̩FC AdLh]>i0YG:M9LA@2u<r+ uc3Q+]f]brFE-puW>hӞ(Z63Qj_HUqNΉDOtk(36ʣt\ؗ&`&P :b&p"ß*?uElp^Xhkyj0L!zw%QM״E%O!ojb65G8z#})1w9At%pMУLM:!=KxԵD?m%g> Qoqf%ɲu#g|3*>)_c$W|ϿT\x)aPL|sE. z>"rzkMs[,+5EPo7_?O]?%\JOix&`wt9]:OK)i'HTta䚧Pkۣ+RILtUɹQʦQ̏`A[ga3QCd}95SmeA) (r:(u fGgꢜ.)t"X?V2i\$_I!2>A7SDQTՌ"d>| "y3"eX`^y6&1DvTq_XV0\u/MWU[$iLKtf&*!XB]#HSVQrj&NdN EOGt&ث.mj(5CSHnV걏hY-.h \kxSY<_J)_ayG(#) D[>9im0O&. tG1씘@԰cU?e KL-b $ +7O#Pb(Q(cuIHOAl(HIc\ӄmD<,GR_rUFE&(tP\(݆L yF#G^_2e M-^Sa7L,ϼ^ <@// 5Kї0mA%5:KtI0s2, b3s"hF.1"T9\NLlᅯj:\GuR47_ҟ3Q.0]F,Ʒ ɝ@8>_td8.;3) C tFsa"KNNU,VrV$[4 L%`QpNF`xm7=ځA~?+CdYU(VĔSUaEu>Bʣo UJl# yD"԰QHD-%j-EӨSbZ$M̓K`M4І4E<a Q?3G[~u!93898k¸{uCC΃e|`K9Q`$-=/Q:2Ga؎|:GTrY[@G-# ἋBFJxŽYi`ڨ'w`f}<̒}Yfx\b4'UL 5I LdujDx̥T&ݗUGȟ䎜LGu+Y~;~5h@4Ts$6Ɇ:OjE۳ 3% U\(0>5ǥL,<|e'&B95IP*iԜ)֪*Vڭ_M#6mBzOW}ί~]sǼR}n1iҀkۺ,T_'.F} k:܋ėi|=l-hu6՟^ lN`(F Rdm,s $)ݨlQ*$ݟZzLW<b3 O=Mo|_!]3V3F]TX/ t#sLZBbקe[UON~T-sa5 DnmzrX6:\ˊm~N&`M߫7Ύ4$PkeG}5>ٌxIG;8O)2 IuMPkÆD=>Ѯ1hOR[+56sR|ak®^A6H0Rhl꠼mVЧM;%> ɠEٝ_ve0>z]&p#n֦яjm[ƹD[lZm93­`%mR_#WߖZImZ_*+qam-s7rjK9DNil#oKMk;aNwyoԚ+w20%Kd\o'!OC~hv1I卍dGtԶ/eFoꆐTRHd9iϼvQjOMھVwmu9^Tj^#vj̚H+mJ8k?d];[? M|]dұqn̯Gr&`g `Q}]L`BBz2+h&Ʊ~Ujqfs"eJaUGW͸dC2i}QG\=m$C}[{ˆ\SYDu>4L仵UrMjם×M ULuݶn]yx[=uleE۫5$m\w aTh՝DV .i_S=SCg(\C6elڼdvڔ"_}oמUr0QvKj|$\q^/+.q |g* ޙ"y D]RTV;]}%CITm<"ShJF{P#Uf3'xooٔv uca u0P/bi%ڡ4y| aLvJzik,EO([1wܶt#u<(^9Y;{~R}8E3 Wgr/,NU()N;@e{~kNx_oz*DD}~aKNÍne&`&pOL`Rzx?\nAf=hǴ۶HsuiYRQhVo&`"оι _ץ~tt2By|+?ͱz_F>g}9I}ij2!0;1uU7HLkqM~p)-,_zV0_11a$z-׳ |ٟAë4"mr@b ߹w"`N%7g][זI ӺGlgڹ!١SL4r,Cjw0d\vj)!VE{ۗ?ۊ֡:SYcQk sy7 cc0hv;IOLq_Vٳ?U_H,_JrTu=i'>dʤy˗֮kot$}j[Ю+Ne{kL(͍Q\U {U?! 4oQ'm&p@d:^F='ӻ`;zr]:hۤp(6(gb.uEWQh55m]{:P&8 Eu)?j5WHGR&UvZ"% mvzV^u00h^628'>jFd7o?Z]]c(7hUiegtAkiɋ^eU&r<\va2_^jW4' v!tsa#vxa w&iI coAĠ^7( @ 8oUX'i&p#bm.h' 9G=`-hvjDVWREC^J{0lTiS?ldy3SnS;}ǜ/S%[穱Ҧ^0/g`q)STU^ M3P\ζ53PlSVob&w34ˊ@Fە#[]5ܳݧFQw%x("+j}L} (v6GgOPW&³5>QlN:јZ׶؄_sG};a<`QljklF% $9ֵi=F]M))A縫) '0x[H&`#p_$} mgGڧTPߍRh A֩((I壑wbzWkV1lS+&!#Djph"|qty.9\S/[%ϺƧl4m57DCg%v' 00P; &i CM>I}ԮtY(_s;$OF`L`G@YkMB1nRASUW6]+>loUmfi6S+s%hUj8E)VV=|D{4M9Ƶr} hz*iM=̬u d#%s!R缭Tc o>h5&b~Զ@umy¿<}MM{ =U}\bV+UtkۊvTBZ%YmRX6 WεL(!q&J[u9$YnHg/5y6MM;_zfu>mU"i?&pw35؜rFȲnYUg{ٶ1pBU ͗+_f_!~ozhiSB@N<'ObR!"QP!Y}Iȋ+?M @yLD0=e:yGZZ|Ծ+/5~7~ĿiQ<qJopbTRoR9}3`jʾfBcH2o<ߪx/>ϙQ$ =hW=Xp)61L\?OWfzGpOΟDKXsY wJ2rm Iy/uJmJ טR`11B+ Sl u)rzޟbSj<x):&:tӅQLGݴ 7,u嘆cs<kjØDBEa衎AiPƻBIR74wTfrEySy)}=}I9tRguJr.Yb잶+-6OIZ\B99A\5U!`;+ͣ%9n%'6*;cP{10ʓDu4K8=ǚ瘢<'^oC$fV:`}d0dDXQIIt<});j5ǡ]:~9RPx NY>JX6@IDATֿy`G1s$):V9u5e$FHVugի]8|S'%  \!p@VK@G j\*%# yW('5W͍3jt+M1j3W 7J᜶7P%x"şg}cűSkjD4!21 Hx1Qt,<-{q]ҘљgS?/RiQ/xf))/A]ab-u·*/5Q,<$&]~N%2e+fyI6<:2>zJZ~U`r1muךeG&Y#̥PU|=C j a82>|(+6sRđsԜ UF{^Է< P> O@L$cOh/Ø704b֏7M qIh&a} 㪹6s4-,ob:tgPVq ٣](JhԴ%?1@ `#O;̢-Gpg[݇`9"h@j1)t5e$M }L-N/uE,gMǐb al5`g4iXnO죦4|ӛ?A9%\L@>28hVs+i?Cy\30" W. ly< י%57RQq0aVę#Lj3a mQS~8ysb njvǒ͉>M,Ts\?CPQ\,+u'L^Ps#hRTGհjL0L2RSZ{* γ]v|P|OC?mlx֦M\cn-0ɸgt, l[ZH@?&0nB@2T!}wiy1tO} ]KM Ztȋ8>JJ@yE$_1a)jlHT u6CnR.ҝBu$ IBRh^jB<-6q?)DoV#9Q]s.Y|zӌa E(㜄Ŝ!E1~"vJIK2K^"xF-5e<9zǚ)T,'TԫS~5aQ8z#7%Š30/5GTYQzg1ޜ̣"{7ӇH~(QAq>a +һX5G H@bsT! [AN^<)^uQŻ('IPCM DS #!@0]T@HTkd+Oq̱H<VxG뽸F1Wć6y7)3QYrȗN}:݋il 8tN̄Y q9iXđC ω<+e' X /[ (/uFQ4=|E0tO[ǜ s82^ILεI0d9Kou[TꭎF#M.<k._u 4*P31O1B{(Ca<uG8 ĥȏGjʊcKtU[@"BXFkU,$pY74bE>9xɤzqS^Q4F֧bSWA4?zðb2zM{j:nduS:>܃j2ȧA!Gnf:318ƒ>2Ym8rNv3/uyŐ L)%<)8],$ H@2$p⡉kՈ_']'vݰHF\^> $Q(<?r|Ey Segyt$ )`0yJTRMRxl"/gQ3[:SGfghy')A(yǔ:x5ipȟxS(S?>1zV7Am+04_ڱy^kZat9륎1Rd1^gJΥxBF΍j$$  &C@Souhxzb4ς-qn͋4Oj'/ ! 1 f \9]QNɺȅh ̍1z$ex`Id +eQ5]z1ȎqMYKjèKq\ks<ˢAMRTӎ|<Q6 `ms+yWb#o oc tN8K=f:bZj8vkea΍2 HW]t x!>nXlھ#fBPGӥˑNy9GΟS@/T1 H) W3Y; ㍋kº "/QyzYu:[ :Zeª^dSj>?JY +^ˑujӟS(Nt,㨳}3^iu9s&m΅}Dmk8Ͼ%秣V7yiݹ~~ٮџw4y,I'%$ H` ټt:"h^: ))T$  F2 H -7,Se'?B -o"<`m )J|*5!GuYSOs;#3Tj0#cB4MkLlKm9ٖAcfۓpimտЎ|nJ~9F_>aS):H`(D= Tk\jϪ69E'py @ ڷ(f#tBUl5?ʩ+T'>R#+P{,--hјxƲF -PlwTbĤ:טR:gF|4KXsDrE|38"IJ˯dJ؀Mu/#4cr\R$yj;QP>?g{i˓g0F ^7(z g=Q:vXTJ&a݃W"m6zq刻_Mf5nM! 9T4]|":$1.l PWy gGb)lM4eGu5Dϧ r9>2/IȮsk+aSӴ&i Ng*|D1P e -z-$`Dld9מaw7(9,OI]μ$ tW:JF\*xϫw_×ԓ@hn)0y`bzqmFFF<e@nOB:BUVikϢk&1)+6,ܦgOnh,!yQVȎ(竌*Uy+ϑeW}Ө-k?RH^Oyz<Ӈz.܏O.IMuDCGsɨ 4"&;復-v{޼mgI3.& H@w{'@7yN- ߴ@e@{5" Q5WXeaNx79a46L Iâr.GD5 NKD1`JgN^A"WQHSF^8s^q>ygL#GAMy+ />{y± b9];R𑶘khʦԇ~53' H^ͽm/ $. DyoVSrBpL}8d(ty|u(r-5-odݍrEU)1F`FӴZ*$d:i.WRk C:8R{<ߟ/ʲEh$ ^}_V_~n5& M@8߿oTW]<:#ًPDq"$Q|̌Vuݑ,B0^g͘pŧ):"iñ^'r昆| mؠ0nrWy5pu}YSz9F^4Xj.1KA]eO{3 yCaEE |n7'NB^X}@6 (/Z%hyRMtS x[Ml'SFY4k. F4 k!L,`E J3ϼm &%c9-B<ܭ'VBsb)kwW_4mK(}#u%v>/GJPӡ"7 ?y~e pHx겋Ꞇy }WN{% nXlISlu.#_s4hP^tRa هf8'Ͼ_Mo\ 1zmxT$_4J#ږ,t0 rck]›ή%y`s8.g :FYbM:&^׋\CD"iC}EX ]yyGqc1ݘg j*G:*奮~p>-C?ηFyl:Ko$i'cGt!QPGMNhQkķjcfz9փz A 7,yaIZPΐ 5Ӎ慎!z&O}>_e#`*U[y8R^BX/W43O?~39)+0β7%Rf< uA=GX ci@]uzŮ+?f( +Ҟץ"y>T[w]Z*&KaBABp kϯn\Yx7= шshQ_}9BF`wF@qM_Z (Ev9>O]R屋4ife啦 cqW0i8eہl/+󤇚2Ƥ]%A=}  ƦeQ?cjԉc8oLl!(C<?ן1<RGO=Iq>Y{_Y* $B>xSC&o V_ XEi\XFqNeHӍCXziC} j*$ٳcrxK}*/8JW?=$ W,H@D Z!XAX~E3ijܹ28mzuy1kϱs~bzc(>04MK"1·64˜r#㐢:3o6uk9*UD5 s]qdMu_iSmG1D B0.cpdg<4[=x+색Q.AC"$601R+_ Ksz. ]+L Ix R3?Jsa47yb1L4|b a6W(\l%l`AcFFe}k*D!AS1ۉc[cұx,,I@G%0]}B% <@yV_I.#x&5Si؜BX61t$Io\L4W8 Z_q F( pN*zB;%\/uy ؂QFD6Y>ԓO4:D4횮m(dr41icpby5yA A6)f3y깇:4LBcdYUcV>g[8@]]  | @40֡0<-̛_? c< Dv5=II8H71ǗK8"a<ѾQ=sN&R < {<>:ʛsÑ]lU i4hDZӔ7:7si&5ciT2䣵>&AOROrԭ,c-'wG$դռ$pͰ aza2@hvS"aׅ5] uiT꼁"CFT,z7*!yG4O9C4]MgMS-v";7RD1|EPWvK!M@}ULӮ,ƍ3q {'A3iGAܕZqK]{>Uʱx8<3!=GjKW4fp*>7uQ 2q+|zmw[!G ̯Vf HLK_)XhB)sKo˜ꋤ3 < c&Acc6zDoK>+q5ºHxV jj$r[ݾߛ>uǃ#jS!6*nmָ 5nSpvXkBBs0]ƚ(Gt.vJ[";Ip#(fd>VR|Gi:q3b j%Q󡪀ҠyGq   m" H`"0wLe丬2=Z3=mDa'c|ׄ5?zEf70RF5B|Ĉ<.1 J\arŎ2;@qfYˋzMYy|"isfpB=m-#w;MGKH=s&yuIoONB}Ox:IXO$M/39%h!SC윰=BWE[_Bͅ0 ;z#e]*k:73b,p lnp ]w"z酎cfAlW(`yuw%):ʗzh7xp^^B!K`ԏyqmi.>?y_s}l-PT3I*ҳ/ &C,)hTaP^NnFּ)7JrZ#"늹.a`|v6 ktc*mRnYy";UY:㪐BL7!Mŭb rySFYܔe(G jJY'AXZkmosW~HE£D`ʲ% E)./}\X):TbQ TrN8Sm阡iKq1#9kH1%uQL^`MDt FR hJ>))+êg[4õOh&AD+&A{~ERvVPW8ye5+_Q%su$ѼxvNkCY=foM/7n\,aݴ4.;""Ӈmȱ*ai{U\CVxU06c-*Bb9dKJ/UMJGkJ&DcY ILS?MMcG+i.{q:T<;c}ob߂z0u"ԻEX3(C*Ko*cfAlkʧ'pɗh;̝'{h1m H%Yٴg_%9Gկίic)YވHRLe3tWQvGKïQ(|~Տu{=co[9Ckpf]x}^X6KalwMXӯ/-!"wFX;btAБM⚙bsfগ&X=qy!J FБ$K֓THSZS\k=4=Ӕߓpjׯ[5}"}`Lmiܩ~.k^=@)kk+N`lR퓀vNM RZ(Hh_ lc": E΅5,Y1+G f[ &o[́ %HŃDTFԾͱo9Z lC#nz<^mRRMWDz͹vȦ %V7 <+-R?'_y H_i>asJ@ Pyj.9-0nh"ՋcܼQh0?e43C째fqq"r&\OȦPF6\pk?0jଏs TLiU^F &WDQM<_5A=IaϜއ~^R~T==X3y . l$o{(YgNtQXg=iN+߄\бm<ِ͐axL:wNj3z5ʓsQ<֟حkK"zok\[VZ( ,\$ Nq;5PPDt;S'tKfyБ:~<4ٶ`rqW՗X]wgz]ӴߌHIL1ՑG/s;^㱆^NԏQzMLV;@OYW~L:_\~ڍ !5qh:Znzoºw(Ǿ< q7D6&)qxy6cN"ЦhsRv4e k:;=A/(X_}~hoK<ӳƯ547fk^-S?[8^}3X(׋wX H@sso5&VM_3gº1"6RwҼMlk]4yq=owI`3~ް8NPlZUez5fFS~LBX=*u96?ԣg3i/^ ~63tWg (Ӽdc%Ôsusq=x3ڥ' @6 gЦS} ?WO%ByrK$i13[ʻ>jy͕l3 af&fvNԇ#[Elٷ=J@kqY[e. ^ y5OhZ7IHzBBH'm[hGS|cWIe e|.rє~BV|Ҕ wSX+&t7~sR7?|L}(]zm9V9$F`~Yka$ h 武|.)A-B)/&~ J;sy1Ɵ "I3\ 픟|))Vׄ4'1޵]x϶EwƓz|ޭޠZ^|u8JuK{uaFۖXAH!O q Mzs{j =u .ZUחݚ_; cjs]Hӧkg FFK(M۟[MCI.owmZ& uj[t=d8x^lS֠˳B1=p)='gnCSV4 wO3#/sM4䑞B<397^9qfK9c5A楦|w< {M`~n^x+I(3mšdA|[b<vnbڍ7AP4J`FO\Vkuo>Q*-4V5X/_O4'Lv?7mbQό`rMP3ҭi ϦV=&oj[.2 5˴Gsa=_0\|LXRu֗ !Ц6?# jl(8jDz![#R~xP}OLCA}iIz%֗X'_5?3J@\49MLO1֭_)eM?=Bkm #odBB]YRp+!z! V[q~6La}*iE=ӌxw:;ǯjJ6 i/5*QXkNL^6Mp.YMtN OH5q= k| ރ:Q]{qފg/ƻgOEq?鯀4f-GlK@ʕl- H ֜5^~qͣ*^8 ™¬Ji۪yxr,!<٦gվP=vz뺗5dw۹{}޶ZWXlM! kfndDM^\~]8y^ZЌAP&i Azs{grg$N`.Oշ k_nbRszeH> N6.B;~4dϋe5;͊m=oҴ<wզyzmy:fլ_-+m>~?˽[3%o"DֵJ@8 xh%5Z۵8kj+t`kM] 5=BFl%IDATqל]4"uk˟Wx~}E܎C-S ~S|6Y*>n]x=֑Na=Ѣ"~.V,>5.aMxCAh=/1ZӪO5OC7 lz ߢ"0mbL[{,+>? `5$ X*>glG$šK&qHiM*6ד^αBNlszW:/\]ԇxy&A:7CUr3&j$ ֌uk}fFR Dž皪S5uMM&Wva\=/ }WY1]uf[ kyךN·ƸkFq.Td(Cї6ku6aY>_^׳4;sᝳ:$Yj%  <@\"A_ִ:D媸΁Q&flZ=7yv+B~cd_=Է{o@_^ټ=y{$ =_wO%nVkkšv׼ִ)9Y.4!#zo3\ynv"Jk^zeIXW7S+܎w8}"<^#48DD`S&^m5;&~Mg "v/u857+++\ҽbVǔ$0So5C>&axLc ֽX^ {451zn} KXmݵv/m#+)ۮz?~^J`]XOn9 te8H;sqM v)XWE6 ߘ66u=VA}xSwjv.m[)3YGWY. |+k8Oqɛ š^,5%kM?،qNоJl[~|]k2^M+᫭q| H@O" kڮ 5z 53GLcaVRzG Wţp] _s틜Jxz='⚶ܫN][Ƕݳ,s ?JcB8 š%o.\ !"iWs⺍5+|4:xUyo'Bӵ[lm֗XMεJ@'օIYSkM9tKa]ӔP\^ӦF.ݧ{Ms?Z~ҿ8gbzPs|WX?.]Yf-M={"0'QqƘM8-5TLgf<zґJWདྷn H`Xkz?׌{'3>"8?eլ-|oq(PTI@o!f kYSzaŗкO<R"]"{9oȱ_OٯOqPT?#I@"pA ]E S*xsMuzؽ$o|X{d[<|ǣzݨz{*K@Q}ܽue%/Ӆ5Kce &{|>_>oC{w1n-6M6Dy[ "Bc3O[K@@@Q % ]XI\ },!% PTd#]$p+ۄooj3aMEyYyNGK@Q߽r H`nV?֌P5籎[c{w]p5)E)K$  $۽ֵ9%o[IxSW$ |9ϣͣ#o Nj7E$% #@ݖnV3}š֌Tki{ky>-Y$ mVH@&a\֋ҽ vfھUQo^ GO% o!{/q.qq2o`\\RXj_+_ڴ2 H@!^i$Ax>q]׈xNоBlldBރa'\O{H@=~y.$+ ~q}k ׊*f>Kr[=V[:KNI@/&p̸_4r3ۂ?aH@&~5aǗIa.qSܽmz?~ }:E$ /#g5h&_tʾ%j$ k~/뾷y H@=-$p.NJ"-هݭXG@Q}{% O~ &>}XUWpuT H@W澺* H`^T\PP֟-F@Q}vL@q}~>#_AJA@Q! lV<_Y[3zngʿ{PTNN H@A@q|PYJ@ =  H[{O|_Ƿ\~Hnx-=կ& lQD~ bknFIW~MuI%ЋΣyn%VR$rs B Dm߾o`izh4 H`za'uoAZ' HZ$ le7-mުVL߲Gi G#CQ}t-@ؽ-oXYbC߳Fg$3VA\W\kX& HS՟"H$.žv y-_G%f{ H`OݣݏZx܊z8*wԝu]$  H@o#~j'$p/_moosW, mITsH@ ۠y9b'$YY|& H@&cﯫ~KG6Ojނx:O@Q}=vWP>݊m7+naE7kW87+gW H m  Hp$l! J@Ol' Ht`ҿN[=v G;$% ޶fK+vF$ xzº*x^lx+Է^K+k:$ o84{Gt7&N# lw_3{~g)SSr$  H@@@Q[A@xϟ,v$pLc6L@aّivY_.R{շb+ H@EvK[% xB||J"EEF@Q1N, H@LWX+-PToi7E$  H`ջ6^O߯ z):x vy#>ܖ H@7&o-UQ6 HC>v#Rod#4CwPT˦M@qn' Hg?f/ H@o#~ML~ob4BwPTߍO@~θSaFE딀n$xjmi3wjvF@q \ H++V"%  @kɒ|* up H`_+L^띦>ޞ" HG+N=m}۶[Λj8^nR)qܧmX$p0ko5JI@EϸK8kՋlח{ٜAx%oT|%]ǖ6Lrcw %מS?BϾ!~ WG6K1>=sd+&7% -PToaAx׷:mWê?i$g=K@7;}#f $wZG%|3uD H`SN? ^buRq|t-]  gn:M]gd Ȼ$ӯvEy9 | EW0+ycTPsC y'm纏>^6I@E9'-9$Fo}.3-;8͖ ~!\^I@AJfAڿy?'㞶?^xz>D@A!&,֛0 % -PLoiW~wOÖ["=PTq״Y_ImY(ֳ=v H3՟]w@{e9 ?Fꏡwb H6 8m՞*mVH@>Gr H`؄Ù>ܖ lz۠))} Z{G+%gy]F lEbVlV,wIT66H@/7nX+";H@O$0J%t5|uI@('$ MKmx(n~܍#z'$ G (%h HY"8$p,+K}$hGg gwd^ۚx^+*Nj$  H@xAvE@/Hny0?c-s.]}+$Y(Y}.P$ #-w"=U[ܕwԋso.7Oܴ_IٱK@Q^& H@(/J4c7='o v5J@8:EwI@6Iԛ1EQ$  H@w$  H@$~% GGWC@Q H@$ PTt4[$  H`; -$  H@)EN7N%  H@C@Q H@$ PTt4[ c,UH@PT[@$  H@PT?J$  H@_O@QoH@$  mD-^sW5?+;^M@O ;$p'l. %^x۪dD'$/ }n`]+ۦZ%Sםn p[>@@N)$  lz ']PTz4^G >.OPPz_T>D@1!N{8 m %=ջ6 (ڿ vH@Q{@x3;a (.l iH@1]f H@8Jx!|v$ S-@ 와bzϻ[&`ǖwG۾wW-7PPSH@F(7!cPPk?]$  \#Fz HN ;\w0N`6[SN"o ]v$N@O:K% (ec H@8EI&|$=I`G;,M=.ՇV%wPPsH@>(OZ)PPolC4+mv%i>E@A)+ H@%h6H@AM$ H@E6A$ }VWWu$#k(_ց%  HՇF!WPPcK:B'ה~@%h$  l n&Iԟ-R>^(S)PP I"EhԾ$p7^J@AR.70N#{gzIs 은K& 0Ho!~ f' ( $~ 3wF #>Gr 은{AYhG(?I%&zi$^ v6 H@voPPpS]  \!AsIENDB`pyfr-1.5.0/doc/src/000077500000000000000000000000001277740313300140405ustar00rootroot00000000000000pyfr-1.5.0/doc/src/conf.py000066400000000000000000000207001277740313300153360ustar00rootroot00000000000000# -*- coding: utf-8 -*- # # PyFR documentation build configuration file, created by # sphinx-quickstart on Sat Oct 6 23:44:12 2012. # # This file is execfile()d with the current directory set to its containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import os import sys # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath('../../')) sys.path.insert(0, os.path.abspath('../ext/')) # -- General configuration ----------------------------------------------------- # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.graphviz', 'sphinx.ext.inheritance_diagram', 'sphinx.ext.mathjax', 'sphinx.ext.viewcode', 'tikz'] # Settings for inheritance diagrams. graphviz_output_format = 'svg' inheritance_graph_attrs = dict( center='true', layout='dot', rankdir='LR', ranksep='0.11', splines='ortho') inheritance_node_attrs = dict( color='"#333333"', fillcolor='"#d8e6b8"', fontsize='9', penwidth='0.3', shape='box', style='"rounded,filled"') inheritance_edge_attrs = dict( color='"#333333"', penwidth='0.3') # The names of modules to mock and hence avoid import. autodoc_mock_imports = [ 'pycuda', 'pycuda.driver', 'pycuda.gpuarray', 'pycuda.reduction', 'pyopencl', 'pyopencl.array', 'pyopencl.reduction'] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'PyFR' copyright = u'2013-2016, Imperial College London' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = '1.5.0' # The full version, including alpha/beta/rc tags. release = '1.5.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = [] # The reST default role (used for this markup: `text`) to use for all documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # -- Options for HTML output --------------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = 'classic' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". #html_static_path = ['_static'] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Output file base name for HTML help builder. htmlhelp_basename = 'PyFRdoc' # -- Options for LaTeX output -------------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). #'pointsize': '10pt', # Additional stuff for the LaTeX preamble. 'preamble': '\setcounter{secnumdepth}{4}', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ ('index', 'PyFR.tex', u'PyFR Documentation', u'Imperial College London', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output -------------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ ('index', 'pyfr', u'PyFR Documentation', [u'Imperial College London'], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------------ # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ ('index', 'PyFR', u'PyFR Documentation', u'Imperial College London', 'PyFR', 'One line description of project.', 'Miscellaneous'), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' pyfr-1.5.0/doc/src/developer_guide.rst000066400000000000000000000456601277740313300177470ustar00rootroot00000000000000.. highlightlang:: python *************** Developer Guide *************** ====================================== A Brief Overview of the PyFR Framework ====================================== Where to Start -------------- The symbolic link :code:`pyfr.scripts.pyfr` points to the script :code:`pyfr.scripts.main`, which is where it all starts! Specifically, the function :code:`process_run` calls the function :code:`_process_common`, which in turn calls the function :code:`get_solver`, returning an Integrator -- a composite of a `Controller`_ and a `Stepper`_. The Integrator has a method named :code:`run`, which is then called to run the simulation. Controller ---------- A `Controller`_ acts to advance the simulation in time. Specifically, a `Controller`_ has a method named :code:`advance_to` which advances a `System`_ to a specified time. There are three types of `Controller`_ available in PyFR |release|: .. autoclass:: pyfr.integrators.std.controllers.StdNoneController :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.std.controllers.StdPIController :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.controllers.DualNoneController :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `Controller`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.integrators.std.controllers pyfr.integrators.dual.controllers :parts: 1 Stepper ------- A `Stepper`_ acts to advance the simulation by a single time-step. Specifically, a `Stepper`_ has a method named :code:`step` which advances a `System`_ by a single time-step. There are 11 types of `Stepper`_ available in PyFR |release|: .. autoclass:: pyfr.integrators.std.steppers.StdEulerStepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.std.steppers.StdRK4Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.std.steppers.StdRK34Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.std.steppers.StdRK45Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.std.steppers.StdTVDRK3Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.steppers.DualBDF2Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.steppers.DualBDF3Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.steppers.DualBackwardEulerStepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.pseudosteppers.DualPseudoRK4Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.pseudosteppers.DualPseudoTVDRK3Stepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.integrators.dual.pseudosteppers.DualPseudoEulerStepper :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `Stepper`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.integrators.dual.steppers pyfr.integrators.dual.pseudosteppers pyfr.integrators.std.steppers :parts: 1 System ------ A `System`_ holds information/data for the system, including `Elements`_, `Interfaces`_, and the `Backend`_ with which the simulation is to run. A `System`_ has a method named :code:`rhs`, which obtains the divergence of the flux (the 'right-hand-side') at each solution point. The method :code:`rhs` invokes various kernels which have been pre-generated and loaded into queues. A `System`_ also has a method named :code:`_gen_kernels` which acts to generate all the kernels required by a particular `System`_. A kernel is an instance of a 'one-off' class with a method named :code:`run` that implements the required kernel functionality. Individual kernels are produced by a kernel provider. PyFR |release| has various types of kernel provider. A `Pointwise Kernel Provider`_ produces point-wise kernels such as Riemann solvers and flux functions etc. These point-wise kernels are specified using an in-built platform-independent templating language derived from `Mako `_, henceforth referred to as `PyFR-Mako`_. There are two types of `System`_ available in PyFR |release|: .. autoclass:: pyfr.solvers.euler.system.EulerSystem :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.solvers.navstokes.system.NavierStokesSystem :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `System`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.solvers.navstokes.system pyfr.solvers.euler.system :parts: 1 Elements -------- An `Elements`_ holds information/data for a group of elements. There are two types of `Elements`_ available in PyFR |release|: .. autoclass:: pyfr.solvers.euler.elements.EulerElements :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.solvers.navstokes.elements.NavierStokesElements :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `Elements`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.solvers.navstokes.elements pyfr.solvers.euler.elements :parts: 1 Interfaces ---------- An `Interfaces`_ holds information/data for a group of interfaces. There are four types of (non-boundary) `Interfaces`_ available in PyFR |release|: .. autoclass:: pyfr.solvers.euler.inters.EulerIntInters :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.solvers.euler.inters.EulerMPIInters :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.solvers.navstokes.inters.NavierStokesIntInters :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.solvers.navstokes.inters.NavierStokesMPIInters :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of (non-boundary) `Interfaces`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.solvers.navstokes.inters.NavierStokesMPIInters pyfr.solvers.navstokes.inters.NavierStokesIntInters pyfr.solvers.euler.inters.EulerMPIInters pyfr.solvers.euler.inters.EulerIntInters :parts: 1 Backend ------- A `Backend`_ holds information/data for a backend. There are four types of `Backend`_ available in PyFR |release|: .. autoclass:: pyfr.backends.cuda.base.CUDABackend :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.mic.base.MICBackend :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.opencl.base.OpenCLBackend :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.openmp.base.OpenMPBackend :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `Backend`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.backends.cuda.base pyfr.backends.opencl.base pyfr.backends.openmp.base pyfr.backends.mic.base :parts: 1 Pointwise Kernel Provider ------------------------- A `Pointwise Kernel Provider`_ produces point-wise kernels. Specifically, a `Pointwise Kernel Provider`_ has a method named :code:`register`, which adds a new method to an instance of a `Pointwise Kernel Provider`_. This new method, when called, returns a kernel. A kernel is an instance of a 'one-off' class with a method named :code:`run` that implements the required kernel functionality. The kernel functionality itself is specified using `PyFR-Mako`_. Hence, a `Pointwise Kernel Provider`_ also has a method named :code:`_render_kernel`, which renders `PyFR-Mako`_ into low-level platform-specific code. The :code:`_render_kernel` method first sets the context for Mako (i.e. details about the `Backend`_ etc.) and then uses Mako to begin rendering the `PyFR-Mako`_ specification. When Mako encounters a :code:`pyfr:kernel` an instance of a `Kernel Generator`_ is created, which is used to render the body of the :code:`pyfr:kernel`. There are four types of `Pointwise Kernel Provider`_ available in PyFR |release|: .. autoclass:: pyfr.backends.cuda.provider.CUDAPointwiseKernelProvider :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.mic.provider.MICPointwiseKernelProvider :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.opencl.provider.OpenCLPointwiseKernelProvider :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.openmp.provider.OpenMPPointwiseKernelProvider :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `Pointwise Kernel Provider`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.backends.openmp.provider pyfr.backends.cuda.provider pyfr.backends.opencl.provider pyfr.backends.mic.provider pyfr.backends.base.kernels.BasePointwiseKernelProvider :parts: 1 Kernel Generator ---------------- A `Kernel Generator`_ renders the `PyFR-Mako`_ in a :code:`pyfr:kernel` into low-level platform-specific code. Specifically, a `Kernel Generator`_ has a method named :code:`render`, which applies `Backend`_ specific regex and adds `Backend`_ specific 'boiler plate' code to produce the low-level platform-specific source -- which is compiled, linked, and loaded. There are four types of `Kernel Generator`_ available in PyFR |release|: .. autoclass:: pyfr.backends.cuda.generator.CUDAKernelGenerator :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.mic.generator.MICKernelGenerator :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.opencl.generator.OpenCLKernelGenerator :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry .. autoclass:: pyfr.backends.openmp.generator.OpenMPKernelGenerator :members: :undoc-members: :inherited-members: :private-members: :exclude-members: _abc_cache, _abc_negative_cache, _abc_negative_cache_version, _abc_registry Types of `Kernel Generator`_ are related via the following inheritance diagram: .. inheritance-diagram:: pyfr.backends.cuda.generator.CUDAKernelGenerator pyfr.backends.opencl.generator.OpenCLKernelGenerator pyfr.backends.openmp.generator.OpenMPKernelGenerator pyfr.backends.mic.generator.MICKernelGenerator :parts: 1 ========= PyFR-Mako ========= PyFR-Mako Kernels ----------------- PyFR-Mako kernels are specifications of point-wise functionality that can be invoked directly from within PyFR. They are opened with a header of the form:: <%pyfr:kernel name='kernel-name' ndim='data-dimensionality' [argument-name='argument-intent argument-attribute argument-data-type' ...]> where 1. ``kernel-name`` --- name of kernel *string* 2. ``data-dimensionality`` --- dimensionality of data *int* 3. ``argument-name`` --- name of argument *string* 4. ``argument-intent`` --- intent of argument ``in`` | ``out`` | ``inout`` 5. ``argument-attribute`` --- attribute of argument ``mpi`` | ``scalar`` | ``view`` 6. ``argument-data-type`` --- data type of argument *string* and are closed with a footer of the form:: PyFR-Mako Macros ---------------- PyFR-Mako macros are specifications of point-wise functionality that cannot be invoked directly from within PyFR, but can be embedded into PyFR-Mako kernels. PyFR-Mako macros can be viewed as building blocks for PyFR-mako kernels. They are opened with a header of the form:: <%pyfr:macro name='macro-name' params='[parameter-name, ...]'> where 1. ``macro-name`` --- name of macro *string* 2. ``parameter-name`` --- name of parameter *string* and are closed with a footer of the form:: PyFR-Mako macros are embedded within a kernel using an expression of the following form:: ${pyfr.expand('macro-name', ['parameter-name', ...])}; where 1. ``macro-name`` --- name of the macro *string* 2. ``parameter-name`` --- name of parameter *string* Syntax ------ Basic Functionality ^^^^^^^^^^^^^^^^^^^ Basic functionality can be expressed using a restricted subset of the C programming language. Specifically, use of the following is allowed: 1. ``+,-,*,/`` --- basic arithmetic 2. ``sin, cos, tan`` --- basic trigonometric functions 3. ``exp`` --- exponential 4. ``pow`` --- power 5. ``fabs`` --- absolute value 6. ``output = ( condition ? satisfied : unsatisfied )`` --- ternary if 7. ``min`` --- minimum 8. ``max`` --- maximum However, conditional if statements, as well as for/while loops, are not allowed. Expression Substitution ^^^^^^^^^^^^^^^^^^^^^^^ Mako expression substitution can be used to facilitate PyFR-Mako kernel specification. A Python expression :code:`expression` prescribed thus :code:`${expression}` is substituted for the result when the PyFR-Mako kernel specification is interpreted at runtime. Example:: E = s[${ndims - 1}] Conditionals ^^^^^^^^^^^^ Mako conditionals can be used to facilitate PyFR-Mako kernel specification. Conditionals are opened with :code:`% if condition:` and closed with :code:`% endif`. Note that such conditionals are evaluated when the PyFR-Mako kernel specification is interpreted at runtime, they are not embedded into the low-level kernel. Example:: % if ndims == 2: fout[0][1] += t_xx; fout[1][1] += t_xy; fout[0][2] += t_xy; fout[1][2] += t_yy; fout[0][3] += u*t_xx + v*t_xy + ${-c['mu']*c['gamma']/c['Pr']}*T_x; fout[1][3] += u*t_xy + v*t_yy + ${-c['mu']*c['gamma']/c['Pr']}*T_y; % endif Loops ^^^^^ Mako loops can be used to facilitate PyFR-Mako kernel specification. Loops are opened with :code:`% for condition:` and closed with :code:`% endfor`. Note that such loops are unrolled when the PyFR-Mako kernel specification is interpreted at runtime, they are not embedded into the low-level kernel. Example:: % for i in range(ndims): rhov[${i}] = s[${i + 1}]; v[${i}] = invrho*rhov[${i}]; % endfor pyfr-1.5.0/doc/src/home.rst000066400000000000000000000040641277740313300155260ustar00rootroot00000000000000**** Home **** Overview ======== What is PyFR? ------------- PyFR is an open-source Python based framework for solving advection-diffusion type problems on streaming architectures using the Flux Reconstruction approach of Huynh. The framework is designed to solve a range of governing systems on mixed unstructured grids containing various element types. It is also designed to target a range of hardware platforms via use of an in-built domain specific language derived from the Mako templating engine. The current release (PyFR |release|) has the following capabilities: - Governing Equations - Euler, Navier Stokes - Dimensionality - 2D, 3D - Element Types - Triangles, Quadrilaterals, Hexahedra, Prisms, Tetrahedra, Pyramids - Platforms - CPU Clusters, Nvidia GPU Clusters, AMD GPU Clusters, Intel Xeon Phi Clusters - Spatial Discretisation - High-Order Flux Reconstruction - Temporal Discretisation - Explicit and Implicit (via Dual Time-Stepping) - Precision - Single, Double - Mesh Files Imported - Gmsh (.msh), CGNS (.cgns) - Solution Files Exported - Unstructured VTK (.vtu, .pvtu) How do I Cite PyFR? ------------------- To cite PyFR, please reference the following paper: - `PyFR: An Open Source Framework for Solving Advection-Diffusion Type Problems on Streaming Architectures using the Flux Reconstruction Approach. F. D. Witherden, A. M. Farrington, P. E. Vincent. Computer Physics Communications, Volume 185, Pages 3028-3040, 2014. `_ Who is Funding PyFR? -------------------- Development of PyFR is supported by the `Engineering and Physical Sciences Research Council `_, `Innovate UK `_, the `European Commission `_, `BAE Systems `_, `Airbus `_, and the `Air Force Office of Scientific Research `_. We are also grateful for hardware donations from Nvidia, Intel, and AMD. pyfr-1.5.0/doc/src/index.rst000066400000000000000000000003411277740313300156770ustar00rootroot00000000000000.. highlightlang:: none #### PyFR #### Contents: .. toctree:: :maxdepth: 2 home theory user_guide developer_guide Indices and Tables ****************** * :ref:`genindex` * :ref:`modindex` * :ref:`search` pyfr-1.5.0/doc/src/theory.rst000066400000000000000000000076321277740313300161140ustar00rootroot00000000000000****** Theory ****** Flux Reconstruction =================== Overview -------- High-order numerical methods for unstructured grids combine the superior accuracy of high-order spectral or finite difference methods with the geometrical flexibility of low-order finite volume or finite element schemes. The Flux Reconstruction (FR) approach unifies various high-order schemes for unstructured grids within a single framework. Additionally, the FR approach exhibits a significant degree of element locality, and is thus able to run efficiently on modern streaming architectures, such as Graphical Processing Units (GPUs). The aforementioned properties of FR mean it offers a promising route to performing affordable, and hence industrially relevant, scale-resolving simulations of hitherto intractable unsteady flows (involving separation, acoustics etc.) within the vicinity of real-world engineering geometries. An detailed overview of the FR approach is given in: - `A Flux Reconstruction Approach to High-Order Schemes Including Discontinuous Galerkin Methods. H. T. Huynh. AIAA Paper 2007-4079 `_ Linear Stability ---------------- The linear stability of an FR schemes depends on the form of the correction function. Linear stability issues are discussed in: - `A New Class of High-Order Energy Stable Flux Reconstruction Schemes. P. E. Vincent, P. Castonguay, A. Jameson. Journal of Scientific Computing, Volume 47, Number 1, Pages 50-72, 2011 `_ - `Insights from von Neumann Analysis of High-Order Flux Reconstruction Schemes. P. E. Vincent, P. Castonguay, A. Jameson. Journal of Computational Physics, Volume 230, Issue 22, Pages 8134-8154, 2011 `_ - `A New Class of High-Order Energy Stable Flux Reconstruction Schemes for Triangular Elements. P. Castonguay, P. E. Vincent, A. Jameson. Journal of Scientific Computing, Volume 51, Number 1, Pages 224-256, 2012 `_ - `Energy Stable Flux Reconstruction Schemes for Advection-Diffusion Problems. P. Castonguay, D. M. Williams, P. E. Vincent, A. Jameson. Computer Methods in Applied Mechanics and Engineering, Volume 267, Pages 400-417, 2013 `_ - `Energy Stable Flux Reconstruction Schemes for Advection-Diffusion Problems on Triangles. D. M. Williams, P. Castonguay, P. E. Vincent, A. Jameson. Journal of Computational Physics, Volume 250, Pages 53-76, 2013 `_ - `Energy Stable Flux Reconstruction Schemes for Advection-Diffusion Problems on Tetrahedra. D. M. Williams, A. Jameson. Journal of Scientific Computing, Volume 59, Pages 721-759, 2014 `_ - `An Extended Range of Stable-Symmetric-Conservative Flux Reconstruction Correction Functions. P. E. Vincent, A. M. Farrington, F. D. Witherden, A. Jameson. Computer Methods in Applied Mechanics and Engineering, Volume 296, Pages 248-272, 2015 `_ Non-Linear Stability -------------------- The non-linear stability of an FR schemes depends on the location of the solution points. Non-linear stability issues are discussed in: - `On the Non-Linear Stability of Flux Reconstruction Schemes. A. Jameson, P. E. Vincent, P. Castonguay. Journal of Scientific Computing, Volume 50, Number 2, Pages 434-445, 2012 `_ - `An Analysis of Solution Point Coordinates for Flux Reconstruction Schemes on Triangular Elements. F. D. Witherden, P. E. Vincent. Journal of Scientific Computing, Volume 61, Pages 398-423, 2014 `_ pyfr-1.5.0/doc/src/user_guide.rst000066400000000000000000000676641277740313300167500ustar00rootroot00000000000000.. highlightlang:: none ********** User Guide ********** Getting Started =============== Downloading the Source ---------------------- PyFR can be obtained `here `_. Dependencies ------------ Overview ^^^^^^^^ PyFR |release| has a hard dependency on Python 3.3+ and the following Python packages: 1. `gimmik `_ >= 2.0 2. `h5py `_ >= 2.6 3. `mako `_ >= 1.0.0 4. `mpi4py `_ >= 2.0 5. `numpy `_ >= 1.8 6. `pytools `_ >= 2016.2.1 Note that due to a bug in `numpy `_ PyFR is not compatible with 32-bit Python distributions. CUDA Backend ^^^^^^^^^^^^ The CUDA backend targets NVIDIA GPUs with a compute capability of 2.0 or greater. The backend requires: 1. `CUDA `_ >= 4.2 2. `pycuda `_ >= 2015.1 MIC Backend ^^^^^^^^^^^ The MIC backend targets Intel Xeon Phi co-processors. The backend requires: 1. ICC >= 14.0 2. Intel MKL >= 11.1 3. Intel MPSS >= 3.3 4. `pymic `_ >= 0.7 (post commit 4d8a2da) OpenCL Backend ^^^^^^^^^^^^^^ The OpenCL backend targets a range of accelerators including GPUs from AMD and NVIDIA. The backend requires: 1. OpenCL 2. `pyopencl `_ >= 2015.2.4 3. `clBLAS `_ OpenMP Backend ^^^^^^^^^^^^^^ The OpenMP backend targets multi-core CPUs. The backend requires: 1. GCC >= 4.9 2. A BLAS library compiled as a shared library (e.g. `OpenBLAS `_) Running in Parallel ^^^^^^^^^^^^^^^^^^^ To partition meshes for running in parallel it is also necessary to have one of the following partitioners installed: 1. `metis `_ >= 5.0 2. `scotch `_ >= 6.0 Importing CGNS Meshes ^^^^^^^^^^^^^^^^^^^^^ To import CGNS meshes it is necessary to have the following installed: 1. `CGNS `_ >= 3.3 (develop branch post commit e0faea6) Installation ------------ Before running PyFR |release| it is first necessary to either install the software using the provided ``setup.py`` installer or add the root PyFR directory to ``PYTHONPATH`` using:: user@computer ~/PyFR$ export PYTHONPATH=.:$PYTHONPATH To manage installation of Python dependencies we strongly recommend using `pip `_ and `virtualenv `_. Running PyFR ============ Overview -------- PyFR |release| uses three distinct file formats: 1. ``.ini`` --- configuration file 2. ``.pyfrm`` --- mesh file 3. ``.pyfrs`` --- solution file The following commands are available from the ``pyfr`` program: 1. ``pyfr import`` --- convert a `Gmsh `_ .msh file or `CGNS `_ .cgns file into a PyFR .pyfrm file. Example:: pyfr import mesh.msh mesh.pyfrm 2. ``pyfr partition`` --- partition an existing mesh and associated solution files. Example:: pyfr partition 2 mesh.pyfrm solution.pyfrs . 3. ``pyfr run`` --- start a new PyFR simulation. Example:: pyfr run mesh.pyfrm configuration.ini 4. ``pyfr restart`` --- restart a PyFR simulation from an existing solution file. Example:: pyfr restart mesh.pyfrm solution.pyfrs 5. ``pyfr export`` --- convert a PyFR .pyfrs file into an unstructured VTK .vtu or .pvtu file. Example:: pyfr export mesh.pyfrm solution.pyfrs solution.vtu Running in Parallel ^^^^^^^^^^^^^^^^^^^ ``pyfr`` can be run in parallel. To do so prefix ``pyfr`` with ``mpirun -n ``. Note that the mesh must be pre-partitioned, and the number of cores or devices must be equal to the number of partitions. Configuration File (.ini) ------------------------- Overview ^^^^^^^^ The .ini configuration file parameterises the simulation. It is written in the `INI `_ format. Parameters are grouped into sections. The roles of each section and their associated parameters are described below. [backend] ^^^^^^^^^ Parameterises the backend with 1. ``precision`` --- number precision: ``single`` | ``double`` 2. ``rank-allocator`` --- MPI rank allocator: ``linear`` | ``random`` Example:: [backend] precision = double rank-allocator = linear [backend-cuda] ^^^^^^^^^^^^^^ Parameterises the CUDA backend with 1. ``device-id`` --- method for selecting which device(s) to run on: *int* | ``round-robin`` | ``local-rank`` 2. ``gimmik-max-nnz`` --- cutoff for GiMMiK in terms of the number of non-zero entires in a constant matrix: *int* 3. ``mpi-type`` --- type of MPI library that is being used: ``standard`` | ``cuda-aware`` 4. ``block-1d`` --- block size for one dimensional pointwise kernels: *int* 5. ``block-2d`` --- block size for two dimensional pointwise kernels: *int*, *int* Example:: [backend-cuda] device-id = round-robin gimmik-max-nnz = 512 mpi-type = standard block-1d = 64 block-2d = 128, 2 [backend-mic] ^^^^^^^^^^^^^^^^ Parameterises the MIC backend with 1. ``device-id`` --- for selecting which device(s) to run on: *int* | ``local-rank`` 2. ``mkl-root`` --- path to MKL root directory: *string* [backend-opencl] ^^^^^^^^^^^^^^^^ Parameterises the OpenCL backend with 1. ``platform-id`` --- for selecting platform id: *int* | *string* 2. ``device-type`` --- for selecting what type of device(s) to run on: ``all`` | ``cpu`` | ``gpu`` | ``accelerator`` 3. ``device-id`` --- for selecting which device(s) to run on: *int* | *string* | ``local-rank`` 4. ``gimmik-max-nnz`` --- cutoff for GiMMiK in terms of the number of non-zero entires in a constant matrix: *int* 5. ``local-size-1d`` --- local work size for one dimensional pointwise kernels: *int* 6. ``local-size-2d`` --- local work size for two dimensional pointwise kernels: *int*, *int* Example:: [backend-opencl] platform-id = 0 device-type = gpu device-id = local-rank gimmik-max-nnz = 512 local-size-1d = 16 local-size-2d = 128, 1 [backend-openmp] ^^^^^^^^^^^^^^^^ Parameterises the OpenMP backend with 1. ``cc`` --- C compiler: *string* 2. ``cflags`` --- additional C compiler flags: *string* 3. ``cblas`` --- path to shared C BLAS library: *string* 4. ``cblas-type`` --- type of BLAS library: ``serial`` | ``parallel`` Example:: [backend-openmp] cc = gcc cblas= example/path/libBLAS.dylib cblas-type = parallel [constants] ^^^^^^^^^^^ Sets constants used in the simulation with 1. ``gamma`` --- ratio of specific heats: *float* 2. ``mu`` --- dynamic viscosity: *float* 3. ``Pr`` --- Prandtl number: *float* 4. ``cpTref`` --- product of specific heat at constant pressure and reference temperature for Sutherland's Law: *float* 5. ``cpTs`` --- product of specific heat at constant pressure and Sutherland temperature for Sutherland's Law: *float* Example:: [constants] gamma = 1.4 mu = 0.001 Pr = 0.72 [solver] ^^^^^^^^ Parameterises the solver with 1. ``system`` --- governing system: ``euler`` | ``navier-stokes`` 2. ``order`` --- order of polynomial solution basis: *int* 3. ``anti-alias`` --- type of anti-aliasing: ``flux`` | ``surf-flux`` | ``div-flux`` | ``flux, surf-flux`` | ``flux, div-flux`` | ``surf-flux, div-flux`` | ``flux, surf-flux, div-flux`` 4. ``viscosity-correction`` --- viscosity correction: ``none`` | ``sutherland`` 5. ``shock-capturing`` --- shock capturing scheme: ``none`` | ``artificial-viscosity`` Example:: [solver] system = navier-stokes order = 3 anti-alias = flux viscosity-correction = none shock-capturing = artificial-viscosity [solver-time-integrator] ^^^^^^^^^^^^^^^^^^^^^^^^ Parameterises the time-integration scheme used by the solver with 1. ``formulation`` --- formulation: ``std`` | ``dual`` where ``std`` requires - ``scheme`` --- time-integration scheme ``euler`` | ``rk34`` | ``rk4`` | ``rk45`` | ``tvd-rk3`` - ``tstart`` --- initial time *float* - ``tend`` --- final time *float* - ``dt`` --- time-step *float* - ``controller`` --- time-step controller ``none`` | ``pi`` where ``pi`` only works with ``rk34`` and ``rk45`` and requires - ``atol`` --- absolute error tolerance *float* - ``rtol`` --- relative error tolerance *float* - ``errest-norm`` --- norm to use for estimating the error ``uniform`` | ``l2`` - ``safety-fact`` --- safety factor for step size adjustment (suitable range 0.80-0.95) *float* - ``min-fact`` --- minimum factor that the time-step can change between iterations (suitable range 0.1-0.5) *float* - ``max-fact`` --- maximum factor that the time-step can change between iterations (suitable range 2.0-6.0) *float* ``dual`` requires - ``scheme`` --- time-integration scheme ``backward-euler`` | ``bdf2`` | ``bdf3`` - ``pseudo-scheme`` --- pseudo-time-integration scheme ``euler`` | ``tvd-rk3`` | ``rk4`` - ``tstart`` --- initial time *float* - ``tend`` --- final time *float* - ``dt`` --- time-step *float* - ``pseudo-dt`` --- pseudo-time-step *float* - ``controller`` --- pseudo-time-step controller ``none`` where ``none`` requires - ``pseudo-niters-max`` --- minimum number of iterations *int* - ``pseudo-niters-min`` --- maximum number of iterations *int* - ``pseudo-aresid`` --- absolute residual tolerance *float* - ``pseudo-rresid`` --- relative residual tolerance *float* Example:: [solver-time-integrator] formulation = std scheme = rk45 controller = pi tstart = 0.0 tend = 10.0 dt = 0.001 atol = 0.00001 rtol = 0.00001 errest-norm = l2 safety-fact = 0.9 min-fact = 0.3 max-fact = 2.5 [solver-interfaces] ^^^^^^^^^^^^^^^^^^^ Parameterises the interfaces with 1. ``riemann-solver`` --- type of Riemann solver: ``rusanov`` | ``hll`` | ``hllc`` | ``roe`` | ``roem`` 2. ``ldg-beta`` --- beta parameter used for LDG: *float* 3. ``ldg-tau`` --- tau parameter used for LDG: *float* Example:: [solver-interfaces] riemann-solver = rusanov ldg-beta = 0.5 ldg-tau = 0.1 [solver-interfaces-line] ^^^^^^^^^^^^^^^^^^^^^^^^ Parameterises the line interfaces with 1. ``flux-pts`` --- location of the flux points on a line interface: ``gauss-legendre`` | ``gauss-legendre-lobatto`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing on a line interface: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing on a line interface: ``gauss-legendre`` | ``gauss-legendre-lobatto`` Example:: [solver-interfaces-line] flux-pts = gauss-legendre quad-deg = 10 quad-pts = gauss-legendre [solver-interfaces-tri] ^^^^^^^^^^^^^^^^^^^^^^^ Parameterises the triangular interfaces with 1. ``flux-pts`` --- location of the flux points on a triangular interface: ``williams-shunn`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing on a triangular interface: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing on a triangular interface: ``williams-shunn`` | ``witherden-vincent`` Example:: [solver-interfaces-tri] flux-pts = williams-shunn quad-deg = 10 quad-pts = williams-shunn [solver-interfaces-quad] ^^^^^^^^^^^^^^^^^^^^^^^^ Parameterises the quadrilateral interfaces with 1. ``flux-pts`` --- location of the flux points on a quadrilateral interface: ``gauss-legendre`` | ``gauss-legendre-lobatto`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing on a quadrilateral interface: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing on a quadrilateral interface: ``gauss-legendre`` | ``gauss-legendre-lobatto`` | ``witherden-vincent`` Example:: [solver-interfaces-quad] flux-pts = gauss-legendre quad-deg = 10 quad-pts = gauss-legendre [solver-elements-tri] ^^^^^^^^^^^^^^^^^^^^^ Parameterises the triangular elements with 1. ``soln-pts`` --- location of the solution points in a triangular element: ``williams-shunn`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing in a triangular element: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing in a triangular element: ``williams-shunn`` | ``witherden-vincent`` Example:: [solver-elements-tri] soln-pts = williams-shunn quad-deg = 10 quad-pts = williams-shunn [solver-elements-quad] ^^^^^^^^^^^^^^^^^^^^^^ Parameterises the quadrilateral elements with 1. ``soln-pts`` --- location of the solution points in a quadrilateral element: ``gauss-legendre`` | ``gauss-legendre-lobatto`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing in a quadrilateral element: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing in a quadrilateral element: ``gauss-legendre`` | ``gauss-legendre-lobatto`` | ``witherden-vincent`` Example:: [solver-elements-quad] soln-pts = gauss-legendre quad-deg = 10 quad-pts = gauss-legendre [solver-elements-hex] ^^^^^^^^^^^^^^^^^^^^^ Parameterises the hexahedral elements with 1. ``soln-pts`` --- location of the solution points in a hexahedral element: ``gauss-legendre`` | ``gauss-legendre-lobatto`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing in a hexahedral element: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing in a hexahedral element: ``gauss-legendre`` | ``gauss-legendre-lobatto`` | ``witherden-vincent`` Example:: [solver-elements-hex] soln-pts = gauss-legendre quad-deg = 10 quad-pts = gauss-legendre [solver-elements-tet] ^^^^^^^^^^^^^^^^^^^^^ Parameterises the tetrahedral elements with 1. ``soln-pts`` --- location of the solution points in a tetrahedral element: ``shunn-ham`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing in a tetrahedral element: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing in a tetrahedral element: ``shunn-ham`` | ``witherden-vincent`` Example:: [solver-elements-tet] soln-pts = shunn-ham quad-deg = 10 quad-pts = shunn-ham [solver-elements-pri] ^^^^^^^^^^^^^^^^^^^^^ Parameterises the prismatic elements with 1. ``soln-pts`` --- location of the solution points in a prismatic element: ``williams-shunn~gauss-legendre`` | ``williams-shunn~gauss-legendre-lobatto`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing in a prismatic element: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing in a prismatic element: ``williams-shunn~gauss-legendre`` | ``williams-shunn~gauss-legendre-lobatto`` | ``witherden-vincent`` Example:: [solver-elements-pri] soln-pts = williams-shunn~gauss-legendre quad-deg = 10 quad-pts = williams-shunn~gauss-legendre [solver-elements-pyr] ^^^^^^^^^^^^^^^^^^^^^ Parameterises the pyramidal elements with 1. ``soln-pts`` --- location of the solution points in a pyramidal element: ``gauss-legendre`` | ``gauss-legendre-lobatto`` 2. ``quad-deg`` --- degree of quadrature rule for anti-aliasing in a pyramidal element: *int* 3. ``quad-pts`` --- name of quadrature rule for anti-aliasing in a pyramidal element: ``witherden-vincent`` Example:: [solver-elements-pyr] soln-pts = gauss-legendre quad-deg = 10 quad-pts = witherden-vincent [solver-source-terms] ^^^^^^^^^^^^^^^^^^^^^ Parameterises solution, space (x, y, [z]), and time (t) dependent source terms with 1. ``rho`` --- density source term: *string* 2. ``rhou`` --- x-momentum source term: *string* 3. ``rhov`` --- y-momentum source term: *string* 4. ``rhow`` --- z-momentum source term: *string* 5. ``E`` --- energy source term: *string* Example:: [solver-source-terms] rho = t rhou = x*y*sin(y) rhov = z*rho rhow = 1.0 E = 1.0/(1.0+x) [solver-artificial-viscosity] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Parameterises artificial viscosity for shock capturing with 1. ``max-artvisc`` --- maximum artificial viscosity: *float* 2. ``s0`` --- sensor cut-off: *float* 3. ``kappa`` --- sensor range: *float* Example:: [solver-artificial-viscosity] max-artvisc = 0.01 s0 = 0.01 kappa = 5.0 [soln-filter] ^^^^^^^^^^^^^ Parameterises an exponential solution filter with 1. ``nsteps`` --- apply filter every ``nsteps``: *int* 2. ``alpha`` --- strength of filter: *float* 3. ``order`` --- order of filter: *int* 4. ``cutoff`` --- cutoff frequency below which no filtering is applied: *int* Example:: [soln-filter] nsteps = 10 alpha = 36.0 order = 16 cutoff = 1 [soln-plugin-writer] ^^^^^^^^^^^^^^^^^^^^ Periodically write the solution to disk in the pyfrs format. Parameterised with 1. ``dt-out`` --- write to disk every ``dt-out`` time units: *float* 2. ``basedir`` --- relative path to directory where outputs will be written: *string* 3. ``basename`` --- pattern of output names: *string* 4. ``post-action`` --- command to execute after writing the file: *string* 5. ``post-action-mode`` --- how the post-action command should be executed: ``blocking`` | ``non-blocking`` Example:: [soln-plugin-writer] dt-out = 0.01 basedir = . basename = files-{t:.2f} post-action = echo "Wrote file {soln} at time {t} for mesh {mesh}." post-action-mode = blocking [soln-plugin-fluidforce-name] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Periodically integrates the pressure and viscous stress on the boundary labelled ``name`` and writes out the resulting force vectors to a CSV file. Parameterised with 1. ``nsteps`` --- integrate every ``nsteps``: *int* 2. ``file`` --- output file path; should the file already exist it will be appended to: *string* 3. ``header`` --- if to output a header row or not: *boolean* Example:: [soln-plugin-fluidforce-wing] nsteps = 10 file = wing-forces.csv header = true [soln-plugin-nancheck] ^^^^^^^^^^^^^^^^^^^^^^ Periodically checks the solution for NaN values. Parameterised with 1. ``nsteps`` --- check every ``nsteps``: *int* Example:: [soln-plugin-nancheck] nsteps = 10 [soln-plugin-residual] ^^^^^^^^^^^^^^^^^^^^^^ Periodically calculates the residual and writes it out to a CSV file. Parameterised with 1. ``nsteps`` --- calculate every ``nsteps``: *int* 2. ``file`` --- output file path; should the file already exist it will be appended to: *string* 3. ``header`` --- if to output a header row or not: *boolean* Example:: [soln-plugin-residual] nsteps = 10 file = residual.csv header = true [soln-plugin-dtstats] ^^^^^^^^^^^^^^^^^^^^^^ Write time-step statistics out to a CSV file. Parameterised with 1. ``flushsteps`` --- flush to disk every ``flushsteps``: *int* 2. ``file`` --- output file path; should the file already exist it will be appended to: *string* 3. ``header`` --- if to output a header row or not: *boolean* Example:: [soln-plugin-dtstats] flushsteps = 100 file = dtstats.csv header = true [soln-plugin-sampler] ^^^^^^^^^^^^^^^^^^^^^ Periodically samples specific points in the volume and writes them out to a CSV file. The plugin actually samples the solution point closest to each sample point, hence a slight discrepancy in the output sampling locations is to be expected. A nearest-neighbour search is used to locate the closest solution point to the sample point. The location process automatically takes advantage of `scipy.spatial.cKDTree `_ where available. Parameterised with 1. ``nsteps`` --- sample every ``nsteps``: *int* 2. ``samp-pts`` --- list of points to sample: ``[(x, y), (x, y), ...]`` | ``[(x, y, z), (x, y, z), ...]`` 3. ``format`` --- output variable format: ``primitive`` | ``conservative`` 4. ``file`` --- output file path; should the file already exist it will be appended to: *string* 5. ``header`` --- if to output a header row or not: *boolean* Example:: [soln-plugin-sampler] nsteps = 10 samp-pts = [(1.0, 0.7, 0.0), (1.0, 0.8, 0.0)] format = primative file = point-data.csv header = true [soln-plugin-tavg] ^^^^^^^^^^^^^^^^^^^^^^ Time average quantities. Parameterised with 1. ``nsteps`` --- accumulate the average every ``nsteps`` time steps: *int* 2. ``dt-out`` --- write to disk every ``dt-out`` time units: *float* 3. ``basedir`` --- relative path to directory where outputs will be written: *string* 4. ``basename`` --- pattern of output names: *string* 5. ``avg-name`` --- expression as a function of the primitive variables, time (t), and space (x, y, [z]) to time average; multiple expressions, each with their own *name*, may be specified: *string* Example:: [soln-plugin-tavg] nsteps = 10 dt-out = 2.0 basedir = . basename = files-{t:06.2f} avg-p = p avg-p2 = p*p avg-vel = sqrt(u*u + v*v) [soln-bcs-name] ^^^^^^^^^^^^^^^ Parameterises constant, or if available space (x, y, [z]) and time (t) dependent, boundary condition labelled :code:`name` in the .pyfrm file with 1. ``type`` --- type of boundary condition: ``char-riem-inv`` | ``no-slp-adia-wall`` | ``no-slp-isot-wall`` | ``slp-adia-wall`` | ``sub-in-frv`` | ``sub-in-ftpttang`` | ``sub-out-fp`` | ``sup-in-fa`` | ``sup-out-fn`` where ``char-riem-inv`` requires - ``rho`` --- density *float* | *string* - ``u`` --- x-velocity *float* | *string* - ``v`` --- y-velocity *float* | *string* - ``w`` --- z-velocity *float* | *string* - ``p`` --- static pressure *float* | *string* ``no-slp-isot-wall`` requires - ``u`` --- x-velocity of wall *float* - ``v`` --- y-velocity of wall *float* - ``w`` --- z-velocity of wall *float* - ``cpTw`` --- product of specific heat capacity at constant pressure and temperature of wall *float* ``sub-in-frv`` requires - ``rho`` --- density *float* | *string* - ``u`` --- x-velocity *float* | *string* - ``v`` --- y-velocity *float* | *string* - ``w`` --- z-velocity *float* | *string* ``sub-in-ftpttang`` requires - ``pt`` --- total pressure *float* - ``cpTt`` --- product of specific heat capacity at constant pressure and total temperature *float* - ``theta`` --- azimuth angle (in degrees) of inflow measured in the x-y plane relative to the positive x-axis *float* - ``phi`` --- inclination angle (in degrees) of inflow measured relative to the positive z-axis *float* ``sub-out-fp`` requires - ``p`` --- static pressure *float* | *string* ``sup-in-fa`` requires - ``rho`` --- density *float* | *string* - ``u`` --- x-velocity *float* | *string* - ``v`` --- y-velocity *float* | *string* - ``w`` --- z-velocity *float* | *string* - ``p`` --- static pressure *float* | *string* Example:: [soln-bcs-bcwallupper] type = no-slp-isot-wall cpTw = 10.0 u = 1.0 [soln-ics] ^^^^^^^^^^ Parameterises space (x, y, [z]) dependent initial conditions with 1. ``rho`` --- initial density distribution: *string* 2. ``u`` --- initial x-velocity distribution: *string* 3. ``v`` --- initial y-velocity distribution: *string* 4. ``w`` --- initial z-velocity distribution: *string* 5. ``p`` --- initial static pressure distribution: *string* Example:: [soln-ics] rho = 1.0 u = x*y*sin(y) v = z w = 1.0 p = 1.0/(1.0+x) Example --- 2D Couette Flow =========================== Proceed with the following steps to run a serial 2D Couette flow simulation on a mixed unstructured mesh: 1. Create a working directory called ``couette_flow_2d/`` 2. Copy the configuration file ``PyFR/examples/couette_flow_2d/couette_flow_2d.ini`` into ``couette_flow_2d/`` 3. Copy the `Gmsh `_ mesh file ``PyFR/examples/couette_flow_2d/couette_flow_2d.msh`` into ``couette_flow_2d/`` 4. Run pyfr to covert the `Gmsh `_ mesh file into a PyFR mesh file called ``couette_flow_2d.pyfrm``:: pyfr import couette_flow_2d.msh couette_flow_2d.pyfrm 5. Run pyfr to solve the Navier-Stokes equations on the mesh, generating a series of PyFR solution files called ``couette_flow_2d-*.pyfrs``:: pyfr run -b cuda -p couette_flow_2d.pyfrm couette_flow_2d.ini 6. Run pyfr on the solution file ``couette_flow_2d-040.pyfrs`` converting it into an unstructured VTK file called ``couette_flow_2d-040.vtu``. Note that in order to visualise the high-order data, each high-order element is sub-divided into smaller linear elements. The level of sub-division is controlled by the integer at the end of the command:: pyfr export couette_flow_2d.pyfrm couette_flow_2d-040.pyfrs couette_flow_2d-040.vtu -d 4 7. Visualise the unstructured VTK file in `Paraview `_ .. figure:: ../fig/couette_flow_2d/couette_flow_2d.png :width: 450px :figwidth: 450px :alt: couette flow :align: center Colour map of steady-state density distribution. Example --- 2D Euler Vortex =========================== Proceed with the following steps to run a parallel 2D Euler vortex simulation on a structured mesh: 1. Create a working directory called ``euler_vortex_2d/`` 2. Copy the configuration file ``PyFR/examples/euler_vortex_2d/euler_vortex_2d.ini`` into ``euler_vortex_2d/`` 3. Copy the `Gmsh `_ file ``PyFR/examples/euler_vortex_2d/euler_vortex_2d.msh`` into ``euler_vortex_2d/`` 4. Run pyfr to convert the `Gmsh `_ mesh file into a PyFR mesh file called ``euler_vortex_2d.pyfrm``:: pyfr import euler_vortex_2d.msh euler_vortex_2d.pyfrm 5. Run pyfr to partition the PyFR mesh file into two pieces:: pyfr partition 2 euler_vortex_2d.pyfrm . 6. Run pyfr to solve the Euler equations on the mesh, generating a series of PyFR solution files called ``euler_vortex_2d*.pyfrs``:: mpirun -n 2 pyfr run -b cuda -p euler_vortex_2d.pyfrm euler_vortex_2d.ini 7. Run pyfr on the solution file ``euler_vortex_2d-100.0.pyfrs`` converting it into an unstructured VTK file called ``euler_vortex_2d-100.0.vtu``. Note that in order to visualise the high-order data, each high-order element is sub-divided into smaller linear elements. The level of sub-division is controlled by the integer at the end of the command:: pyfr export euler_vortex_2d.pyfrm euler_vortex_2d-100.0.pyfrs euler_vortex_2d-100.0.vtu -d 4 8. Visualise the unstructured VTK file in `Paraview `_ .. figure:: ../fig/euler_vortex_2d/euler_vortex_2d.png :width: 450px :figwidth: 450px :alt: euler vortex :align: center Colour map of density distribution at 100 time units. pyfr-1.5.0/examples/000077500000000000000000000000001277740313300143225ustar00rootroot00000000000000pyfr-1.5.0/examples/couette_flow_2d/000077500000000000000000000000001277740313300174065ustar00rootroot00000000000000pyfr-1.5.0/examples/couette_flow_2d/couette_flow_2d.ini000066400000000000000000000020131277740313300231670ustar00rootroot00000000000000[backend] precision = double rank-allocator = linear [backend-openmp] ;cblas = Enter path to local BLAS library for OpenMP backend [constants] gamma = 1.4 mu = 0.417 Pr = 0.72 cp = 1005.0 Uw = 70 H = 1.0 Pc = 100000.0 Tw = 300.0 [solver] system = navier-stokes order = 2 [solver-time-integrator] scheme = rk4 controller = none tstart = 0.0 tend = 4 dt = 0.00004 [solver-interfaces] riemann-solver = rusanov ldg-beta = 0.5 ldg-tau = 0.1 [solver-interfaces-line] flux-pts = gauss-legendre [solver-elements-tri] soln-pts = williams-shunn [solver-elements-quad] soln-pts = gauss-legendre [soln-plugin-nancheck] nsteps = 50 [soln-plugin-writer] dt-out = 0.1 basedir = . basename = couette_flow_2d-{n:03d} [soln-bcs-bcwallupper] type = no-slp-isot-wall cpTw = cp*Tw u = Uw [soln-bcs-bcwalllower] type = no-slp-isot-wall cpTw = cp*Tw [soln-ics] rho = 4*(Pc*sqrt(Pr*(Pr*Uw*Uw+8*cp*Tw))*log((sqrt(Pr*(Pr*Uw*Uw+8*cp*Tw))+Pr*Uw)/(sqrt(Pr*(Pr*Uw*Uw+8*cp*Tw))-Pr*Uw))*gamma)/(Pr*Uw*(Pr*Uw*Uw+8*cp*Tw)*(gamma-1)) u = Uw v = 0.0 p = Pc pyfr-1.5.0/examples/couette_flow_2d/couette_flow_2d.msh000066400000000000000000000067121277740313300232110ustar00rootroot00000000000000$MeshFormat 2.2 0 8 $EndMeshFormat $PhysicalNames 5 1 2 "periodic_0_r" 1 3 "periodic_0_l" 1 4 "bcwalllower" 1 5 "bcwallupper" 2 1 "Fluid" $EndPhysicalNames $Nodes 55 1 -1 0 0 2 -1 1 0 3 1 0 0 4 1 1 0 5 -1 0.2499999999994121 0 6 -1 0.499999999998694 0 7 -1 0.7499999999993416 0 8 1 0.2499999999994121 0 9 1 0.499999999998694 0 10 1 0.7499999999993416 0 11 -0.7500000000006933 0 0 12 -0.5000000000013871 0 0 13 -0.2500000000020808 0 0 14 -2.752797989558076e-12 0 0 15 0.2499999999979192 0 0 16 0.4999999999986129 0 0 17 0.7499999999993063 0 0 18 -0.7500000000006933 1 0 19 -0.5000000000013871 1 0 20 -0.2500000000020808 1 0 21 -2.752797989558076e-12 1 0 22 0.2499999999979192 1 0 23 0.4999999999986129 1 0 24 0.7499999999993063 1 0 25 -0.3502981894187304 0.7852239400227737 0 26 0.1240193717107494 0.7937148659420212 0 27 -0.08139578575323472 0.1950141891530367 0 28 0.3389525368615741 0.2105375272670509 0 29 0.6206021414702945 0.7912616007286575 0 30 -0.7983511429019561 0.3930389312343618 0 31 0.7856968389914235 0.4055547344637892 0 32 0.3779176400046657 0.7921873874876521 0 33 0.2495059999728438 0.589907874779444 0 34 -0.003428513125012583 0.5849515889886413 0 35 0.1274748541460936 0.4097972824329819 0 36 0.5290690564243318 0.5974555011187768 0 37 -0.7611458419845716 0.6366083796773135 0 38 -0.5891963934038411 0.5061482689166195 0 39 -0.5617862198498347 0.2184182533238616 0 40 -0.363891613954654 0.4134524884490062 0 41 -0.1468927715519778 0.7420158143970752 0 42 0.7703802514195033 0.583888188044751 0 43 -0.5749519915725294 0.7703239626389732 0 44 0.5797414316461368 0.2002767081170712 0 45 -0.2342106936369328 0.5978134206155696 0 46 -0.3310347217504852 0.189999391100492 0 47 -0.1236372267379405 0.4244533034746244 0 48 0.1626989703978205 0.1989357448903505 0 49 0.3633697454044198 0.4429376560607823 0 50 -0.7853566119531349 0.7961157581691015 0 51 0.7931817583419585 0.791525219691311 0 52 -0.7976310848491993 0.1989530833722571 0 53 0.7898096708695802 0.2043170747669262 0 54 0.5644692681165779 0.4115561499401048 0 55 -0.4272476694810378 0.6121212140430038 0 $EndNodes $Elements 71 1 1 2 2 1 1 5 2 1 2 2 1 5 6 3 1 2 2 1 6 7 4 1 2 2 1 7 2 5 1 2 3 2 3 8 6 1 2 3 2 8 9 7 1 2 3 2 9 10 8 1 2 3 2 10 4 9 1 2 4 3 1 11 10 1 2 4 3 11 12 11 1 2 4 3 12 13 12 1 2 4 3 13 14 13 1 2 4 3 14 15 14 1 2 4 3 15 16 15 1 2 4 3 16 17 16 1 2 4 3 17 3 17 1 2 5 4 2 18 18 1 2 5 4 18 19 19 1 2 5 4 19 20 20 1 2 5 4 20 21 21 1 2 5 4 21 22 22 1 2 5 4 22 23 23 1 2 5 4 23 24 24 1 2 5 4 24 4 25 2 2 1 6 22 21 26 26 2 2 1 6 23 22 32 27 2 2 1 6 34 47 35 28 2 2 1 6 9 42 31 29 2 2 1 6 15 28 48 30 2 2 1 6 33 35 49 31 2 2 1 6 38 40 55 32 2 2 1 6 25 43 55 33 2 2 1 6 37 43 50 34 2 2 1 6 36 49 54 35 3 2 1 6 40 46 27 47 36 3 2 1 6 35 47 27 48 37 3 2 1 6 35 48 28 49 38 3 2 1 6 28 44 54 49 39 3 2 1 6 42 9 10 51 40 3 2 1 6 11 12 39 52 41 3 2 1 6 44 53 31 54 42 3 2 1 6 43 19 18 50 43 3 2 1 6 40 38 39 46 44 3 2 1 6 43 37 38 55 45 3 2 1 6 36 32 33 49 46 3 2 1 6 30 6 5 52 47 3 2 1 6 45 41 25 55 48 3 2 1 6 26 21 41 34 49 3 2 1 6 26 33 32 22 50 3 2 1 6 34 41 45 47 51 3 2 1 6 32 36 29 23 52 3 2 1 6 24 23 29 51 53 3 2 1 6 7 6 37 50 54 3 2 1 6 20 25 41 21 55 3 2 1 6 30 38 37 6 56 3 2 1 6 8 9 31 53 57 3 2 1 6 33 26 34 35 58 3 2 1 6 42 36 54 31 59 3 2 1 6 13 14 27 46 60 3 2 1 6 44 16 17 53 61 3 2 1 6 28 15 16 44 62 3 2 1 6 25 20 19 43 63 3 2 1 6 45 55 40 47 64 3 2 1 6 39 38 30 52 65 3 2 1 6 29 36 42 51 66 3 2 1 6 2 7 50 18 67 3 2 1 6 51 10 4 24 68 3 2 1 6 52 5 1 11 69 3 2 1 6 3 8 53 17 70 3 2 1 6 46 39 12 13 71 3 2 1 6 48 27 14 15 $EndElements pyfr-1.5.0/examples/euler_vortex_2d/000077500000000000000000000000001277740313300174325ustar00rootroot00000000000000pyfr-1.5.0/examples/euler_vortex_2d/euler_vortex_2d.ini000066400000000000000000000016571277740313300232540ustar00rootroot00000000000000[backend] precision = double rank-allocator = linear [backend-openmp] ;cblas = Enter path to local BLAS library for OpenMP backend [constants] gamma = 1.4 ; Euler vortex params S = 13.5 ; Strength M = 0.4 ; Mach number R = 1.5 ; Radius [solver] system = euler order = 3 [solver-time-integrator] scheme = rk4 controller = none tstart = 0.0 tend = 100.0 dt = 0.005 [solver-interfaces] riemann-solver = rusanov [solver-interfaces-line] flux-pts = gauss-legendre [solver-elements-quad] soln-pts = gauss-legendre [soln-plugin-nancheck] nsteps = 50 [soln-plugin-writer] dt-out = 10.0 basedir = . basename = euler_vortex_2d-{t:.1f} [soln-ics] ; Factored common subexpression f = ((1 - x*x - y*y)/(2*R*R)) rho = pow(1 - S*S*M*M*(gamma - 1)*exp(2*%(f)s)/(8*pi*pi), 1/(gamma - 1)) u = S*y*exp(%(f)s)/(2*pi*R) v = 1 - S*x*exp(%(f)s)/(2*pi*R) p = 1/(gamma*M*M)*pow(1 - S*S*M*M*(gamma - 1)*exp(2*%(f)s)/(8*pi*pi), gamma/(gamma - 1)) pyfr-1.5.0/examples/euler_vortex_2d/euler_vortex_2d.msh000066400000000000000000001004771277740313300232640ustar00rootroot00000000000000$MeshFormat 2.2 0 8 $EndMeshFormat $PhysicalNames 5 1 2 "periodic_0_r" 1 3 "periodic_0_l" 1 4 "periodic_1_r" 1 5 "periodic_1_l" 2 1 "Fluid" $EndPhysicalNames $Nodes 441 1 -10 -10 -10 2 -10 10 -10 3 10 10 -10 4 10 -10 -10 5 -10 -8.999999999998771 -10 6 -10 -7.999999999997542 -10 7 -10 -6.999999999998533 -10 8 -10 -6.000000000001744 -10 9 -10 -5.000000000004956 -10 10 -10 -4.000000000008165 -10 11 -10 -3.000000000011374 -10 12 -10 -2.000000000014513 -10 13 -10 -1.000000000013557 -10 14 -10 -1.232614010859834e-11 -10 15 -10 0.9999999999889084 -10 16 -10 1.999999999990138 -10 17 -10 2.99999999999137 -10 18 -10 3.999999999992603 -10 19 -10 4.999999999993836 -10 20 -10 5.999999999995069 -10 21 -10 6.999999999996302 -10 22 -10 7.999999999997534 -10 23 -10 8.999999999998767 -10 24 -8.999999999998771 10 -10 25 -7.999999999997542 10 -10 26 -6.999999999998533 10 -10 27 -6.000000000001744 10 -10 28 -5.000000000004956 10 -10 29 -4.000000000008165 10 -10 30 -3.000000000011374 10 -10 31 -2.000000000014513 10 -10 32 -1.000000000013557 10 -10 33 -1.232614010859834e-11 10 -10 34 0.9999999999889084 10 -10 35 1.999999999990138 10 -10 36 2.99999999999137 10 -10 37 3.999999999992603 10 -10 38 4.999999999993836 10 -10 39 5.999999999995069 10 -10 40 6.999999999996302 10 -10 41 7.999999999997534 10 -10 42 8.999999999998767 10 -10 43 10 8.999999999998771 -10 44 10 7.999999999997542 -10 45 10 6.999999999998533 -10 46 10 6.000000000001744 -10 47 10 5.000000000004956 -10 48 10 4.000000000008165 -10 49 10 3.000000000011374 -10 50 10 2.000000000014513 -10 51 10 1.000000000013557 -10 52 10 1.232614010859834e-11 -10 53 10 -0.9999999999889084 -10 54 10 -1.999999999990138 -10 55 10 -2.99999999999137 -10 56 10 -3.999999999992603 -10 57 10 -4.999999999993836 -10 58 10 -5.999999999995069 -10 59 10 -6.999999999996302 -10 60 10 -7.999999999997534 -10 61 10 -8.999999999998767 -10 62 8.999999999998771 -10 -10 63 7.999999999997542 -10 -10 64 6.999999999998533 -10 -10 65 6.000000000001744 -10 -10 66 5.000000000004956 -10 -10 67 4.000000000008165 -10 -10 68 3.000000000011374 -10 -10 69 2.000000000014513 -10 -10 70 1.000000000013557 -10 -10 71 1.232614010859834e-11 -10 -10 72 -0.9999999999889084 -10 -10 73 -1.999999999990138 -10 -10 74 -2.99999999999137 -10 -10 75 -3.999999999992603 -10 -10 76 -4.999999999993836 -10 -10 77 -5.999999999995069 -10 -10 78 -6.999999999996302 -10 -10 79 -7.999999999997534 -10 -10 80 -8.999999999998767 -10 -10 81 -8.999999999998765 -8.999999999998769 -10 82 -7.999999999997534 -8.999999999998771 -10 83 -6.999999999996414 -8.999999999998767 -10 84 -5.999999999995403 -8.999999999998767 -10 85 -4.999999999994392 -8.999999999998771 -10 86 -3.99999999999338 -8.999999999998771 -10 87 -2.99999999999237 -8.999999999998767 -10 88 -1.999999999991357 -8.999999999998771 -10 89 -0.9999999999901412 -8.999999999998771 -10 90 1.109334846205456e-11 -8.999999999998767 -10 91 1.000000000012326 -8.999999999998767 -10 92 2.000000000013292 -8.999999999998767 -10 93 3.000000000010375 -8.999999999998771 -10 94 4.000000000007388 -8.999999999998771 -10 95 5.0000000000044 -8.999999999998767 -10 96 6.00000000000141 -8.999999999998767 -10 97 6.999999999998421 -8.999999999998767 -10 98 7.99999999999754 -8.999999999998767 -10 99 8.999999999998773 -8.999999999998767 -10 100 -8.999999999998767 -7.999999999997542 -10 101 -7.999999999997535 -7.999999999997541 -10 102 -6.999999999996524 -7.999999999997538 -10 103 -5.999999999995737 -7.999999999997538 -10 104 -4.999999999994948 -7.99999999999754 -10 105 -3.99999999999416 -7.999999999997539 -10 106 -2.999999999993371 -7.999999999997539 -10 107 -1.999999999992575 -7.999999999997538 -10 108 -0.9999999999913731 -7.999999999997538 -10 109 9.86055681551079e-12 -7.999999999997538 -10 110 1.000000000011092 -7.999999999997538 -10 111 2.000000000012074 -7.999999999997536 -10 112 3.000000000009374 -7.999999999997535 -10 113 4.000000000006609 -7.999999999997536 -10 114 5.000000000003844 -7.999999999997536 -10 115 6.000000000001076 -7.999999999997535 -10 116 6.99999999999831 -7.999999999997534 -10 117 7.999999999997542 -7.999999999997535 -10 118 8.999999999998771 -7.999999999997534 -10 119 -8.999999999998767 -6.999999999998421 -10 120 -7.999999999997534 -6.999999999998311 -10 121 -6.999999999996636 -6.999999999998197 -10 122 -5.999999999996071 -6.999999999998089 -10 123 -4.999999999995504 -6.999999999997975 -10 124 -3.999999999994936 -6.999999999997866 -10 125 -2.999999999994371 -6.999999999997754 -10 126 -1.999999999993793 -6.999999999997641 -10 127 -0.9999999999926068 -6.99999999999753 -10 128 8.628653347386717e-12 -6.999999999997417 -10 129 1.00000000000986 -6.999999999997307 -10 130 2.000000000010856 -6.999999999997193 -10 131 3.000000000008374 -6.999999999997083 -10 132 4.00000000000583 -6.999999999996971 -10 133 5.000000000003288 -6.999999999996859 -10 134 6.000000000000743 -6.999999999996748 -10 135 6.999999999998199 -6.999999999996636 -10 136 7.999999999997541 -6.999999999996525 -10 137 8.999999999998767 -6.999999999996414 -10 138 -8.999999999998767 -6.000000000001412 -10 139 -7.999999999997534 -6.000000000001076 -10 140 -6.99999999999675 -6.000000000000743 -10 141 -5.999999999996403 -6.00000000000041 -10 142 -4.99999999999606 -6.000000000000076 -10 143 -3.999999999995715 -5.999999999999742 -10 144 -2.999999999995373 -5.999999999999408 -10 145 -1.999999999995012 -5.999999999999073 -10 146 -0.9999999999938374 -5.999999999998741 -10 147 7.396305790052793e-12 -5.999999999998408 -10 148 1.000000000008629 -5.999999999998074 -10 149 2.000000000009637 -5.999999999997739 -10 150 3.000000000007374 -5.999999999997406 -10 151 4.000000000005054 -5.999999999997073 -10 152 5.000000000002733 -5.999999999996739 -10 153 6.000000000000408 -5.999999999996405 -10 154 6.999999999998087 -5.999999999996072 -10 155 7.999999999997542 -5.999999999995738 -10 156 8.999999999998767 -5.999999999995403 -10 157 -8.999999999998767 -5.000000000004402 -10 158 -7.999999999997535 -5.000000000003844 -10 159 -6.999999999996859 -5.000000000003288 -10 160 -5.999999999996737 -5.000000000002733 -10 161 -4.999999999996616 -5.000000000002176 -10 162 -3.999999999996493 -5.00000000000162 -10 163 -2.999999999996372 -5.000000000001064 -10 164 -1.999999999996233 -5.000000000000508 -10 165 -0.9999999999950702 -4.999999999999952 -10 166 6.163514143509019e-12 -4.999999999999396 -10 167 1.000000000007396 -4.999999999998842 -10 168 2.000000000008419 -4.999999999998284 -10 169 3.000000000006373 -4.999999999997728 -10 170 4.000000000004275 -4.999999999997172 -10 171 5.000000000002176 -4.999999999996616 -10 172 6.000000000000075 -4.99999999999606 -10 173 6.999999999997973 -4.999999999995504 -10 174 7.999999999997542 -4.999999999994948 -10 175 8.999999999998771 -4.999999999994392 -10 176 -8.999999999998767 -4.000000000007389 -10 177 -7.999999999997537 -4.000000000006609 -10 178 -6.999999999996974 -4.000000000005831 -10 179 -5.999999999997073 -4.000000000005053 -10 180 -4.999999999997172 -4.000000000004277 -10 181 -3.999999999997272 -4.000000000003497 -10 182 -2.999999999997372 -4.000000000002718 -10 183 -1.999999999997452 -4.000000000001942 -10 184 -0.9999999999963034 -4.000000000001164 -10 185 4.929834318545545e-12 -4.000000000000385 -10 186 1.000000000006164 -3.999999999999606 -10 187 2.0000000000072 -3.999999999998828 -10 188 3.000000000005374 -3.99999999999805 -10 189 4.000000000003496 -3.999999999997272 -10 190 5.00000000000162 -3.999999999996493 -10 191 5.999999999999742 -3.999999999995716 -10 192 6.999999999997861 -3.999999999994937 -10 193 7.999999999997542 -3.999999999994159 -10 194 8.999999999998771 -3.999999999993382 -10 195 -8.999999999998767 -3.000000000010373 -10 196 -7.999999999997538 -3.000000000009374 -10 197 -6.999999999997085 -3.000000000008374 -10 198 -5.999999999997405 -3.000000000007375 -10 199 -4.999999999997728 -3.000000000006374 -10 200 -3.99999999999805 -3.000000000005374 -10 201 -2.999999999998373 -3.000000000004374 -10 202 -1.99999999999867 -3.000000000003374 -10 203 -0.9999999999975349 -3.000000000002373 -10 204 3.696154493582071e-12 -3.000000000001373 -10 205 1.000000000004932 -3.000000000000372 -10 206 2.000000000005981 -2.999999999999372 -10 207 3.000000000004373 -2.999999999998372 -10 208 4.00000000000272 -2.999999999997372 -10 209 5.000000000001064 -2.99999999999637 -10 210 5.999999999999408 -2.999999999995373 -10 211 6.999999999997749 -2.99999999999437 -10 212 7.999999999997542 -2.999999999993371 -10 213 8.999999999998767 -2.999999999992371 -10 214 -8.999999999998767 -2.000000000013295 -10 215 -7.999999999997538 -2.000000000012076 -10 216 -6.999999999997193 -2.000000000010857 -10 217 -5.999999999997739 -2.000000000009639 -10 218 -4.999999999998284 -2.000000000008419 -10 219 -3.999999999998826 -2.0000000000072 -10 220 -2.999999999999373 -2.000000000005982 -10 221 -1.999999999999888 -2.000000000004764 -10 222 -0.9999999999987681 -2.000000000003544 -10 223 2.465139203877698e-12 -2.000000000002325 -10 224 1.000000000003699 -2.000000000001108 -10 225 2.000000000004762 -1.999999999999889 -10 226 3.000000000003372 -1.99999999999867 -10 227 4.000000000001942 -1.99999999999745 -10 228 5.000000000000508 -1.999999999996232 -10 229 5.999999999999074 -1.999999999995013 -10 230 6.999999999997639 -1.999999999993794 -10 231 7.99999999999754 -1.999999999992575 -10 232 8.999999999998767 -1.999999999991358 -10 233 -8.999999999998767 -1.000000000012325 -10 234 -7.999999999997538 -1.000000000011093 -10 235 -6.999999999997307 -1.000000000009861 -10 236 -5.999999999998073 -1.000000000008627 -10 237 -4.99999999999884 -1.000000000007395 -10 238 -3.999999999999605 -1.000000000006163 -10 239 -3.000000000000373 -1.00000000000493 -10 240 -2.000000000001107 -1.000000000003697 -10 241 -1 -1.000000000002466 -10 242 1.231903468124074e-12 -1.000000000001233 -10 243 1.000000000002466 -1.000000000000001 -10 244 2.000000000003543 -0.9999999999987681 -10 245 3.000000000002372 -0.9999999999975353 -10 246 4.000000000001162 -0.9999999999963034 -10 247 4.999999999999952 -0.9999999999950711 -10 248 5.999999999998741 -0.9999999999938392 -10 249 6.999999999997529 -0.9999999999926068 -10 250 7.999999999997538 -0.9999999999913736 -10 251 8.999999999998767 -0.9999999999901408 -10 252 -8.999999999998767 -1.109360936446384e-11 -10 253 -7.999999999997538 -9.861078620329335e-12 -10 254 -6.999999999997417 -8.628631142924413e-12 -10 255 -5.999999999998407 -7.395573042858688e-12 -10 256 -4.999999999999396 -6.162625965095429e-12 -10 257 -4.000000000000382 -4.931122177264176e-12 -10 258 -3.000000000001372 -3.698952255618145e-12 -10 259 -2.000000000002326 -2.465894155552332e-12 -10 260 -1.000000000001233 -1.233058100086396e-12 -10 261 0 -1.519298140712631e-23 -10 262 1.000000000001234 1.232169921636312e-12 -10 263 2.000000000002325 2.465228021707511e-12 -10 264 3.000000000001372 3.696953854149164e-12 -10 265 4.000000000000384 4.929567865010519e-12 -10 266 4.999999999999396 6.162625965081721e-12 -10 267 5.999999999998407 7.395684065152924e-12 -10 268 6.999999999997417 8.627409897594579e-12 -10 269 7.999999999997538 9.860912086875631e-12 -10 270 8.999999999998767 1.109352609773698e-11 -10 271 -8.999999999998771 0.9999999999901417 -10 272 -7.999999999997538 0.9999999999913733 -10 273 -6.999999999997529 0.9999999999926061 -10 274 -5.999999999998741 0.9999999999938395 -10 275 -4.999999999999952 0.9999999999950717 -10 276 -4.00000000000116 0.9999999999963045 -10 277 -3.000000000002373 0.9999999999975369 -10 278 -2.000000000003544 0.9999999999987694 -10 279 -1.000000000002466 1.000000000000001 -10 280 -1.233235735753624e-12 1.000000000001234 -10 281 1.000000000000001 1.000000000002466 -10 282 2.000000000001106 1.000000000003697 -10 283 3.000000000000372 1.000000000004931 -10 284 3.999999999999606 1.000000000006164 -10 285 4.99999999999884 1.000000000007397 -10 286 5.999999999998073 1.000000000008628 -10 287 6.999999999997305 1.000000000009861 -10 288 7.99999999999754 1.000000000011093 -10 289 8.999999999998767 1.000000000012327 -10 290 -8.999999999998767 1.999999999991355 -10 291 -7.999999999997536 1.999999999992574 -10 292 -6.999999999997641 1.999999999993793 -10 293 -5.999999999999075 1.999999999995011 -10 294 -5.000000000000508 1.999999999996231 -10 295 -4.00000000000194 1.999999999997449 -10 296 -3.000000000003372 1.999999999998668 -10 297 -2.000000000004762 1.999999999999886 -10 298 -1.000000000003698 2.000000000001106 -10 299 -2.465583293087548e-12 2.000000000002324 -10 300 0.9999999999987681 2.000000000003543 -10 301 1.999999999999887 2.000000000004762 -10 302 2.999999999999372 2.000000000005981 -10 303 3.999999999998828 2.0000000000072 -10 304 4.999999999998284 2.000000000008419 -10 305 5.999999999997739 2.000000000009636 -10 306 6.999999999997192 2.000000000010856 -10 307 7.999999999997536 2.000000000012075 -10 308 8.999999999998767 2.000000000013294 -10 309 -8.999999999998767 2.999999999992371 -10 310 -7.999999999997542 2.999999999993371 -10 311 -6.999999999997751 2.999999999994371 -10 312 -5.999999999999408 2.999999999995372 -10 313 -5.000000000001064 2.999999999996371 -10 314 -4.000000000002718 2.999999999997373 -10 315 -3.000000000004373 2.999999999998373 -10 316 -2.000000000005981 2.999999999999372 -10 317 -1.00000000000493 3.000000000000372 -10 318 -3.698152895026396e-12 3.000000000001372 -10 319 0.9999999999975355 3.000000000002372 -10 320 1.999999999998669 3.000000000003372 -10 321 2.999999999998371 3.000000000004373 -10 322 3.99999999999805 3.000000000005373 -10 323 4.999999999997728 3.000000000006374 -10 324 5.999999999997405 3.000000000007373 -10 325 6.999999999997081 3.000000000008374 -10 326 7.999999999997538 3.000000000009374 -10 327 8.999999999998767 3.000000000010375 -10 328 -8.999999999998771 3.999999999993382 -10 329 -7.999999999997539 3.999999999994159 -10 330 -6.999999999997863 3.999999999994937 -10 331 -5.999999999999743 3.999999999995716 -10 332 -5.00000000000162 3.999999999996493 -10 333 -4.000000000003494 3.999999999997272 -10 334 -3.000000000005374 3.99999999999805 -10 335 -2.0000000000072 3.999999999998829 -10 336 -1.000000000006163 3.999999999999607 -10 337 -4.930722496965245e-12 4.000000000000385 -10 338 0.9999999999963047 4.000000000001164 -10 339 1.99999999999745 4.000000000001941 -10 340 2.999999999997372 4.000000000002719 -10 341 3.999999999997272 4.000000000003496 -10 342 4.999999999997172 4.000000000004274 -10 343 5.999999999997073 4.000000000005053 -10 344 6.999999999996971 4.000000000005831 -10 345 7.999999999997538 4.000000000006609 -10 346 8.999999999998767 4.000000000007387 -10 347 -8.999999999998771 4.99999999999439 -10 348 -7.999999999997541 4.999999999994948 -10 349 -6.999999999997975 4.999999999995504 -10 350 -6.000000000000076 4.99999999999606 -10 351 -5.000000000002176 4.999999999996616 -10 352 -4.000000000004272 4.999999999997172 -10 353 -3.000000000006373 4.999999999997728 -10 354 -2.000000000008419 4.999999999998284 -10 355 -1.000000000007395 4.99999999999884 -10 356 -6.163292098904094e-12 4.999999999999396 -10 357 0.9999999999950722 4.999999999999952 -10 358 1.999999999996231 5.000000000000508 -10 359 2.999999999996372 5.000000000001065 -10 360 3.999999999996493 5.00000000000162 -10 361 4.999999999996616 5.000000000002176 -10 362 5.999999999996739 5.000000000002732 -10 363 6.999999999996859 5.000000000003287 -10 364 7.999999999997536 5.000000000003844 -10 365 8.999999999998767 5.0000000000044 -10 366 -8.999999999998767 5.999999999995403 -10 367 -7.999999999997541 5.999999999995738 -10 368 -6.999999999998089 5.999999999996072 -10 369 -6.00000000000041 5.999999999996403 -10 370 -5.000000000002732 5.999999999996739 -10 371 -4.000000000005053 5.99999999999707 -10 372 -3.000000000007375 5.999999999997405 -10 373 -2.000000000009637 5.999999999997739 -10 374 -1.000000000008628 5.999999999998073 -10 375 -7.395861700842943e-12 5.999999999998407 -10 376 0.9999999999938389 5.999999999998739 -10 377 1.999999999995011 5.999999999999075 -10 378 2.999999999995372 5.999999999999407 -10 379 3.999999999995715 5.999999999999741 -10 380 4.99999999999606 6.000000000000075 -10 381 5.999999999996405 6.000000000000409 -10 382 6.999999999996746 6.000000000000742 -10 383 7.999999999997536 6.000000000001076 -10 384 8.999999999998767 6.00000000000141 -10 385 -8.999999999998771 6.999999999996413 -10 386 -7.999999999997541 6.999999999996524 -10 387 -6.999999999998201 6.999999999996638 -10 388 -6.000000000000744 6.999999999996747 -10 389 -5.000000000003288 6.999999999996858 -10 390 -4.00000000000583 6.99999999999697 -10 391 -3.000000000008374 6.999999999997081 -10 392 -2.000000000010858 6.999999999997192 -10 393 -1.000000000009861 6.999999999997304 -10 394 -8.629541525806417e-12 6.999999999997417 -10 395 0.9999999999926068 6.999999999997528 -10 396 1.999999999993792 6.99999999999764 -10 397 2.999999999994372 6.99999999999775 -10 398 3.999999999994937 6.999999999997863 -10 399 4.999999999995503 6.999999999997974 -10 400 5.999999999996069 6.999999999998085 -10 401 6.999999999996634 6.999999999998197 -10 402 7.999999999997534 6.999999999998309 -10 403 8.999999999998767 6.999999999998419 -10 404 -8.999999999998771 7.999999999997534 -10 405 -7.999999999997542 7.999999999997536 -10 406 -6.999999999998309 7.999999999997534 -10 407 -6.000000000001076 7.999999999997538 -10 408 -5.000000000003844 7.999999999997538 -10 409 -4.000000000006609 7.999999999997536 -10 410 -3.000000000009374 7.999999999997538 -10 411 -2.000000000012076 7.999999999997538 -10 412 -1.000000000011093 7.999999999997538 -10 413 -9.860889882418178e-12 7.999999999997538 -10 414 0.9999999999913737 7.99999999999754 -10 415 1.999999999992575 7.999999999997538 -10 416 2.999999999993372 7.99999999999754 -10 417 3.99999999999416 7.999999999997538 -10 418 4.999999999994948 7.99999999999754 -10 419 5.999999999995737 7.999999999997542 -10 420 6.999999999996525 7.999999999997542 -10 421 7.999999999997534 7.999999999997542 -10 422 8.999999999998767 7.999999999997542 -10 423 -8.999999999998771 8.999999999998767 -10 424 -7.999999999997542 8.999999999998767 -10 425 -6.999999999998421 8.999999999998767 -10 426 -6.00000000000141 8.999999999998771 -10 427 -5.0000000000044 8.999999999998767 -10 428 -4.000000000007387 8.999999999998767 -10 429 -3.000000000010375 8.999999999998771 -10 430 -2.000000000013296 8.999999999998767 -10 431 -1.000000000012325 8.999999999998769 -10 432 -1.109351499550826e-11 8.999999999998771 -10 433 0.9999999999901423 8.999999999998771 -10 434 1.999999999991356 8.999999999998771 -10 435 2.999999999992372 8.999999999998769 -10 436 3.999999999993381 8.999999999998771 -10 437 4.999999999994392 8.999999999998771 -10 438 5.999999999995403 8.999999999998771 -10 439 6.999999999996413 8.999999999998771 -10 440 7.999999999997534 8.999999999998771 -10 441 8.999999999998767 8.999999999998773 -10 $EndNodes $Elements 480 1 1 4 2 1 1 2 1 5 2 1 4 2 1 1 2 5 6 3 1 4 2 1 1 2 6 7 4 1 4 2 1 1 2 7 8 5 1 4 2 1 1 2 8 9 6 1 4 2 1 1 2 9 10 7 1 4 2 1 1 2 10 11 8 1 4 2 1 1 2 11 12 9 1 4 2 1 1 2 12 13 10 1 4 2 1 1 2 13 14 11 1 4 2 1 1 2 14 15 12 1 4 2 1 1 2 15 16 13 1 4 2 1 1 2 16 17 14 1 4 2 1 1 2 17 18 15 1 4 2 1 1 2 18 19 16 1 4 2 1 1 2 19 20 17 1 4 2 1 1 2 20 21 18 1 4 2 1 1 2 21 22 19 1 4 2 1 1 2 22 23 20 1 4 2 1 1 2 23 2 21 1 4 4 2 1 2 2 24 22 1 4 4 2 1 2 24 25 23 1 4 4 2 1 2 25 26 24 1 4 4 2 1 2 26 27 25 1 4 4 2 1 2 27 28 26 1 4 4 2 1 2 28 29 27 1 4 4 2 1 2 29 30 28 1 4 4 2 1 2 30 31 29 1 4 4 2 1 2 31 32 30 1 4 4 2 1 2 32 33 31 1 4 4 2 1 1 33 34 32 1 4 4 2 1 1 34 35 33 1 4 4 2 1 1 35 36 34 1 4 4 2 1 1 36 37 35 1 4 4 2 1 1 37 38 36 1 4 4 2 1 1 38 39 37 1 4 4 2 1 1 39 40 38 1 4 4 2 1 1 40 41 39 1 4 4 2 1 1 41 42 40 1 4 4 2 1 1 42 3 41 1 4 3 3 1 1 3 43 42 1 4 3 3 1 1 43 44 43 1 4 3 3 1 1 44 45 44 1 4 3 3 1 1 45 46 45 1 4 3 3 1 1 46 47 46 1 4 3 3 1 1 47 48 47 1 4 3 3 1 1 48 49 48 1 4 3 3 1 1 49 50 49 1 4 3 3 1 1 50 51 50 1 4 3 3 1 1 51 52 51 1 4 3 3 1 1 52 53 52 1 4 3 3 1 1 53 54 53 1 4 3 3 1 1 54 55 54 1 4 3 3 1 1 55 56 55 1 4 3 3 1 1 56 57 56 1 4 3 3 1 1 57 58 57 1 4 3 3 1 1 58 59 58 1 4 3 3 1 1 59 60 59 1 4 3 3 1 1 60 61 60 1 4 3 3 1 1 61 4 61 1 4 5 4 1 1 4 62 62 1 4 5 4 1 1 62 63 63 1 4 5 4 1 1 63 64 64 1 4 5 4 1 1 64 65 65 1 4 5 4 1 1 65 66 66 1 4 5 4 1 1 66 67 67 1 4 5 4 1 1 67 68 68 1 4 5 4 1 1 68 69 69 1 4 5 4 1 1 69 70 70 1 4 5 4 1 1 70 71 71 1 4 5 4 1 2 71 72 72 1 4 5 4 1 2 72 73 73 1 4 5 4 1 2 73 74 74 1 4 5 4 1 2 74 75 75 1 4 5 4 1 2 75 76 76 1 4 5 4 1 2 76 77 77 1 4 5 4 1 2 77 78 78 1 4 5 4 1 2 78 79 79 1 4 5 4 1 2 79 80 80 1 4 5 4 1 2 80 1 81 3 4 1 1 1 2 1 80 81 5 82 3 4 1 1 1 2 80 79 82 81 83 3 4 1 1 1 2 79 78 83 82 84 3 4 1 1 1 2 78 77 84 83 85 3 4 1 1 1 2 77 76 85 84 86 3 4 1 1 1 2 76 75 86 85 87 3 4 1 1 1 2 75 74 87 86 88 3 4 1 1 1 2 74 73 88 87 89 3 4 1 1 1 2 73 72 89 88 90 3 5 1 1 2 2 -1 72 71 90 89 91 3 5 1 1 2 1 -2 71 70 91 90 92 3 4 1 1 1 1 70 69 92 91 93 3 4 1 1 1 1 69 68 93 92 94 3 4 1 1 1 1 68 67 94 93 95 3 4 1 1 1 1 67 66 95 94 96 3 4 1 1 1 1 66 65 96 95 97 3 4 1 1 1 1 65 64 97 96 98 3 4 1 1 1 1 64 63 98 97 99 3 4 1 1 1 1 63 62 99 98 100 3 4 1 1 1 1 62 4 61 99 101 3 4 1 1 1 2 5 81 100 6 102 3 4 1 1 1 2 81 82 101 100 103 3 4 1 1 1 2 82 83 102 101 104 3 4 1 1 1 2 83 84 103 102 105 3 4 1 1 1 2 84 85 104 103 106 3 4 1 1 1 2 85 86 105 104 107 3 4 1 1 1 2 86 87 106 105 108 3 4 1 1 1 2 87 88 107 106 109 3 4 1 1 1 2 88 89 108 107 110 3 5 1 1 2 2 -1 89 90 109 108 111 3 5 1 1 2 1 -2 90 91 110 109 112 3 4 1 1 1 1 91 92 111 110 113 3 4 1 1 1 1 92 93 112 111 114 3 4 1 1 1 1 93 94 113 112 115 3 4 1 1 1 1 94 95 114 113 116 3 4 1 1 1 1 95 96 115 114 117 3 4 1 1 1 1 96 97 116 115 118 3 4 1 1 1 1 97 98 117 116 119 3 4 1 1 1 1 98 99 118 117 120 3 4 1 1 1 1 99 61 60 118 121 3 4 1 1 1 2 6 100 119 7 122 3 4 1 1 1 2 100 101 120 119 123 3 4 1 1 1 2 101 102 121 120 124 3 4 1 1 1 2 102 103 122 121 125 3 4 1 1 1 2 103 104 123 122 126 3 4 1 1 1 2 104 105 124 123 127 3 4 1 1 1 2 105 106 125 124 128 3 4 1 1 1 2 106 107 126 125 129 3 4 1 1 1 2 107 108 127 126 130 3 5 1 1 2 2 -1 108 109 128 127 131 3 5 1 1 2 1 -2 109 110 129 128 132 3 4 1 1 1 1 110 111 130 129 133 3 4 1 1 1 1 111 112 131 130 134 3 4 1 1 1 1 112 113 132 131 135 3 4 1 1 1 1 113 114 133 132 136 3 4 1 1 1 1 114 115 134 133 137 3 4 1 1 1 1 115 116 135 134 138 3 4 1 1 1 1 116 117 136 135 139 3 4 1 1 1 1 117 118 137 136 140 3 4 1 1 1 1 118 60 59 137 141 3 4 1 1 1 2 7 119 138 8 142 3 4 1 1 1 2 119 120 139 138 143 3 4 1 1 1 2 120 121 140 139 144 3 4 1 1 1 2 121 122 141 140 145 3 4 1 1 1 2 122 123 142 141 146 3 4 1 1 1 2 123 124 143 142 147 3 4 1 1 1 2 124 125 144 143 148 3 4 1 1 1 2 125 126 145 144 149 3 4 1 1 1 2 126 127 146 145 150 3 5 1 1 2 2 -1 127 128 147 146 151 3 5 1 1 2 1 -2 128 129 148 147 152 3 4 1 1 1 1 129 130 149 148 153 3 4 1 1 1 1 130 131 150 149 154 3 4 1 1 1 1 131 132 151 150 155 3 4 1 1 1 1 132 133 152 151 156 3 4 1 1 1 1 133 134 153 152 157 3 4 1 1 1 1 134 135 154 153 158 3 4 1 1 1 1 135 136 155 154 159 3 4 1 1 1 1 136 137 156 155 160 3 4 1 1 1 1 137 59 58 156 161 3 4 1 1 1 2 8 138 157 9 162 3 4 1 1 1 2 138 139 158 157 163 3 4 1 1 1 2 139 140 159 158 164 3 4 1 1 1 2 140 141 160 159 165 3 4 1 1 1 2 141 142 161 160 166 3 4 1 1 1 2 142 143 162 161 167 3 4 1 1 1 2 143 144 163 162 168 3 4 1 1 1 2 144 145 164 163 169 3 4 1 1 1 2 145 146 165 164 170 3 5 1 1 2 2 -1 146 147 166 165 171 3 5 1 1 2 1 -2 147 148 167 166 172 3 4 1 1 1 1 148 149 168 167 173 3 4 1 1 1 1 149 150 169 168 174 3 4 1 1 1 1 150 151 170 169 175 3 4 1 1 1 1 151 152 171 170 176 3 4 1 1 1 1 152 153 172 171 177 3 4 1 1 1 1 153 154 173 172 178 3 4 1 1 1 1 154 155 174 173 179 3 4 1 1 1 1 155 156 175 174 180 3 4 1 1 1 1 156 58 57 175 181 3 4 1 1 1 2 9 157 176 10 182 3 4 1 1 1 2 157 158 177 176 183 3 4 1 1 1 2 158 159 178 177 184 3 4 1 1 1 2 159 160 179 178 185 3 4 1 1 1 2 160 161 180 179 186 3 4 1 1 1 2 161 162 181 180 187 3 4 1 1 1 2 162 163 182 181 188 3 4 1 1 1 2 163 164 183 182 189 3 4 1 1 1 2 164 165 184 183 190 3 5 1 1 2 2 -1 165 166 185 184 191 3 5 1 1 2 1 -2 166 167 186 185 192 3 4 1 1 1 1 167 168 187 186 193 3 4 1 1 1 1 168 169 188 187 194 3 4 1 1 1 1 169 170 189 188 195 3 4 1 1 1 1 170 171 190 189 196 3 4 1 1 1 1 171 172 191 190 197 3 4 1 1 1 1 172 173 192 191 198 3 4 1 1 1 1 173 174 193 192 199 3 4 1 1 1 1 174 175 194 193 200 3 4 1 1 1 1 175 57 56 194 201 3 4 1 1 1 2 10 176 195 11 202 3 4 1 1 1 2 176 177 196 195 203 3 4 1 1 1 2 177 178 197 196 204 3 4 1 1 1 2 178 179 198 197 205 3 4 1 1 1 2 179 180 199 198 206 3 4 1 1 1 2 180 181 200 199 207 3 4 1 1 1 2 181 182 201 200 208 3 4 1 1 1 2 182 183 202 201 209 3 4 1 1 1 2 183 184 203 202 210 3 5 1 1 2 2 -1 184 185 204 203 211 3 5 1 1 2 1 -2 185 186 205 204 212 3 4 1 1 1 1 186 187 206 205 213 3 4 1 1 1 1 187 188 207 206 214 3 4 1 1 1 1 188 189 208 207 215 3 4 1 1 1 1 189 190 209 208 216 3 4 1 1 1 1 190 191 210 209 217 3 4 1 1 1 1 191 192 211 210 218 3 4 1 1 1 1 192 193 212 211 219 3 4 1 1 1 1 193 194 213 212 220 3 4 1 1 1 1 194 56 55 213 221 3 4 1 1 1 2 11 195 214 12 222 3 4 1 1 1 2 195 196 215 214 223 3 4 1 1 1 2 196 197 216 215 224 3 4 1 1 1 2 197 198 217 216 225 3 4 1 1 1 2 198 199 218 217 226 3 4 1 1 1 2 199 200 219 218 227 3 4 1 1 1 2 200 201 220 219 228 3 4 1 1 1 2 201 202 221 220 229 3 4 1 1 1 2 202 203 222 221 230 3 5 1 1 2 2 -1 203 204 223 222 231 3 5 1 1 2 1 -2 204 205 224 223 232 3 4 1 1 1 1 205 206 225 224 233 3 4 1 1 1 1 206 207 226 225 234 3 4 1 1 1 1 207 208 227 226 235 3 4 1 1 1 1 208 209 228 227 236 3 4 1 1 1 1 209 210 229 228 237 3 4 1 1 1 1 210 211 230 229 238 3 4 1 1 1 1 211 212 231 230 239 3 4 1 1 1 1 212 213 232 231 240 3 4 1 1 1 1 213 55 54 232 241 3 4 1 1 1 2 12 214 233 13 242 3 4 1 1 1 2 214 215 234 233 243 3 4 1 1 1 2 215 216 235 234 244 3 4 1 1 1 2 216 217 236 235 245 3 4 1 1 1 2 217 218 237 236 246 3 4 1 1 1 2 218 219 238 237 247 3 4 1 1 1 2 219 220 239 238 248 3 4 1 1 1 2 220 221 240 239 249 3 4 1 1 1 2 221 222 241 240 250 3 5 1 1 2 2 -1 222 223 242 241 251 3 5 1 1 2 1 -2 223 224 243 242 252 3 4 1 1 1 1 224 225 244 243 253 3 4 1 1 1 1 225 226 245 244 254 3 4 1 1 1 1 226 227 246 245 255 3 4 1 1 1 1 227 228 247 246 256 3 4 1 1 1 1 228 229 248 247 257 3 4 1 1 1 1 229 230 249 248 258 3 4 1 1 1 1 230 231 250 249 259 3 4 1 1 1 1 231 232 251 250 260 3 4 1 1 1 1 232 54 53 251 261 3 4 1 1 1 2 13 233 252 14 262 3 4 1 1 1 2 233 234 253 252 263 3 4 1 1 1 2 234 235 254 253 264 3 4 1 1 1 2 235 236 255 254 265 3 4 1 1 1 2 236 237 256 255 266 3 4 1 1 1 2 237 238 257 256 267 3 4 1 1 1 2 238 239 258 257 268 3 4 1 1 1 2 239 240 259 258 269 3 4 1 1 1 2 240 241 260 259 270 3 5 1 1 2 2 -1 241 242 261 260 271 3 5 1 1 2 1 -2 242 243 262 261 272 3 4 1 1 1 1 243 244 263 262 273 3 4 1 1 1 1 244 245 264 263 274 3 4 1 1 1 1 245 246 265 264 275 3 4 1 1 1 1 246 247 266 265 276 3 4 1 1 1 1 247 248 267 266 277 3 4 1 1 1 1 248 249 268 267 278 3 4 1 1 1 1 249 250 269 268 279 3 4 1 1 1 1 250 251 270 269 280 3 4 1 1 1 1 251 53 52 270 281 3 4 1 1 1 2 14 252 271 15 282 3 4 1 1 1 2 252 253 272 271 283 3 4 1 1 1 2 253 254 273 272 284 3 4 1 1 1 2 254 255 274 273 285 3 4 1 1 1 2 255 256 275 274 286 3 4 1 1 1 2 256 257 276 275 287 3 4 1 1 1 2 257 258 277 276 288 3 4 1 1 1 2 258 259 278 277 289 3 4 1 1 1 2 259 260 279 278 290 3 5 1 1 2 2 -1 260 261 280 279 291 3 5 1 1 2 1 -2 261 262 281 280 292 3 4 1 1 1 1 262 263 282 281 293 3 4 1 1 1 1 263 264 283 282 294 3 4 1 1 1 1 264 265 284 283 295 3 4 1 1 1 1 265 266 285 284 296 3 4 1 1 1 1 266 267 286 285 297 3 4 1 1 1 1 267 268 287 286 298 3 4 1 1 1 1 268 269 288 287 299 3 4 1 1 1 1 269 270 289 288 300 3 4 1 1 1 1 270 52 51 289 301 3 4 1 1 1 2 15 271 290 16 302 3 4 1 1 1 2 271 272 291 290 303 3 4 1 1 1 2 272 273 292 291 304 3 4 1 1 1 2 273 274 293 292 305 3 4 1 1 1 2 274 275 294 293 306 3 4 1 1 1 2 275 276 295 294 307 3 4 1 1 1 2 276 277 296 295 308 3 4 1 1 1 2 277 278 297 296 309 3 4 1 1 1 2 278 279 298 297 310 3 5 1 1 2 2 -1 279 280 299 298 311 3 5 1 1 2 1 -2 280 281 300 299 312 3 4 1 1 1 1 281 282 301 300 313 3 4 1 1 1 1 282 283 302 301 314 3 4 1 1 1 1 283 284 303 302 315 3 4 1 1 1 1 284 285 304 303 316 3 4 1 1 1 1 285 286 305 304 317 3 4 1 1 1 1 286 287 306 305 318 3 4 1 1 1 1 287 288 307 306 319 3 4 1 1 1 1 288 289 308 307 320 3 4 1 1 1 1 289 51 50 308 321 3 4 1 1 1 2 16 290 309 17 322 3 4 1 1 1 2 290 291 310 309 323 3 4 1 1 1 2 291 292 311 310 324 3 4 1 1 1 2 292 293 312 311 325 3 4 1 1 1 2 293 294 313 312 326 3 4 1 1 1 2 294 295 314 313 327 3 4 1 1 1 2 295 296 315 314 328 3 4 1 1 1 2 296 297 316 315 329 3 4 1 1 1 2 297 298 317 316 330 3 5 1 1 2 2 -1 298 299 318 317 331 3 5 1 1 2 1 -2 299 300 319 318 332 3 4 1 1 1 1 300 301 320 319 333 3 4 1 1 1 1 301 302 321 320 334 3 4 1 1 1 1 302 303 322 321 335 3 4 1 1 1 1 303 304 323 322 336 3 4 1 1 1 1 304 305 324 323 337 3 4 1 1 1 1 305 306 325 324 338 3 4 1 1 1 1 306 307 326 325 339 3 4 1 1 1 1 307 308 327 326 340 3 4 1 1 1 1 308 50 49 327 341 3 4 1 1 1 2 17 309 328 18 342 3 4 1 1 1 2 309 310 329 328 343 3 4 1 1 1 2 310 311 330 329 344 3 4 1 1 1 2 311 312 331 330 345 3 4 1 1 1 2 312 313 332 331 346 3 4 1 1 1 2 313 314 333 332 347 3 4 1 1 1 2 314 315 334 333 348 3 4 1 1 1 2 315 316 335 334 349 3 4 1 1 1 2 316 317 336 335 350 3 5 1 1 2 2 -1 317 318 337 336 351 3 5 1 1 2 1 -2 318 319 338 337 352 3 4 1 1 1 1 319 320 339 338 353 3 4 1 1 1 1 320 321 340 339 354 3 4 1 1 1 1 321 322 341 340 355 3 4 1 1 1 1 322 323 342 341 356 3 4 1 1 1 1 323 324 343 342 357 3 4 1 1 1 1 324 325 344 343 358 3 4 1 1 1 1 325 326 345 344 359 3 4 1 1 1 1 326 327 346 345 360 3 4 1 1 1 1 327 49 48 346 361 3 4 1 1 1 2 18 328 347 19 362 3 4 1 1 1 2 328 329 348 347 363 3 4 1 1 1 2 329 330 349 348 364 3 4 1 1 1 2 330 331 350 349 365 3 4 1 1 1 2 331 332 351 350 366 3 4 1 1 1 2 332 333 352 351 367 3 4 1 1 1 2 333 334 353 352 368 3 4 1 1 1 2 334 335 354 353 369 3 4 1 1 1 2 335 336 355 354 370 3 5 1 1 2 2 -1 336 337 356 355 371 3 5 1 1 2 1 -2 337 338 357 356 372 3 4 1 1 1 1 338 339 358 357 373 3 4 1 1 1 1 339 340 359 358 374 3 4 1 1 1 1 340 341 360 359 375 3 4 1 1 1 1 341 342 361 360 376 3 4 1 1 1 1 342 343 362 361 377 3 4 1 1 1 1 343 344 363 362 378 3 4 1 1 1 1 344 345 364 363 379 3 4 1 1 1 1 345 346 365 364 380 3 4 1 1 1 1 346 48 47 365 381 3 4 1 1 1 2 19 347 366 20 382 3 4 1 1 1 2 347 348 367 366 383 3 4 1 1 1 2 348 349 368 367 384 3 4 1 1 1 2 349 350 369 368 385 3 4 1 1 1 2 350 351 370 369 386 3 4 1 1 1 2 351 352 371 370 387 3 4 1 1 1 2 352 353 372 371 388 3 4 1 1 1 2 353 354 373 372 389 3 4 1 1 1 2 354 355 374 373 390 3 5 1 1 2 2 -1 355 356 375 374 391 3 5 1 1 2 1 -2 356 357 376 375 392 3 4 1 1 1 1 357 358 377 376 393 3 4 1 1 1 1 358 359 378 377 394 3 4 1 1 1 1 359 360 379 378 395 3 4 1 1 1 1 360 361 380 379 396 3 4 1 1 1 1 361 362 381 380 397 3 4 1 1 1 1 362 363 382 381 398 3 4 1 1 1 1 363 364 383 382 399 3 4 1 1 1 1 364 365 384 383 400 3 4 1 1 1 1 365 47 46 384 401 3 4 1 1 1 2 20 366 385 21 402 3 4 1 1 1 2 366 367 386 385 403 3 4 1 1 1 2 367 368 387 386 404 3 4 1 1 1 2 368 369 388 387 405 3 4 1 1 1 2 369 370 389 388 406 3 4 1 1 1 2 370 371 390 389 407 3 4 1 1 1 2 371 372 391 390 408 3 4 1 1 1 2 372 373 392 391 409 3 4 1 1 1 2 373 374 393 392 410 3 5 1 1 2 2 -1 374 375 394 393 411 3 5 1 1 2 1 -2 375 376 395 394 412 3 4 1 1 1 1 376 377 396 395 413 3 4 1 1 1 1 377 378 397 396 414 3 4 1 1 1 1 378 379 398 397 415 3 4 1 1 1 1 379 380 399 398 416 3 4 1 1 1 1 380 381 400 399 417 3 4 1 1 1 1 381 382 401 400 418 3 4 1 1 1 1 382 383 402 401 419 3 4 1 1 1 1 383 384 403 402 420 3 4 1 1 1 1 384 46 45 403 421 3 4 1 1 1 2 21 385 404 22 422 3 4 1 1 1 2 385 386 405 404 423 3 4 1 1 1 2 386 387 406 405 424 3 4 1 1 1 2 387 388 407 406 425 3 4 1 1 1 2 388 389 408 407 426 3 4 1 1 1 2 389 390 409 408 427 3 4 1 1 1 2 390 391 410 409 428 3 4 1 1 1 2 391 392 411 410 429 3 4 1 1 1 2 392 393 412 411 430 3 5 1 1 2 2 -1 393 394 413 412 431 3 5 1 1 2 1 -2 394 395 414 413 432 3 4 1 1 1 1 395 396 415 414 433 3 4 1 1 1 1 396 397 416 415 434 3 4 1 1 1 1 397 398 417 416 435 3 4 1 1 1 1 398 399 418 417 436 3 4 1 1 1 1 399 400 419 418 437 3 4 1 1 1 1 400 401 420 419 438 3 4 1 1 1 1 401 402 421 420 439 3 4 1 1 1 1 402 403 422 421 440 3 4 1 1 1 1 403 45 44 422 441 3 4 1 1 1 2 22 404 423 23 442 3 4 1 1 1 2 404 405 424 423 443 3 4 1 1 1 2 405 406 425 424 444 3 4 1 1 1 2 406 407 426 425 445 3 4 1 1 1 2 407 408 427 426 446 3 4 1 1 1 2 408 409 428 427 447 3 4 1 1 1 2 409 410 429 428 448 3 4 1 1 1 2 410 411 430 429 449 3 4 1 1 1 2 411 412 431 430 450 3 5 1 1 2 2 -1 412 413 432 431 451 3 5 1 1 2 1 -2 413 414 433 432 452 3 4 1 1 1 1 414 415 434 433 453 3 4 1 1 1 1 415 416 435 434 454 3 4 1 1 1 1 416 417 436 435 455 3 4 1 1 1 1 417 418 437 436 456 3 4 1 1 1 1 418 419 438 437 457 3 4 1 1 1 1 419 420 439 438 458 3 4 1 1 1 1 420 421 440 439 459 3 4 1 1 1 1 421 422 441 440 460 3 4 1 1 1 1 422 44 43 441 461 3 4 1 1 1 2 23 423 24 2 462 3 4 1 1 1 2 423 424 25 24 463 3 4 1 1 1 2 424 425 26 25 464 3 4 1 1 1 2 425 426 27 26 465 3 4 1 1 1 2 426 427 28 27 466 3 4 1 1 1 2 427 428 29 28 467 3 4 1 1 1 2 428 429 30 29 468 3 4 1 1 1 2 429 430 31 30 469 3 4 1 1 1 2 430 431 32 31 470 3 5 1 1 2 2 -1 431 432 33 32 471 3 5 1 1 2 1 -2 432 433 34 33 472 3 4 1 1 1 1 433 434 35 34 473 3 4 1 1 1 1 434 435 36 35 474 3 4 1 1 1 1 435 436 37 36 475 3 4 1 1 1 1 436 437 38 37 476 3 4 1 1 1 1 437 438 39 38 477 3 4 1 1 1 1 438 439 40 39 478 3 4 1 1 1 1 439 440 41 40 479 3 4 1 1 1 1 440 441 42 41 480 3 4 1 1 1 1 441 43 3 42 $EndElements pyfr-1.5.0/pyfr/000077500000000000000000000000001277740313300134645ustar00rootroot00000000000000pyfr-1.5.0/pyfr/__init__.py000066400000000000000000000000771277740313300156010ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr._version import __version__ pyfr-1.5.0/pyfr/__main__.py000077500000000000000000000214721277740313300155670ustar00rootroot00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- from argparse import ArgumentParser, FileType import itertools as it import os import mpi4py.rc mpi4py.rc.initialize = False import h5py from pyfr.backends import BaseBackend, get_backend from pyfr.inifile import Inifile from pyfr.mpiutil import register_finalize_handler from pyfr.partitioners import BasePartitioner, get_partitioner from pyfr.progress_bar import ProgressBar from pyfr.rank_allocator import get_rank_allocation from pyfr.readers import BaseReader, get_reader_by_name, get_reader_by_extn from pyfr.readers.native import NativeReader from pyfr.solvers import get_solver from pyfr.util import subclasses from pyfr.writers import BaseWriter, get_writer_by_name, get_writer_by_extn def main(): ap = ArgumentParser(prog='pyfr') sp = ap.add_subparsers(dest='cmd', help='sub-command help') # Common options ap.add_argument('--verbose', '-v', action='count') # Import command ap_import = sp.add_parser('import', help='import --help') ap_import.add_argument('inmesh', type=FileType('r'), help='input mesh file') ap_import.add_argument('outmesh', help='output PyFR mesh file') types = sorted(cls.name for cls in subclasses(BaseReader)) ap_import.add_argument('-t', dest='type', choices=types, help='input file type; this is usually inferred ' 'from the extension of inmesh') ap_import.set_defaults(process=process_import) # Partition command ap_partition = sp.add_parser('partition', help='partition --help') ap_partition.add_argument('np', help='number of partitions or a colon ' 'delimited list of weights') ap_partition.add_argument('mesh', help='input mesh file') ap_partition.add_argument('solns', metavar='soln', nargs='*', help='input solution files') ap_partition.add_argument('outd', help='output directory') partitioners = sorted(cls.name for cls in subclasses(BasePartitioner)) ap_partition.add_argument('-p', dest='partitioner', choices=partitioners, help='partitioner to use') ap_partition.add_argument('--popt', dest='popts', action='append', default=[], metavar='key:value', help='partitioner-specific option') ap_partition.add_argument('-t', dest='order', type=int, default=3, help='target polynomial order; aids in ' 'load-balancing mixed meshes') ap_partition.set_defaults(process=process_partition) # Export command ap_export = sp.add_parser('export', help='export --help') ap_export.add_argument('meshf', help='PyFR mesh file to be converted') ap_export.add_argument('solnf', help='PyFR solution file to be converted') ap_export.add_argument('outf', type=str, help='output file') types = [cls.name for cls in subclasses(BaseWriter)] ap_export.add_argument('-t', dest='type', choices=types, required=False, help='output file type; this is usually inferred ' 'from the extension of outf') ap_export.add_argument('-d', '--divisor', type=int, default=0, help='sets the level to which high order elements ' 'are divided; output is linear between nodes, so ' 'increased resolution may be required') ap_export.add_argument('-g', '--gradients', action='store_true', help='compute gradients') ap_export.add_argument('-p', '--precision', choices=['single', 'double'], default='single', help='output number precision; ' 'defaults to single') ap_export.set_defaults(process=process_export) # Run command ap_run = sp.add_parser('run', help='run --help') ap_run.add_argument('mesh', help='mesh file') ap_run.add_argument('cfg', type=FileType('r'), help='config file') ap_run.set_defaults(process=process_run) # Restart command ap_restart = sp.add_parser('restart', help='restart --help') ap_restart.add_argument('mesh', help='mesh file') ap_restart.add_argument('soln', help='solution file') ap_restart.add_argument('cfg', nargs='?', type=FileType('r'), help='new config file') ap_restart.set_defaults(process=process_restart) # Options common to run and restart backends = sorted(cls.name for cls in subclasses(BaseBackend)) for p in [ap_run, ap_restart]: p.add_argument('--backend', '-b', choices=backends, required=True, help='backend to use') p.add_argument('--progress', '-p', action='store_true', help='show a progress bar') # Parse the arguments args = ap.parse_args() # Invoke the process method if hasattr(args, 'process'): args.process(args) else: ap.print_help() def process_import(args): # Get a suitable mesh reader instance if args.type: reader = get_reader_by_name(args.type, args.inmesh) else: extn = os.path.splitext(args.inmesh.name)[1] reader = get_reader_by_extn(extn, args.inmesh) # Get the mesh in the PyFR format mesh = reader.to_pyfrm() # Save to disk with h5py.File(args.outmesh, 'w') as f: for k, v in mesh.items(): f[k] = v def process_partition(args): # Ensure outd is a directory if not os.path.isdir(args.outd): raise ValueError('Invalid output directory') # Partition weights if ':' in args.np: pwts = [int(w) for w in args.np.split(':')] else: pwts = [1]*int(args.np) # Partitioner-specific options opts = dict(s.split(':', 1) for s in args.popts) # Create the partitioner if args.partitioner: part = get_partitioner(args.partitioner, pwts, order=args.order, opts=opts) else: for name in sorted(cls.name for cls in subclasses(BasePartitioner)): try: part = get_partitioner(name, pwts, order=args.order) break except OSError: pass else: raise RuntimeError('No partitioners available') # Partition the mesh mesh, part_soln_fn = part.partition(NativeReader(args.mesh)) # Prepare the solutions solnit = (part_soln_fn(NativeReader(s)) for s in args.solns) # Output paths/files paths = it.chain([args.mesh], args.solns) files = it.chain([mesh], solnit) # Iterate over the output mesh/solutions for path, data in zip(paths, files): # Compute the output path path = os.path.join(args.outd, os.path.basename(path.rstrip('/'))) # Save to disk with h5py.File(path, 'w') as f: for k, v in data.items(): f[k] = v def process_export(args): # Get writer instance by specified type or outf extension if args.type: writer = get_writer_by_name(args.type, args) else: extn = os.path.splitext(args.outf)[1] writer = get_writer_by_extn(extn, args) # Write the output file writer.write_out() def _process_common(args, mesh, soln, cfg): # Prefork to allow us to exec processes after MPI is initialised if hasattr(os, 'fork'): from pytools.prefork import enable_prefork enable_prefork() # Import but do not initialise MPI from mpi4py import MPI # Manually initialise MPI MPI.Init() # Ensure MPI is suitably cleaned up register_finalize_handler() # Create a backend backend = get_backend(args.backend, cfg) # Get the mapping from physical ranks to MPI ranks rallocs = get_rank_allocation(mesh, cfg) # Construct the solver solver = get_solver(backend, rallocs, mesh, soln, cfg) # If we are running interactively then create a progress bar if args.progress and MPI.COMM_WORLD.rank == 0: pb = ProgressBar(solver.tstart, solver.tcurr, solver.tend) # Register a callback to update the bar after each step callb = lambda intg: pb.advance_to(intg.tcurr) solver.completed_step_handlers.append(callb) # Execute! solver.run() # Finalise MPI MPI.Finalize() def process_run(args): _process_common( args, NativeReader(args.mesh), None, Inifile.load(args.cfg) ) def process_restart(args): mesh = NativeReader(args.mesh) soln = NativeReader(args.soln) # Ensure the solution is from the mesh we are using if soln['mesh_uuid'] != mesh['mesh_uuid']: raise RuntimeError('Invalid solution for mesh.') # Process the config file if args.cfg: cfg = Inifile.load(args.cfg) else: cfg = Inifile(soln['config']) _process_common(args, mesh, soln, cfg) if __name__ == '__main__': main() pyfr-1.5.0/pyfr/_version.py000066400000000000000000000000571277740313300156640ustar00rootroot00000000000000# -*- coding: utf-8 -*- __version__ = '1.5.0' pyfr-1.5.0/pyfr/backends/000077500000000000000000000000001277740313300152365ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/__init__.py000066400000000000000000000005701277740313300173510ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base import BaseBackend from pyfr.backends.cuda import CUDABackend from pyfr.backends.mic import MICBackend from pyfr.backends.opencl import OpenCLBackend from pyfr.backends.openmp import OpenMPBackend from pyfr.util import subclass_where def get_backend(name, cfg): return subclass_where(BaseBackend, name=name.lower())(cfg) pyfr-1.5.0/pyfr/backends/base/000077500000000000000000000000001277740313300161505ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/base/__init__.py000066400000000000000000000012551277740313300202640ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.backend import BaseBackend from pyfr.backends.base.kernels import (BaseKernelProvider, BasePointwiseKernelProvider, ComputeKernel, ComputeMetaKernel, MPIKernel, MPIMetaKernel, NotSuitableError, NullComputeKernel, NullMPIKernel) from pyfr.backends.base.types import (ConstMatrix, Matrix, MatrixBank, MatrixBase, MatrixRSlice, Queue, View, XchgMatrix, XchgView) pyfr-1.5.0/pyfr/backends/base/backend.py000066400000000000000000000130241277740313300201110ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from collections import defaultdict from functools import wraps from itertools import count import math from weakref import WeakKeyDictionary, WeakValueDictionary import numpy as np from pyfr.backends.base.kernels import NotSuitableError from pyfr.template import DottedTemplateLookup from pyfr.util import lazyprop def recordmat(fn): @wraps(fn) def newfn(self, *args, **kwargs): m = fn(self, *args, **kwargs) m.mid = next(self._mat_counter) self.mats[m.mid] = m return m return newfn class BaseBackend(object, metaclass=ABCMeta): name = None @abstractmethod def __init__(self, cfg): self.cfg = cfg # Numeric data type prec = cfg.get('backend', 'precision', 'double') if prec not in {'single', 'double'}: raise ValueError('Backend precision must be either single or ' 'double') # Convert to a NumPy data type self.fpdtype = np.dtype(prec).type # Allocated matrices self.mats = WeakValueDictionary() self._mat_counter = count() # Aliases and extents self._pend_aliases = {} self._pend_extents = defaultdict(list) self._comm_extents = set() # Mapping from backend objects to memory extents self._obj_extents = WeakKeyDictionary() @lazyprop def lookup(self): pkg = 'pyfr.backends.{0}.kernels'.format(self.name) dfltargs = dict(alignb=self.alignb, fpdtype=self.fpdtype, soasz=self.soasz, math=math) return DottedTemplateLookup(pkg, dfltargs) def malloc(self, obj, extent): # If no extent has been specified then autocommit if extent is None: # Perform the allocation data = self._malloc_impl(obj.nbytes) # Fire the callback obj.onalloc(data, 0) # Retain a (weak) reference to the allocated extent self._obj_extents[obj] = data # Otherwise defer the allocation else: # Check that the extent has not already been committed if extent in self._comm_extents: raise ValueError('Extent "{}" has already been allocated' .format(extent)) # Append self._pend_extents[extent].append(obj) # Permit obj to be aliased self._pend_aliases[obj] = [] def alias(self, obj, aobj): if obj.nbytes > aobj.nbytes: raise ValueError('Object too large to alias') try: obj.onalloc(self._obj_extents[aobj], aobj.offset) except KeyError: self._pend_aliases[aobj].append(obj) def commit(self): for reqs in self._pend_extents.values(): # Determine the required allocation size sz = sum(obj.nbytes - (obj.nbytes % -self.alignb) for obj in reqs) # Perform the allocation data = self._malloc_impl(sz) offset = 0 for obj in reqs: for aobj in [obj] + self._pend_aliases[obj]: # Fire the objects allocation callback aobj.onalloc(data, offset) # Retain a (weak) reference to the allocated extent self._obj_extents[aobj] = data # Increment the offset offset += obj.nbytes - (obj.nbytes % -self.alignb) # Mark the extents as committed and clear self._comm_extents.update(self._pend_extents) self._pend_aliases.clear() self._pend_extents.clear() @abstractmethod def _malloc_impl(self, nbytes): pass @recordmat def const_matrix(self, initval, extent=None, tags=set()): return self.const_matrix_cls(self, initval, extent, tags) @recordmat def matrix(self, ioshape, initval=None, extent=None, aliases=None, tags=set()): return self.matrix_cls(self, ioshape, initval, extent, aliases, tags) @recordmat def matrix_rslice(self, mat, p, q): return self.matrix_rslice_cls(self, mat, p, q) def matrix_bank(self, mats, initbank=0, tags=set()): return self.matrix_bank_cls(self, mats, initbank, tags) @recordmat def xchg_matrix(self, ioshape, initval=None, extent=None, aliases=None, tags=set()): return self.xchg_matrix_cls(self, ioshape, initval, extent, aliases, tags) def xchg_matrix_for_view(self, view, tags=set()): return self.xchg_matrix((view.nvrow, view.nvcol, view.n), tags=tags) def view(self, matmap, rmap, cmap, rstridemap=None, vshape=tuple(), tags=set()): return self.view_cls(self, matmap, rmap, cmap, rstridemap, vshape, tags) def xchg_view(self, matmap, rmap, cmap, rstridemap=None, vshape=tuple(), tags=set()): return self.xchg_view_cls(self, matmap, rmap, cmap, rstridemap, vshape, tags) def kernel(self, name, *args, **kwargs): for prov in self._providers: kern = getattr(prov, name, None) if kern: try: return kern(*args, **kwargs) except NotSuitableError: pass else: raise KeyError("'{}' has no providers".format(name)) def queue(self): return self.queue_cls(self) def runall(self, sequence): self.queue_cls.runall(sequence) pyfr-1.5.0/pyfr/backends/base/generator.py000066400000000000000000000155511277740313300205170ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod import re import numpy as np class Arg(object): def __init__(self, name, spec, body): self.name = name specptn = (r'(?:(in|inout|out)\s+)?' # Intent r'(?:(broadcast|mpi|scalar|view)\s+)?' # Attrs r'([A-Za-z_]\w*)' # Data type r'((?:\[\d+\]){0,2})$') # Dimensions dimsptn = r'(?<=\[)\d+(?=\])' usedptn = r'(?:[^A-Za-z]|^){0}[^A-Za-z0-9]'.format(name) # Parse our specification m = re.match(specptn, spec) if not m: raise ValueError('Invalid argument specification') g = m.groups() # Properties self.intent = g[0] or 'in' self.attrs = g[1] or '' self.dtype = g[2] # Dimensions self.cdims = [int(d) for d in re.findall(dimsptn, g[3])] self.ncdim = len(self.cdims) # Attributes self.isbroadcast = 'broadcast' in self.attrs self.ismpi = 'mpi' in self.attrs self.isused = bool(re.search(usedptn, body)) self.isview = 'view' in self.attrs self.isscalar = 'scalar' in self.attrs self.isvector = 'scalar' not in self.attrs # Validation if self.isbroadcast and self.intent != 'in': raise ValueError('Broadcast arguments must be of intent in') if self.isbroadcast and self.ncdim != 0: raise ValueError('Broadcast arguments can not have dimensions') if self.isscalar and self.dtype != 'fpdtype_t': raise ValueError('Scalar arguments must be of type fpdtype_t') class BaseKernelGenerator(object, metaclass=ABCMeta): def __init__(self, name, ndim, args, body, fpdtype): self.name = name self.ndim = ndim self.fpdtype = fpdtype # Parse and sort our argument list sargs = sorted((k, Arg(k, v, body)) for k, v in args.items()) # Eliminate unused arguments sargs = [v for k, v in sargs if v.isused] # Break arguments into point-scalars and point-vectors self.scalargs = [v for v in sargs if v.isscalar] self.vectargs = [v for v in sargs if v.isvector] # If we are 1D ensure that none of our arguments are broadcasts if ndim == 1 and any(v.isbroadcast for v in self.vectargs): raise ValueError('Broadcast arguments are not supported in 1D ' 'kernels') # If we are 2D ensure none of our arguments are views if ndim == 2 and any(v.isview for v in self.vectargs): raise ValueError('View arguments are not supported for 2D ' 'kernels') # Similarly, check for MPI matrices if ndim == 2 and any(v.ismpi for v in self.vectargs): raise ValueError('MPI matrices are not supported for 2D kernels') # Render the main body of our kernel self.body = self._render_body(body) # Determine the dimensions to be iterated over self._dims = ['_nx'] if ndim == 1 else ['_ny', '_nx'] def argspec(self): # Argument names and types argn, argt = [], [] # Dimensions argn += self._dims argt += [[np.int32]]*self.ndim # Scalar args (always of type fpdtype) argn += [sa.name for sa in self.scalargs] argt += [[self.fpdtype]]*len(self.scalargs) # Vector args for va in self.vectargs: argn.append(va.name) # View if va.isview: argt.append([np.intp]*(2 + (va.ncdim == 2))) # Non-stacked vector or MPI type elif self.ndim == 1 and (va.ncdim == 0 or va.ismpi): argt.append([np.intp]) # Broadcast vector elif va.isbroadcast: argt.append([np.intp]) # Stacked vector/matrix/stacked matrix else: argt.append([np.intp, np.int32]) # Return return self.ndim, argn, argt def needs_ldim(self, arg): return ((self.ndim == 2 and not arg.isbroadcast) or (arg.ncdim > 0 and not arg.ismpi)) @abstractmethod def render(self): pass def _deref_arg_view(self, arg): ptns = ['{0}_v[{0}_vix[X_IDX]]', r'{0}_v[{0}_vix[X_IDX] + SOA_SZ*\1]', r'{0}_v[{0}_vix[X_IDX] + {0}_vrstri[X_IDX]*\1 + SOA_SZ*\2]'] return ptns[arg.ncdim].format(arg.name) def _deref_arg_array_1d(self, arg): # Leading dimension ldim = 'ld' + arg.name if not arg.ismpi else '_nx' # Vector: # name => name_v[X_IDX] if arg.ncdim == 0: ix = 'X_IDX' # Stacked vector: # name[\1] => name_v[ldim*\1 + X_IDX] elif arg.ncdim == 1: ix = r'{0}*\1 + X_IDX'.format(ldim) # Doubly stacked MPI vector: # name[\1][\2] => name_v[(nv*\1 + \2)*ldim + X_IDX] elif arg.ismpi: ix = r'({0}*\1 + \2)*{1} + X_IDX'.format(arg.cdims[1], ldim) # Doubly stacked vector: # name[\1][\2] => name_v[ldim*\1 + X_IDX_AOSOA(\2, nv)] else: ix = (r'ld{0}*\1 + X_IDX_AOSOA(\2, {1})' .format(arg.name, arg.cdims[1])) return '{0}_v[{1}]'.format(arg.name, ix) def _deref_arg_array_2d(self, arg): # Broadcast vector: # name => name_v[X_IDX] if arg.isbroadcast: ix = 'X_IDX' # Matrix: # name => name_v[ldim*_y + X_IDX] elif arg.ncdim == 0: ix = 'ld{0}*_y + X_IDX'.format(arg.name) # Stacked matrix: # name[\1] => name_v[ldim*_y + X_IDX_AOSOA(\1, nv)] elif arg.ncdim == 1: ix = (r'ld{0}*_y + X_IDX_AOSOA(\1, {1})' .format(arg.name, arg.cdims[0])) # Doubly stacked matrix: # name[\1][\2] => name_v[(\1*ny + _y)*ldim + X_IDX_AOSOA(\2, nv)] else: ix = (r'(\1*_ny + _y)*ld{0} + X_IDX_AOSOA(\2, {1})' .format(arg.name, arg.cdims[1])) return '{0}_v[{1}]'.format(arg.name, ix) def _render_body(self, body): ptns = [r'\b{0}\b', r'\b{0}\[(\d+)\]', r'\b{0}\[(\d+)\]\[(\d+)\]'] # At single precision suffix all floating point constants by 'f' if self.fpdtype == np.float32: body = re.sub(r'(?=\d*[.eE])(?=\.?\d)\d*\.?\d*(?:[eE][+-]?\d+)?', r'\g<0>f', body) # Dereference vector arguments for va in self.vectargs: if va.isview: darg = self._deref_arg_view(va) else: if self.ndim == 1: darg = self._deref_arg_array_1d(va) else: darg = self._deref_arg_array_2d(va) # Substitute body = re.sub(ptns[va.ncdim].format(va.name), darg, body) return body pyfr-1.5.0/pyfr/backends/base/kernels.py000066400000000000000000000116031277740313300201660ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod import itertools as it import types from pyfr.util import memoize, proxylist class _BaseKernel(object): def __call__(self, *args, **kwargs): return self, args, kwargs @property def retval(self): return None def run(self, queue, *args, **kwargs): pass class ComputeKernel(_BaseKernel): ktype = 'compute' class MPIKernel(_BaseKernel): ktype = 'mpi' class NullComputeKernel(ComputeKernel): pass class NullMPIKernel(MPIKernel): pass class _MetaKernel(object): def __init__(self, kernels): self._kernels = proxylist(kernels) def run(self, queue, *args, **kwargs): self._kernels.run(queue, *args, **kwargs) class ComputeMetaKernel(_MetaKernel, ComputeKernel): pass class MPIMetaKernel(_MetaKernel, MPIKernel): pass class BaseKernelProvider(object): def __init__(self, backend): self.backend = backend class BasePointwiseKernelProvider(BaseKernelProvider, metaclass=ABCMeta): kernel_generator_cls = None @memoize def _render_kernel(self, name, mod, tplargs): # Copy the provided argument list tplargs = dict(tplargs) # Backend-specfic generator classes tplargs['_kernel_generator'] = self.kernel_generator_cls # Macro definitions tplargs['_macros'] = {} # Backchannel for obtaining kernel argument types tplargs['_kernel_argspecs'] = argspecs = {} # Render the template to yield the source code tpl = self.backend.lookup.get_template(mod) src = tpl.render(**tplargs) # Check the kernel exists in the template if name not in argspecs: raise ValueError('Kernel "{}" not defined in template' .format(name)) # Extract the metadata for the kernel ndim, argn, argt = argspecs[name] return src, ndim, argn, argt @abstractmethod def _build_kernel(self, name, src, args): pass def _build_arglst(self, dims, argn, argt, argdict): # Possible matrix types mattypes = ( self.backend.const_matrix_cls, self.backend.matrix_cls, self.backend.matrix_bank_cls, self.backend.matrix_rslice_cls, self.backend.xchg_matrix_cls ) # Possible view types viewtypes = (self.backend.view_cls, self.backend.xchg_view_cls) # First arguments are the iteration dimensions ndim, arglst = len(dims), [int(d) for d in dims] # Followed by the objects themselves for aname, atypes in zip(argn[ndim:], argt[ndim:]): try: ka = argdict[aname] except KeyError: # Allow scalar arguments to be resolved at runtime if len(atypes) == 1 and atypes[0] == self.backend.fpdtype: ka = aname else: raise # Matrix if isinstance(ka, mattypes): arglst += [ka, ka.leaddim] if len(atypes) == 2 else [ka] # View elif isinstance(ka, viewtypes): if isinstance(ka, self.backend.view_cls): view = ka else: view = ka.view arglst += [view.basedata, view.mapping] arglst += [view.rstrides] if len(atypes) == 3 else [] # Other; let the backend handle it else: arglst.append(ka) return arglst @abstractmethod def _instantiate_kernel(self, dims, fun, arglst): pass def register(self, mod): # Derive the name of the kernel from the module name = mod[mod.rfind('.') + 1:] # See if a kernel has already been registered under this name if hasattr(self, name): # Same name different module if getattr(self, name)._mod != mod: raise RuntimeError('Attempt to re-register "{}" with a ' 'different module'.format(name)) # Otherwise (since we're already registered) return else: return # Generate the kernel providing method def kernel_meth(self, tplargs, dims, **kwargs): # Render the source of kernel src, ndim, argn, argt = self._render_kernel(name, mod, tplargs) # Compile the kernel fun = self._build_kernel(name, src, list(it.chain(*argt))) # Process the argument list argb = self._build_arglst(dims, argn, argt, kwargs) # Return a ComputeKernel subclass instance return self._instantiate_kernel(dims, fun, argb) # Attach the module to the method as an attribute kernel_meth._mod = mod # Bind setattr(self, name, types.MethodType(kernel_meth, self)) class NotSuitableError(Exception): pass pyfr-1.5.0/pyfr/backends/base/makoutil.py000066400000000000000000000064561277740313300203620ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import Iterable import itertools as it import re from mako.runtime import supports_caller, capture import pyfr.nputil as nputil import pyfr.util as util def ndrange(context, *args): return util.ndrange(*args) def npdtype_to_ctype(context, dtype): return nputil.npdtype_to_ctype(dtype) def dot(context, a_, b_=None, **kwargs): ix, nd = next(iter(kwargs.items())) ab = '({})*({})'.format(a_, b_ or a_) # Allow for flexible range arguments nd = nd if isinstance(nd, Iterable) else [nd] return '(' + ' + '.join(ab.format(**{ix: i}) for i in range(*nd)) + ')' def array(context, ex_, **kwargs): ix, ni = next(iter(kwargs.items())) # Allow for flexible range arguments ni = ni if isinstance(ni, Iterable) else [ni] return '{ ' + ', '.join(ex_.format(**{ix: i}) for i in range(*ni)) + ' }' def _strip_parens(s): out, depth = [], 0 for c in s: depth += (c in '{(') - (c in ')}') if depth == 0 and c not in ')}': out.append(c) return ''.join(out) def _locals(body): # First, strip away any comments body = re.sub(r'//.*?\n', '', body) # Next, find all variable declaration statements decls = re.findall(r'(?:[A-Za-z_]\w*)\s+([A-Za-z_]\w*[^;]*?);', body) # Strip anything inside () or {} decls = [_strip_parens(d) for d in decls] # A statement can define multiple variables, so split by ',' decls = it.chain.from_iterable(d.split(',') for d in decls) return [re.match(r'\s*(\w+)', v).group(1) for v in decls] @supports_caller def macro(context, name, params): # Check we have not already been defined if name in context['_macros']: raise RuntimeError('Attempt to redefine macro "{0}"' .format(name)) # Split up the parameter list params = [p.strip() for p in params.split(',')] # Capture the function body body = capture(context, context['caller'].body) # Identify any local variable declarations lvars = _locals(body) # Suffix these variables by a '_' if lvars: body = re.sub(r'\b({0})\b'.format('|'.join(lvars)), r'\1_', body) # Save context['_macros'][name] = (params, body) return '' def expand(context, name, *params): # Get the macro parameter list and the body mparams, body = context['_macros'][name] # Validate if len(mparams) != len(params): raise ValueError('Inconsistent macro parameter list in {} [{}], [{}]' .format(name, mparams, params)) # Substitute for name, subst in zip(mparams, params): body = re.sub(r'\b{0}\b'.format(name), subst, body) return '{\n' + body + '\n}' @supports_caller def kernel(context, name, ndim, **kwargs): # Capture the kernel body body = capture(context, context['caller'].body) # Get the generator class and floating point data type kerngen, fpdtype = context['_kernel_generator'], context['fpdtype'] # Instantiate kern = kerngen(name, int(ndim), kwargs, body, fpdtype) # Save the argument/type list for later use context['_kernel_argspecs'][name] = kern.argspec() # Render and return the complete kernel return kern.render() def alias(context, name, func): context['_macros'][name] = context['_macros'][func] return '' pyfr-1.5.0/pyfr/backends/base/packing.py000066400000000000000000000023201277740313300201330ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from pyfr.backends.base.kernels import BaseKernelProvider, MPIKernel class BasePackingKernels(BaseKernelProvider, metaclass=ABCMeta): def _sendrecv(self, mv, mpipreqfn, pid, tag): # If we are an exchange view then extract the exchange matrix if isinstance(mv, self.backend.xchg_view_cls): xchgmat = mv.xchgmat else: xchgmat = mv # Create a persistent MPI request to send/recv the matrix preq = mpipreqfn(xchgmat.hdata, pid, tag) class SendRecvPackKernel(MPIKernel): def run(self, queue): # Start the request and append us to the list of requests preq.Start() queue.mpi_reqs.append(preq) return SendRecvPackKernel() @abstractmethod def pack(self, mv): pass def send_pack(self, mv, pid, tag): from mpi4py import MPI return self._sendrecv(mv, MPI.COMM_WORLD.Send_init, pid, tag) def recv_pack(self, mv, pid, tag): from mpi4py import MPI return self._sendrecv(mv, MPI.COMM_WORLD.Recv_init, pid, tag) @abstractmethod def unpack(self, mv): pass pyfr-1.5.0/pyfr/backends/base/types.py000066400000000000000000000231771277740313300177000ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from collections import Sequence, deque import numpy as np class MatrixBase(object, metaclass=ABCMeta): _base_tags = set() def __init__(self, backend, dtype, ioshape, initval, extent, aliases, tags): self.backend = backend self.tags = self._base_tags | tags self.dtype = dtype self.itemsize = np.dtype(dtype).itemsize # Alignment requirement for the leading dimension ldmod = backend.alignb // self.itemsize if 'align' in tags else 1 # Our shape and dimensionality shape, ndim = list(ioshape), len(ioshape) if ndim == 2: nrow, ncol = shape aosoashape = shape else: nvar, narr, k = shape[-2], shape[-1], backend.soasz nparr = narr - narr % -k nrow = shape[0] if ndim == 3 else shape[0]*shape[1] ncol = nvar*nparr aosoashape = shape[:-2] + [nparr // k, nvar, k] # Assign self.nrow, self.ncol = int(nrow), int(ncol) self.datashape = aosoashape self.ioshape = ioshape self.leaddim = self.ncol - (self.ncol % -ldmod) self.pitch = self.leaddim*self.itemsize self.nbytes = self.nrow*self.pitch self.traits = (self.nrow, self.leaddim, self.dtype) # Process the initial value if initval is not None: if initval.shape != self.ioshape: raise ValueError('Invalid initial value') self._initval = np.asanyarray(initval, dtype=self.dtype) else: self._initval = None # Alias or allocate ourself if aliases: if extent is not None: raise ValueError('Aliased matrices can not have an extent') backend.alias(self, aliases) else: backend.malloc(self, extent) def get(self): # If we are yet to be allocated use our initial value if hasattr(self, '_initval'): if self._initval is not None: return self._initval else: return np.zeros(self.ioshape, dtype=self.dtype) # Otherwise defer to the backend else: return self._get() @abstractmethod def _get(self): pass def _pack(self, ary): # If necessary convert from SoA to AoSoA packing if ary.ndim > 2: n, k = ary.shape[-1], self.backend.soasz ary = np.pad(ary, [(0, 0)]*(ary.ndim - 1) + [(0, -n % k)], mode='constant') ary = ary.reshape(ary.shape[:-1] + (-1, k)).swapaxes(-2, -3) ary = ary.reshape(self.nrow, self.ncol) return np.ascontiguousarray(ary, dtype=self.dtype) def _unpack(self, ary): # If necessary unpack from AoSoA to SoA if len(self.ioshape) > 2: ary = ary.reshape(self.datashape) ary = ary.swapaxes(-2, -3) ary = ary.reshape(self.ioshape[:-1] + (-1,)) ary = ary[..., :self.ioshape[-1]] return ary class Matrix(MatrixBase): _base_tags = {'dense'} def __init__(self, backend, ioshape, initval, extent, aliases, tags): super().__init__(backend, backend.fpdtype, ioshape, initval, extent, aliases, tags) def set(self, ary): if ary.shape != self.ioshape: raise ValueError('Invalid matrix shape') # If we are yet to be allocated then update our initial value if hasattr(self, '_initval'): self._initval = np.asanyarray(ary, dtype=self.dtype) # Otherwise defer to the backend else: self._set(ary) @abstractmethod def _set(self, ary): pass def rslice(self, p, q): return self.backend.matrix_rslice(self, p, q) class MatrixRSlice(object): def __init__(self, backend, mat, p, q): self.backend = backend self.parent = mat if p < 0 or q > mat.nrow or q < p: raise ValueError('Invalid row slice') self.p, self.q = int(p), int(q) self.nrow, self.ncol = self.q - self.p, mat.ncol self.dtype, self.itemsize = mat.dtype, mat.itemsize self.leaddim, self.pitch = mat.leaddim, mat.pitch self.nbytes = self.nrow*self.pitch self.traits = (self.nrow, self.leaddim, self.dtype) self.tags = mat.tags | {'slice'} @property def basedata(self): return self.parent.basedata @property def offset(self): return self.parent.offset + self.p*self.pitch class ConstMatrix(MatrixBase): _base_tags = {'const', 'dense'} def __init__(self, backend, initval, extent, tags): super().__init__(backend, backend.fpdtype, initval.shape, initval, extent, None, tags) class XchgMatrix(Matrix): pass class MatrixBank(Sequence): def __init__(self, backend, mats, initbank, tags): mats = list(mats) # Ensure all matrices have the same traits if any(m.traits != mats[0].traits for m in mats[1:]): raise ValueError('Matrices in a bank must be homogeneous') # Check that all matrices share tags if any(m.tags != mats[0].tags for m in mats[1:]): raise ValueError('Matrices in a bank must share tags') self.backend = backend self.tags = tags | mats[0].tags self._mats = mats self._curr_idx = initbank self._curr_mat = mats[initbank] def __len__(self): return len(self._mats) def __getitem__(self, idx): return self._mats[idx] def __getattr__(self, attr): return getattr(self._curr_mat, attr) def rslice(self, p, q): raise RuntimeError('Matrix banks can not be sliced') @property def active(self): return self._curr_idx @active.setter def active(self, idx): self._curr_idx = idx self._curr_mat = self._mats[idx] class View(object): def __init__(self, backend, matmap, rmap, cmap, rstridemap, vshape, tags): self.n = len(matmap) self.nvrow = vshape[-2] if len(vshape) == 2 else 1 self.nvcol = vshape[-1] if len(vshape) >= 1 else 1 self.rstrides = None # Get the different matrices which we map onto self._mats = [backend.mats[i] for i in np.unique(matmap)] # Extract the base allocation and data type self.basedata = self._mats[0].basedata self.refdtype = self._mats[0].dtype # Valid matrix types mattypes = (backend.matrix_cls, backend.matrix_rslice_cls) # Validate the matrices if any(not isinstance(m, mattypes) for m in self._mats): raise TypeError('Incompatible matrix type for view') if any(m.basedata != self.basedata for m in self._mats): raise TypeError('All viewed matrices must belong to the same ' 'allocation extent') if any(m.dtype != self.refdtype for m in self._mats): raise TypeError('Mixed data types are not supported') # SoA size k = backend.soasz # Base offsets and leading dimensions for each point offset = np.empty(self.n, dtype=np.int32) leaddim = np.empty(self.n, dtype=np.int32) for m in self._mats: ix = np.where(matmap == m.mid) offset[ix], leaddim[ix] = m.offset // m.itemsize, m.leaddim # Row/column displacements rowdisp = rmap*leaddim coldisp = (cmap // k)*(self.nvcol*k) + cmap % k mapping = (offset + rowdisp + coldisp)[None,:] self.mapping = backend.base_matrix_cls( backend, np.int32, (1, self.n), mapping, None, None, tags ) # Row strides if self.nvrow > 1: rstrides = (rstridemap*leaddim)[None,:] self.rstrides = backend.base_matrix_cls( backend, np.int32, (1, self.n), rstrides, None, None, tags ) class XchgView(object): def __init__(self, backend, matmap, rmap, cmap, rstridemap, vshape, tags): # Create a normal view self.view = backend.view(matmap, rmap, cmap, rstridemap, vshape, tags) # Dimensions self.n = n = self.view.n self.nvrow = nvrow = self.view.nvrow self.nvcol = nvcol = self.view.nvcol # Now create an exchange matrix to pack the view into self.xchgmat = backend.xchg_matrix((nvrow, nvcol, n), tags=tags) class Queue(object, metaclass=ABCMeta): def __init__(self, backend): self.backend = backend # Last kernel we executed self._last = None # Items waiting to be executed self._items = deque() # Active MPI requests self.mpi_reqs = [] def __lshift__(self, items): self._items.extend(items) def __mod__(self, items): self.run() self << items self.run() def __bool__(self): return bool(self._items) def run(self): while self._items: self._exec_next() self._wait() def _exec_item(self, item, args, kwargs): item.run(self, *args, **kwargs) self._last = item def _exec_next(self): item, args, kwargs = self._items.popleft() # If we are at a sequence point then wait for current items if self._at_sequence_point(item): self._wait() # Execute the item self._exec_item(item, args, kwargs) def _exec_nowait(self): while self._items and not self._at_sequence_point(self._items[0][0]): self._exec_item(*self._items.popleft()) @abstractmethod def _at_sequence_point(self, item): pass @abstractmethod def _wait(self): pass pyfr-1.5.0/pyfr/backends/cuda/000077500000000000000000000000001277740313300161525ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/cuda/__init__.py000066400000000000000000000001111277740313300202540ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.cuda.base import CUDABackend pyfr-1.5.0/pyfr/backends/cuda/base.py000066400000000000000000000056401277740313300174430ustar00rootroot00000000000000# -*- coding: utf-8 -*- import os import re from pyfr.backends.base import BaseBackend from pyfr.mpiutil import get_local_rank class CUDABackend(BaseBackend): name = 'cuda' def __init__(self, cfg): super().__init__(cfg) # Get the desired CUDA device devid = cfg.get('backend-cuda', 'device-id', 'round-robin') if not re.match(r'(round-robin|local-rank|\d+)$', devid): raise ValueError('Invalid device-id') # Handle the local-rank case if devid == 'local-rank': devid = str(get_local_rank()) # In the non round-robin case set CUDA_DEVICE to be the desired # CUDA device number (used by pycuda.autoinit) os.environ.pop('CUDA_DEVICE', None) if devid != 'round-robin': os.environ['CUDA_DEVICE'] = devid # Create a CUDA context from pycuda.autoinit import context import pycuda.driver as cuda # Take the required alignment to be 128 bytes self.alignb = 128 # Take the SoA size to be 32 elements self.soasz = 32 # Get the MPI runtime type self.mpitype = cfg.get('backend-cuda', 'mpi-type', 'standard') if self.mpitype not in {'standard', 'cuda-aware'}: raise ValueError('Invalid CUDA backend MPI type') # Some CUDA devices share L1 cache and shared memory; on these # devices CUDA allows us to specify a preference between L1 # cache and shared memory. For the sake of CUBLAS (which # benefits greatly from more shared memory but fails to # declare its preference) we set the global default to # PREFER_SHARED. context.set_cache_config(cuda.func_cache.PREFER_SHARED) from pyfr.backends.cuda import (blasext, cublas, gimmik, packing, provider, types) # Register our data types self.base_matrix_cls = types.CUDAMatrixBase self.const_matrix_cls = types.CUDAConstMatrix self.matrix_cls = types.CUDAMatrix self.matrix_bank_cls = types.CUDAMatrixBank self.matrix_rslice_cls = types.CUDAMatrixRSlice self.queue_cls = types.CUDAQueue self.view_cls = types.CUDAView self.xchg_matrix_cls = types.CUDAXchgMatrix self.xchg_view_cls = types.CUDAXchgView # Instantiate the base kernel providers kprovs = [provider.CUDAPointwiseKernelProvider, blasext.CUDABlasExtKernels, packing.CUDAPackingKernels, gimmik.CUDAGiMMiKKernels, cublas.CUDACUBLASKernels] self._providers = [k(self) for k in kprovs] # Pointwise kernels self.pointwise = self._providers[0] def _malloc_impl(self, nbytes): import pycuda.driver as cuda # Allocate data = cuda.mem_alloc(nbytes) # Zero cuda.memset_d32(data, 0, nbytes // 4) return data pyfr-1.5.0/pyfr/backends/cuda/blasext.py000066400000000000000000000055141277740313300201730ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np import pycuda.driver as cuda from pycuda.gpuarray import GPUArray from pycuda.reduction import ReductionKernel from pyfr.backends.cuda.provider import CUDAKernelProvider, get_grid_for_block from pyfr.backends.base import ComputeKernel from pyfr.nputil import npdtype_to_ctype class CUDABlasExtKernels(CUDAKernelProvider): def axnpby(self, *arr, subdims=None): if any(arr[0].traits != x.traits for x in arr[1:]): raise ValueError('Incompatible matrix types') nv = len(arr) nrow, ldim, dtype = arr[0].traits ncola, ncolb = arr[0].ioshape[1:] # Render the kernel template src = self.backend.lookup.get_template('axnpby').render( subdims=subdims or range(ncola), ncola=ncola, nv=nv ) # Build the kernel kern = self._build_kernel('axnpby', src, [np.int32]*3 + [np.intp]*nv + [dtype]*nv) # Determine the grid/block block = (128, 1, 1) grid = get_grid_for_block(block, ncolb, nrow) class AxnpbyKernel(ComputeKernel): def run(self, queue, *consts): args = list(arr) + list(consts) kern.prepared_async_call(grid, block, queue.cuda_stream_comp, nrow, ncolb, ldim, *args) return AxnpbyKernel() def copy(self, dst, src): if dst.traits != src.traits: raise ValueError('Incompatible matrix types') class CopyKernel(ComputeKernel): def run(self, queue): cuda.memcpy_dtod_async(dst.data, src.data, dst.nbytes, stream=queue.cuda_stream_comp) return CopyKernel() def errest(self, x, y, z, *, norm): if x.traits != y.traits != z.traits: raise ValueError('Incompatible matrix types') # Wrap xarr = GPUArray(x.leaddim*x.nrow, x.dtype, gpudata=x) yarr = GPUArray(y.leaddim*y.nrow, y.dtype, gpudata=y) zarr = GPUArray(z.leaddim*z.nrow, z.dtype, gpudata=z) # Norm type reduce_expr = 'a + b' if norm == 'l2' else 'max(a, b)' # Build the reduction kernel rkern = ReductionKernel( x.dtype, neutral='0', reduce_expr=reduce_expr, map_expr='pow(x[i]/(atol + rtol*max(fabs(y[i]), fabs(z[i]))), 2)', arguments='{0}* x, {0}* y, {0}* z, {0} atol, {0} rtol' .format(npdtype_to_ctype(x.dtype)) ) class ErrestKernel(ComputeKernel): @property def retval(self): return self._retarr.get() def run(self, queue, atol, rtol): self._retarr = rkern(xarr, yarr, zarr, atol, rtol, stream=queue.cuda_stream_comp) return ErrestKernel() pyfr-1.5.0/pyfr/backends/cuda/cublas.py000066400000000000000000000113261277740313300200000ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ctypes import POINTER, c_int, c_double, c_float, c_void_p import numpy as np from pyfr.backends.base import ComputeKernel from pyfr.ctypesutil import load_library # Possible CUBLAS exception types CUBLASError = type('CUBLASError', (Exception,), {}) CUBLASNotInitialized = type('CUBLASNotInitialized', (CUBLASError,), {}) CUBLASAllocFailed = type('CUBLASAllocFailed', (CUBLASError,), {}) CUBLASInvalidValue = type('CUBLASInvalidValue', (CUBLASError,), {}) CUBLASArchMismatch = type('CUBLASArchMismatch', (CUBLASError,), {}) CUBLASMappingError = type('CUBLASMappingError', (CUBLASError,), {}) CUBLASExecutionFailed = type('CUBLASExecutionFailed', (CUBLASError,), {}) CUBLASInternalError = type('CUBLASInternalError', (CUBLASError,), {}) class CUBLASWrappers(object): # Possible return codes _statuses = { 0x1: CUBLASNotInitialized, 0x3: CUBLASAllocFailed, 0x7: CUBLASInvalidValue, 0x8: CUBLASArchMismatch, 0xb: CUBLASMappingError, 0xd: CUBLASExecutionFailed, 0xe: CUBLASInternalError } def __init__(self): lib = load_library('cublas') # Constants self.CUBLAS_OP_N = 0 self.CUBLAS_OP_T = 1 self.CUBLAS_OP_C = 2 # cublasCreate self.cublasCreate = lib.cublasCreate_v2 self.cublasCreate.argtypes = [POINTER(c_void_p)] self.cublasCreate.errcheck = self._errcheck # cublasDestroy self.cublasDestroy = lib.cublasDestroy_v2 self.cublasDestroy.argtypes = [c_void_p] self.cublasDestroy.errcheck = self._errcheck # cublasSetStream self.cublasSetStream = lib.cublasSetStream_v2 self.cublasSetStream.argtypes = [c_void_p, c_void_p] self.cublasSetStream.errcheck = self._errcheck # cublasDgemm self.cublasDgemm = lib.cublasDgemm_v2 self.cublasDgemm.argtypes = [ c_void_p, c_int, c_int, c_int, c_int, c_int, POINTER(c_double), c_void_p, c_int, c_void_p, c_int, POINTER(c_double), c_void_p, c_int ] self.cublasDgemm.errcheck = self._errcheck # cublasSgemm self.cublasSgemm = lib.cublasSgemm_v2 self.cublasSgemm.argtypes = [ c_void_p, c_int, c_int, c_int, c_int, c_int, POINTER(c_float), c_void_p, c_int, c_void_p, c_int, POINTER(c_float), c_void_p, c_int ] self.cublasSgemm.errcheck = self._errcheck def _errcheck(self, status, fn, args): if status != 0: try: raise self._statuses[status] except KeyError: raise CUBLASError class CUDACUBLASKernels(object): def __init__(self, backend): # Load and wrap CUBLAS self._wrappers = CUBLASWrappers() # Init self._handle = c_void_p() self._wrappers.cublasCreate(self._handle) def __del__(self): # PyCUDA registers an atexit handler to destroy the CUDA context # when Python terminates; however in exceptional circumstances this # can be *before* we are garbage collected (negating the need to call # cublasDestroy as we're terminating anyway). We therefore need to # check for a valid context before calling cublasDestroy try: import pycuda.autoinit if pycuda.autoinit.context: self._wrappers.cublasDestroy(self._handle) except TypeError: pass def mul(self, a, b, out, alpha=1.0, beta=0.0): w = self._wrappers # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') # CUBLAS expects inputs to be column-major (or Fortran order in # numpy parlance). However as C = A*B => C^T = (A*B)^T # = (B^T)*(A^T) with a little trickery we can multiply our # row-major matrices directly. m, n, k = b.ncol, a.nrow, a.ncol A, B, C = b, a, out # Do not transpose either A or B opA = opB = w.CUBLAS_OP_N # α and β factors for C = α*(A*op(B)) + β*C if a.dtype == np.float64: cublasgemm = w.cublasDgemm alpha_ct, beta_ct = c_double(alpha), c_double(beta) else: cublasgemm = w.cublasSgemm alpha_ct, beta_ct = c_float(alpha), c_float(beta) class MulKernel(ComputeKernel): def run(iself, queue): w.cublasSetStream(self._handle, queue.cuda_stream_comp.handle) cublasgemm(self._handle, opA, opB, m, n, k, alpha_ct, A, A.leaddim, B, B.leaddim, beta_ct, C, C.leaddim) return MulKernel() pyfr-1.5.0/pyfr/backends/cuda/generator.py000066400000000000000000000045531277740313300205210ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.generator import BaseKernelGenerator class CUDAKernelGenerator(BaseKernelGenerator): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Specialise if self.ndim == 1: self._ix = 'int _x = blockIdx.x*blockDim.x + threadIdx.x;' self._limits = 'if (_x < _nx)' else: self._ix = ('int _x = blockIdx.x*blockDim.x + threadIdx.x;' 'int _y = blockIdx.y*blockDim.y + threadIdx.y;') self._limits = 'if (_x < _nx && _y < _ny)' def render(self): # Kernel spec spec = self._render_spec() # Iteration indicies and limits ix, limits = self._ix, self._limits # Combine return '''{spec} {{ {ix} #define X_IDX (_x) #define X_IDX_AOSOA(v, nv) SOA_IX(X_IDX, v, nv) {limits} {{ {body} }} #undef X_IDX #undef X_IDX_AOSOA }}'''.format(spec=spec, ix=ix, limits=limits, body=self.body) def _render_spec(self): # We first need the argument list; starting with the dimensions kargs = ['int ' + d for d in self._dims] # Now add any scalar arguments kargs.extend('{0.dtype} {0.name}'.format(sa) for sa in self.scalargs) # Finally, add the vector arguments for va in self.vectargs: # Views if va.isview: kargs.append('{0.dtype}* __restrict__ {0.name}_v'.format(va)) kargs.append('const int* __restrict__ {0.name}_vix' .format(va)) if va.ncdim == 2: kargs.append('const int* __restrict__ {0.name}_vrstri' .format(va)) # Arrays else: # Intent in arguments should be marked constant const = 'const' if va.intent == 'in' else '' kargs.append('{0} {1.dtype}* __restrict__ {1.name}_v' .format(const, va).strip()) if self.needs_ldim(va): kargs.append('int ld{0.name}'.format(va)) return '__global__ void {0}({1})'.format(self.name, ', '.join(kargs)) pyfr-1.5.0/pyfr/backends/cuda/gimmik.py000066400000000000000000000032101277740313300177750ustar00rootroot00000000000000# -*- coding: utf-8 -*- from gimmik import generate_mm import numpy as np from pyfr.backends.base import ComputeKernel, NotSuitableError from pyfr.backends.cuda.provider import (CUDAKernelProvider, get_grid_for_block) class CUDAGiMMiKKernels(CUDAKernelProvider): def __init__(self, backend): super().__init__(backend) self.max_nnz = backend.cfg.getint('backend-cuda', 'gimmik-max-nnz', 512) def mul(self, a, b, out, alpha=1.0, beta=0.0): # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') # Check that A is constant if 'const' not in a.tags: raise NotSuitableError('GiMMiK requires a constant a matrix') # Check that A is reasonably sparse if np.count_nonzero(a.get()) > self.max_nnz: raise NotSuitableError('Matrix too dense for GiMMiK') # Generate src = generate_mm(a.get(), dtype=a.dtype, platform='cuda', alpha=alpha, beta=beta) # Build fun = self._build_kernel('gimmik_mm', src, 'iPiPi') # Determine the grid/block block = (128, 1, 1) grid = get_grid_for_block(block, b.ncol) class MulKernel(ComputeKernel): def run(self, queue): fun.prepared_async_call(grid, block, queue.cuda_stream_comp, b.ncol, b, b.leaddim, out, out.leaddim) return MulKernel() pyfr-1.5.0/pyfr/backends/cuda/kernels/000077500000000000000000000000001277740313300176155ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/cuda/kernels/__init__.py000066400000000000000000000000301277740313300217170ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/backends/cuda/kernels/axnpby.mako000066400000000000000000000020371277740313300217710ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> __global__ void axnpby(int nrow, int ncolb, int ldim, fpdtype_t* __restrict__ x0, ${', '.join('const fpdtype_t* __restrict__ x' + str(i) for i in range(1, nv))}, ${', '.join('fpdtype_t a' + str(i) for i in range(nv))}) { int i = blockIdx.y*blockDim.y + threadIdx.y; int j = blockIdx.x*blockDim.x + threadIdx.x; int idx; if (j < ncolb && a0 == 0.0) { % for k in subdims: idx = i*ldim + SOA_IX(j, ${k}, ${ncola}); x0[idx] = ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; % endfor } else if (j < ncolb && a0 == 1.0) { % for k in subdims: idx = i*ldim + SOA_IX(j, ${k}, ${ncola}); x0[idx] += ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; % endfor } else if (j < ncolb) { % for k in subdims: idx = i*ldim + SOA_IX(j, ${k}, ${ncola}); x0[idx] = ${pyfr.dot('a{l}', 'x{l}[idx]', l=nv)}; % endfor } } pyfr-1.5.0/pyfr/backends/cuda/kernels/base.mako000066400000000000000000000004371277740313300214040ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> // AoSoA macros #define SOA_SZ ${soasz} #define SOA_IX(a, v, nv) ((((a) / SOA_SZ)*(nv) + (v))*SOA_SZ + (a) % SOA_SZ) // Typedefs typedef ${pyfr.npdtype_to_ctype(fpdtype)} fpdtype_t; ${next.body()} pyfr-1.5.0/pyfr/backends/cuda/kernels/pack.mako000066400000000000000000000012401277740313300214010ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> __global__ void pack_view(int n, int nrv, int ncv, const fpdtype_t* __restrict__ v, const int* __restrict__ vix, const int* __restrict__ vrstri, fpdtype_t* __restrict__ pmat) { int i = blockIdx.x*blockDim.x + threadIdx.x; if (i < n && ncv == 1) pmat[i] = v[vix[i]]; else if (i < n && nrv == 1) for (int c = 0; c < ncv; ++c) pmat[c*n + i] = v[vix[i] + SOA_SZ*c]; else if (i < n) for (int r = 0; r < nrv; ++r) for (int c = 0; c < ncv; ++c) pmat[(r*ncv + c)*n + i] = v[vix[i] + vrstri[i]*r + SOA_SZ*c]; } pyfr-1.5.0/pyfr/backends/cuda/packing.py000066400000000000000000000047131277740313300201450ustar00rootroot00000000000000# -*- coding: utf-8 -*- import pycuda.driver as cuda from pyfr.backends.base import ComputeKernel, NullComputeKernel from pyfr.backends.base.packing import BasePackingKernels from pyfr.backends.cuda.provider import CUDAKernelProvider, get_grid_for_block class CUDAPackingKernels(CUDAKernelProvider, BasePackingKernels): def pack(self, mv): # An exchange view is simply a regular view plus an exchange matrix m, v = mv.xchgmat, mv.view # Render the kernel template src = self.backend.lookup.get_template('pack').render() # Build kern = self._build_kernel('pack_view', src, 'iiiPPPP') # Compute the grid and thread-block size block = (128, 1, 1) grid = get_grid_for_block(block, v.n) # If MPI is CUDA aware then we just need to pack the buffer if self.backend.mpitype == 'cuda-aware': class PackXchgViewKernel(ComputeKernel): def run(self, queue): scomp = queue.cuda_stream_comp # Pack kern.prepared_async_call( grid, block, scomp, v.n, v.nvrow, v.nvcol, v.basedata, v.mapping, v.rstrides or 0, m ) # Otherwise, we need to both pack the buffer and copy it back else: # Create a CUDA event event = cuda.Event(cuda.event_flags.DISABLE_TIMING) class PackXchgViewKernel(ComputeKernel): def run(self, queue): scomp = queue.cuda_stream_comp scopy = queue.cuda_stream_copy # Pack kern.prepared_async_call( grid, block, scomp, v.n, v.nvrow, v.nvcol, v.basedata, v.mapping, v.rstrides or 0, m ) # Copy the packed buffer to the host event.record(scomp) scopy.wait_for_event(event) cuda.memcpy_dtoh_async(m.hdata, m.data, scopy) return PackXchgViewKernel() def unpack(self, mv): if self.backend.mpitype == 'cuda-aware': return NullComputeKernel() else: class UnpackXchgMatrixKernel(ComputeKernel): def run(self, queue): cuda.memcpy_htod_async(mv.data, mv.hdata, queue.cuda_stream_comp) return UnpackXchgMatrixKernel() pyfr-1.5.0/pyfr/backends/cuda/provider.py000066400000000000000000000034141277740313300203600ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pycuda import compiler, driver from pyfr.backends.base import (BaseKernelProvider, BasePointwiseKernelProvider, ComputeKernel) import pyfr.backends.cuda.generator as generator from pyfr.util import memoize def get_grid_for_block(block, nrow, ncol=1): return (int((nrow + (-nrow % block[0])) // block[0]), int((ncol + (-ncol % block[1])) // block[1])) class CUDAKernelProvider(BaseKernelProvider): @memoize def _build_kernel(self, name, src, argtypes): # Compile the source code and retrieve the kernel fun = compiler.SourceModule(src).get_function(name) # Prepare the kernel for execution fun.prepare(argtypes) # Declare a preference for L1 cache over shared memory fun.set_cache_config(driver.func_cache.PREFER_L1) return fun class CUDAPointwiseKernelProvider(CUDAKernelProvider, BasePointwiseKernelProvider): kernel_generator_cls = generator.CUDAKernelGenerator def _instantiate_kernel(self, dims, fun, arglst): cfg = self.backend.cfg # Determine the block size if len(dims) == 1: block = (cfg.getint('backend-cuda', 'block-1d', '64'), 1, 1) else: block = cfg.getliteral('backend-cuda', 'block-2d', '128, 1') block += (1,) # Use this to compute the grid size grid = get_grid_for_block(block, *dims[::-1]) class PointwiseKernel(ComputeKernel): def run(self, queue, **kwargs): narglst = [kwargs.get(ka, ka) for ka in arglst] fun.prepared_async_call(grid, block, queue.cuda_stream_comp, *narglst) return PointwiseKernel() pyfr-1.5.0/pyfr/backends/cuda/types.py000066400000000000000000000073551277740313300177020ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ctypes import c_int, c_ssize_t, c_void_p, pythonapi, py_object import numpy as np import pycuda.driver as cuda import pyfr.backends.base as base from pyfr.util import lazyprop _make_pybuf = pythonapi.PyMemoryView_FromMemory _make_pybuf.argtypes = [c_void_p, c_ssize_t, c_int] _make_pybuf.restype = py_object class CUDAMatrixBase(base.MatrixBase): def onalloc(self, basedata, offset): self.basedata = basedata self.data = int(self.basedata) + offset self.offset = offset # Process any initial value if self._initval is not None: self._set(self._initval) # Remove del self._initval def _get(self): # Allocate an empty buffer buf = np.empty((self.nrow, self.leaddim), dtype=self.dtype) # Copy cuda.memcpy_dtoh(buf, self.data) # Unpack return self._unpack(buf[:, :self.ncol]) def _set(self, ary): # Allocate a new buffer with suitable padding and pack it buf = np.zeros((self.nrow, self.leaddim), dtype=self.dtype) buf[:, :self.ncol] = self._pack(ary) # Copy cuda.memcpy_htod(self.data, buf) @property def _as_parameter_(self): return self.data def __index__(self): return self.data class CUDAMatrix(CUDAMatrixBase, base.Matrix): pass class CUDAMatrixRSlice(base.MatrixRSlice): @lazyprop def data(self): return int(self.parent.basedata) + int(self.offset) @property def _as_parameter_(self): return self.data def __index__(self): return self.data class CUDAMatrixBank(base.MatrixBank): def __index__(self): return self._curr_mat.data class CUDAConstMatrix(CUDAMatrixBase, base.ConstMatrix): pass class CUDAView(base.View): pass class CUDAXchgMatrix(CUDAMatrix, base.XchgMatrix): def __init__(self, backend, ioshape, initval, extent, aliases, tags): # Call the standard matrix constructor super().__init__(backend, ioshape, initval, extent, aliases, tags) # If MPI is CUDA-aware then construct a buffer out of our CUDA # device allocation and pass this directly to MPI if backend.mpitype == 'cuda-aware': self.hdata = _make_pybuf(self.data, self.nbytes, 0x200) # Otherwise, allocate a buffer on the host for MPI to send/recv from else: self.hdata = cuda.pagelocked_empty((self.nrow, self.ncol), self.dtype, 'C') class CUDAXchgView(base.XchgView): pass class CUDAQueue(base.Queue): def __init__(self, backend): super().__init__(backend) # CUDA streams self.cuda_stream_comp = cuda.Stream() self.cuda_stream_copy = cuda.Stream() def _wait(self): last = self._last if last and last.ktype == 'compute': self.cuda_stream_comp.synchronize() self.cuda_stream_copy.synchronize() elif last and last.ktype == 'mpi': from mpi4py import MPI MPI.Prequest.Waitall(self.mpi_reqs) self.mpi_reqs = [] self._last = None def _at_sequence_point(self, item): return self._last and self._last.ktype != item.ktype @staticmethod def runall(queues): # First run any items which will not result in an implicit wait for q in queues: q._exec_nowait() # So long as there are items remaining in the queues while any(queues): # Execute a (potentially) blocking item from each queue for q in filter(None, queues): q._exec_next() q._exec_nowait() # Wait for all tasks to complete for q in queues: q._wait() pyfr-1.5.0/pyfr/backends/mic/000077500000000000000000000000001277740313300160065ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/mic/__init__.py000066400000000000000000000001071277740313300201150ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.mic.base import MICBackend pyfr-1.5.0/pyfr/backends/mic/base.py000066400000000000000000000042601277740313300172740ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.base import BaseBackend from pyfr.mpiutil import get_local_rank class MICBackend(BaseBackend): name = 'mic' def __init__(self, cfg): super().__init__(cfg) import pymic as mic # Get the device ID to use devid = cfg.get('backend-mic', 'device-id', 'local-rank') # Handle the local-rank case if devid == 'local-rank': devid = str(get_local_rank()) # Get a handle to the desired device self.dev = mic.devices[int(devid)] # Default stream self.sdflt = self.dev.get_default_stream() # Take the alignment requirement to be 64-bytes self.alignb = 64 # Compute the SoA size self.soasz = self.alignb // np.dtype(self.fpdtype).itemsize from pyfr.backends.mic import (blasext, cblas, packing, provider, types) # Register our data types self.base_matrix_cls = types.MICMatrixBase self.const_matrix_cls = types.MICConstMatrix self.matrix_cls = types.MICMatrix self.matrix_bank_cls = types.MICMatrixBank self.matrix_rslice_cls = types.MICMatrixRSlice self.queue_cls = types.MICQueue self.view_cls = types.MICView self.xchg_matrix_cls = types.MICXchgMatrix self.xchg_view_cls = types.MICXchgView # Kernel provider classes kprovcls = [provider.MICPointwiseKernelProvider, blasext.MICBlasExtKernels, packing.MICPackingKernels, cblas.MICCBLASKernels] self._providers = [k(self) for k in kprovcls] # Pointwise kernels self.pointwise = self._providers[0] def _malloc_impl(self, nbytes): stream = self.sdflt # Allocate an empty buffer on the device buf = stream.allocate_device_memory(nbytes) # Attach the raw device pointer buf.dev_ptr = stream.translate_device_pointer(buf) # Zero the buffer zeros = np.zeros(nbytes, dtype=np.uint8) stream.transfer_host2device(zeros.ctypes.data, buf, nbytes) stream.sync() return buf pyfr-1.5.0/pyfr/backends/mic/blasext.py000066400000000000000000000046361277740313300200330ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.mic.provider import MICKernelProvider from pyfr.backends.base import ComputeKernel class MICBlasExtKernels(MICKernelProvider): def axnpby(self, *arr, subdims=None): if any(arr[0].traits != x.traits for x in arr[1:]): raise ValueError('Incompatible matrix types') nv = len(arr) nrow, ldim, dtype = arr[0].traits ncola, ncolb = arr[0].ioshape[1:] # Render the kernel template src = self.backend.lookup.get_template('axnpby').render( subdims=subdims or range(ncola), ncola=ncola, nv=nv ) # Build the kernel kern = self._build_kernel('axnpby', src, [np.int32]*3 + [np.intp]*nv + [dtype]*nv) class AxnpbyKernel(ComputeKernel): def run(self, queue, *consts): args = [x.data for x in arr] + [float(c) for c in consts] queue.mic_stream_comp.invoke(kern, nrow, ncolb, ldim, *args) return AxnpbyKernel() def copy(self, dst, src): if dst.traits != src.traits: raise ValueError('Incompatible matrix types') class CopyKernel(ComputeKernel): def run(self, queue): queue.mic_stream_comp.transfer_device2device( src.basedata, dst.basedata, dst.nbytes, src.offset, dst.offset ) return CopyKernel() def errest(self, x, y, z, *, norm): if x.traits != y.traits != z.traits: raise ValueError('Incompatible matrix types') cnt = x.leaddim*x.nrow dtype = x.dtype # Allocate space for the return value reth = np.zeros(1) retd = self.backend.sdflt.bind(reth, update_device=False) # Render the reduction kernel template src = self.backend.lookup.get_template('errest').render(norm=norm) # Build rkern = self._build_kernel( 'errest', src, [np.int32] + [np.intp]*4 + [dtype]*2, restype=dtype ) class ErrestKernel(ComputeKernel): @property def retval(self): return float(reth[0]) def run(self, queue, atol, rtol): queue.mic_stream_comp.invoke( rkern, cnt, retd, x.data, y.data, z.data, atol, rtol ) retd.update_host() return ErrestKernel() pyfr-1.5.0/pyfr/backends/mic/cblas.py000066400000000000000000000024661277740313300174540ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.base import ComputeKernel from pyfr.backends.mic.provider import MICKernelProvider class MICCBLASKernels(MICKernelProvider): def mul(self, a, b, out, alpha=1.0, beta=0.0): # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') m, n, k = a.nrow, b.ncol, a.ncol # Data type if a.dtype == np.float64: cblas_gemm = 'cblas_dgemm' else: cblas_gemm = 'cblas_sgemm' # Render the kernel template tpl = self.backend.lookup.get_template('gemm') src = tpl.render(cblas_gemm=cblas_gemm) # Argument types for gemm argt = [ np.intp, np.int32, np.int32, np.int32, a.dtype, np.intp, np.int32, np.intp, np.int32, a.dtype, np.intp, np.int32 ] # Build gemm = self._build_kernel('gemm', src, argt) class MulKernel(ComputeKernel): def run(self, queue): queue.mic_stream_comp.invoke( gemm, m, n, k, a.data, b.data, out.data, a.leaddim, b.leaddim, out.leaddim, alpha, beta ) return MulKernel() pyfr-1.5.0/pyfr/backends/mic/compiler.py000066400000000000000000000033141277740313300201730ustar00rootroot00000000000000# -*- coding: utf-8 -*- import itertools as it import os import tempfile from pytools.prefork import call_capture_output from pyfr.util import rm class MICSourceModule(object): _dir_seq = it.count() def __init__(self, src, dev, cfg): # Create a scratch directory tmpidx = next(self._dir_seq) tmpdir = tempfile.mkdtemp(prefix='pyfr-{0}-'.format(tmpidx)) # Find MKL mklroot = cfg.get('backend-mic', 'mkl-root', '$MKLROOT') try: # File names cn, ln = 'tmp.c', 'libtmp.so' # Write the source code out with open(os.path.join(tmpdir, cn), 'w') as f: f.write(src) # Compile and link cmd = [ 'icc', '-shared', # Create a shared library '-std=c99', # Enable C99 support '-Ofast', # Optimise '-mmic', # Compile for the MIC '-fopenmp', # Enable OpenMP support '-L{0}/lib/mic'.format(mklroot), # MKL stuff '-lmkl_intel_lp64', # ... '-lmkl_core', # ... '-lmkl_intel_thread', # ... '-fPIC', # Position-independent code '-o', ln, cn ] call_capture_output(cmd, cwd=tmpdir) # Load self._mod = dev.load_library(os.path.join(tmpdir, ln)) finally: rm(tmpdir) def function(self, name, argtypes, restype=None): return getattr(self._mod, name) pyfr-1.5.0/pyfr/backends/mic/generator.py000066400000000000000000000101011277740313300203370ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.generator import BaseKernelGenerator class MICKernelGenerator(BaseKernelGenerator): def render(self): # Kernel spec and unpacking code spec, unpack = self._render_spec_unpack() if self.ndim == 1: inner = ''' int cb, ce; loop_sched_1d(_nx, align, &cb, &ce); int nci = ((ce - cb) / SOA_SZ)*SOA_SZ; for (int _xi = cb; _xi < cb + nci; _xi += SOA_SZ) {{ #pragma omp simd for (int _xj = 0; _xj < SOA_SZ; _xj++) {{ {body} }} }} for (int _xi = cb + nci, _xj = 0; _xj < ce - _xi; _xj++) {{ {body} }}'''.format(body=self.body) else: inner = ''' int rb, re, cb, ce; loop_sched_2d(_ny, _nx, align, &rb, &re, &cb, &ce); int nci = ((ce - cb) / SOA_SZ)*SOA_SZ; for (int _y = rb; _y < re; _y++) {{ for (int _xi = cb; _xi < cb + nci; _xi += SOA_SZ) {{ #pragma omp simd for (int _xj = 0; _xj < SOA_SZ; _xj++) {{ {body} }} }} for (int _xi = cb + nci, _xj = 0; _xj < ce - _xi; _xj++) {{ {body} }} }}'''.format(body=self.body) return '''{spec} {{ {unpack} #define X_IDX (_xi + _xj) #define X_IDX_AOSOA(v, nv)\ ((_xi/SOA_SZ*(nv) + (v))*SOA_SZ + _xj) int align = PYFR_ALIGN_BYTES / sizeof(fpdtype_t); #pragma omp parallel {{ {inner} }} #undef X_IDX #undef X_IDX_AOSOA }}'''.format(spec=spec, unpack=unpack, inner=inner) def _render_spec_unpack(self): # Start by unpacking the dimensions kspec = ['long *arg{0}' for d in self._dims] kpack = ['int {0} = *arg{{0}};'.format(d) for d in self._dims] # Next unpack any scalar arguments kspec.extend('double *arg{0}' for sa in self.scalargs) kpack.extend('{0.dtype} {0.name} = *arg{{0}};'.format(sa) for sa in self.scalargs) # Finally, add the vector arguments for va in self.vectargs: # Views if va.isview: kspec.append('void **arg{0}') kpack.append('{0.dtype} *{0.name}_v = *arg{{0}};' .format(va)) kspec.append('void **arg{0}') kpack.append('const int *{0.name}_vix = *arg{{0}};' .format(va)) if va.ncdim == 2: kspec.append('void **arg{0}') kpack.append('const int *{0.name}_vrstri = *arg{{0}};' .format(va)) # Arrays else: # Intent in arguments should be marked constant const = 'const' if va.intent == 'in' else '' kspec.append('void **arg{0}') kpack.append('{0} {1.dtype}* {1.name}_v = *arg{{0}};' .format(const, va).strip()) if self.needs_ldim(va): kspec.append('long *arg{0}') kpack.append('int ld{0.name} = *arg{{0}};'.format(va)) # Number the arguments params = ', '.join(a.format(i) for i, a in enumerate(kspec)) unpack = '\n'.join(a.format(i) for i, a in enumerate(kpack)) return 'void {0}({1})'.format(self.name, params), unpack pyfr-1.5.0/pyfr/backends/mic/kernels/000077500000000000000000000000001277740313300174515ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/mic/kernels/__init__.py000066400000000000000000000000301277740313300215530ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/backends/mic/kernels/axnpby.mako000066400000000000000000000036361277740313300216330ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> void axnpby(long *nrowp, long *ncolbp, long *ldimp, ${', '.join('fpdtype_t **xp' + str(i) for i in range(nv))}, ${', '.join('double *ap' + str(i) for i in range(nv))}) { #define X_IDX_AOSOA(v, nv) ((ci/SOA_SZ*(nv) + (v))*SOA_SZ + cj) int ldim = *ldimp; % for i in range(nv): fpdtype_t *x${i} = *xp${i}; fpdtype_t a${i} = *ap${i}; % endfor #pragma omp parallel { int align = PYFR_ALIGN_BYTES / sizeof(fpdtype_t); int rb, re, cb, ce, idx; fpdtype_t axn; loop_sched_2d(*nrowp, *ncolbp, align, &rb, &re, &cb, &ce); int nci = ((ce - cb) / SOA_SZ)*SOA_SZ; for (int r = rb; r < re; r++) { for (int ci = cb; ci < cb + nci; ci += SOA_SZ) { #pragma omp simd for (int cj = 0; cj < SOA_SZ; cj++) { % for k in subdims: idx = r*ldim + X_IDX_AOSOA(${k}, ${ncola}); axn = ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; if (a0 == 0.0) x0[idx] = axn; else if (a0 == 1.0) x0[idx] += axn; else x0[idx] = a0*x0[idx] + axn; % endfor } } for (int ci = cb + nci, cj = 0; cj < ce - ci; cj++) { % for k in subdims: idx = r*ldim + X_IDX_AOSOA(${k}, ${ncola}); axn = ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; if (a0 == 0.0) x0[idx] = axn; else if (a0 == 1.0) x0[idx] += axn; else x0[idx] = a0*x0[idx] + axn; % endfor } } } #undef X_IDX_AOSOA } pyfr-1.5.0/pyfr/backends/mic/kernels/base.mako000066400000000000000000000006761277740313300212450ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> #include #include #include #define PYFR_ALIGN_BYTES ${alignb} #define SOA_SZ ${soasz} #define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b)) // Typedefs typedef ${pyfr.npdtype_to_ctype(fpdtype)} fpdtype_t; // OpenMP static loop scheduling functions <%include file='loop-sched'/> ${next.body()} pyfr-1.5.0/pyfr/backends/mic/kernels/errest.mako000066400000000000000000000013201277740313300216220ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> void errest(long *n, double *out, fpdtype_t **xp, fpdtype_t **yp, fpdtype_t **zp, double *atolp, double *rtolp) { fpdtype_t *x = *xp, *y = *yp, *z = *zp; fpdtype_t atol = *atolp, rtol = *rtolp; fpdtype_t err = 0.0; % if norm == 'l2': #pragma omp parallel for reduction(+:err) for (int i = 0; i < *n; i++) err += pow(x[i]/(atol + rtol*max(fabs(y[i]), fabs(z[i]))), 2); % else: #pragma omp parallel for reduction(max:err) for (int i = 0; i < *n; i++) err = max(err, pow(x[i]/(atol + rtol*max(fabs(y[i]), fabs(z[i]))), 2)); % endif *out = err; } pyfr-1.5.0/pyfr/backends/mic/kernels/gemm.mako000066400000000000000000000005511277740313300212500ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> #include void gemm(long *M, long *N, long *K, fpdtype_t **A, fpdtype_t **B, fpdtype_t **C, long *lda, long *ldb, long *ldc, double *alpha, double *beta) { ${cblas_gemm}(CblasRowMajor, CblasNoTrans, CblasNoTrans, *M, *N, *K, *alpha, *A, *lda, *B, *ldb, *beta, *C, *ldc); } pyfr-1.5.0/pyfr/backends/mic/kernels/loop-sched.mako000066400000000000000000000030751277740313300223640ustar00rootroot00000000000000# -*- coding: utf-8 -*- static inline int gcd(int a, int b) { return (a == 0) ? b : gcd(b % a, a); } static inline void loop_sched_1d(int n, int align, int *b, int *e) { int tid = omp_get_thread_num(); int nth = omp_get_num_threads(); // Round up n to be a multiple of nth int rn = n + nth - 1 - (n - 1) % nth; // Nominal tile size int sz = rn / nth; // Handle alignment sz += align - 1 - (sz - 1) % align; // Assign the starting and ending index *b = sz * tid; *e = min(*b + sz, n); // Clamp if (*b >= n) *b = *e = 0; } static inline void loop_sched_2d(int nrow, int ncol, int colalign, int *rowb, int *rowe, int *colb, int *cole) { int tid = omp_get_thread_num(); int nth = omp_get_num_threads(); // Distribute threads int nrowth = gcd(nrow, nth); int ncolth = nth / nrowth; // Row and column indices for our thread int rowix = tid / ncolth; int colix = tid % ncolth; // Round up ncol to be a multiple of ncolth int rncol = ncol + ncolth - 1 - (ncol - 1) % ncolth; // Nominal tile size int ntilerow = nrow / nrowth; int ntilecol = rncol / ncolth; // Handle column alignment ntilecol += colalign - 1 - (ntilecol - 1) % colalign; // Assign the starting and ending row to each thread *rowb = ntilerow * rowix; *rowe = *rowb + ntilerow; // Assign the starting and ending column to each thread *colb = ntilecol * colix; *cole = min(*colb + ntilecol, ncol); // Clamp if (*colb >= ncol) *colb = *cole = 0; } pyfr-1.5.0/pyfr/backends/mic/kernels/pack.mako000066400000000000000000000015551277740313300212460ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> void pack_view(long *n_a, long *nrv_a, long *ncv_a, void **v_a, void **vix_a, void **vrstri_a, void **pmat_a) { int n = *n_a; int nrv = *nrv_a; int ncv = *ncv_a; fpdtype_t *v = *v_a; int *vix = *vix_a; int *vrstri = (vrstri_a) ? *vrstri_a : 0; fpdtype_t *pmat = *pmat_a; if (ncv == 1) for (int i = 0; i < n; i++) pmat[i] = v[vix[i]]; else if (nrv == 1) for (int i = 0; i < n; i++) for (int c = 0; c < ncv; c++) pmat[c*n + i] = v[vix[i] + SOA_SZ*c]; else for (int i = 0; i < n; i++) for (int r = 0; r < nrv; r++) for (int c = 0; c < ncv; c++) pmat[(r*ncv + c)*n + i] = v[vix[i] + vrstri[i]*r + SOA_SZ*c]; } pyfr-1.5.0/pyfr/backends/mic/packing.py000066400000000000000000000030431277740313300177740ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base import ComputeKernel from pyfr.backends.base.packing import BasePackingKernels from pyfr.backends.mic.provider import MICKernelProvider class MICPackingKernels(MICKernelProvider, BasePackingKernels): def pack(self, mv): # An exchange view is simply a regular view plus an exchange matrix m, v = mv.xchgmat, mv.view # Render the kernel template src = self.backend.lookup.get_template('pack').render() # Build kern = self._build_kernel('pack_view', src, 'iiiPPPP') class PackXchgViewKernel(ComputeKernel): def run(self, queue): # Kernel arguments args = [v.n, v.nvrow, v.nvcol, v.basedata.dev_ptr, v.mapping, v.rstrides, m] args = [getattr(arg, 'data', arg) for arg in args] # Pack queue.mic_stream_comp.invoke(kern, *args) # Copy the packed buffer to the host queue.mic_stream_comp.transfer_device2host( m.basedata, m.hdata.ctypes.data, m.nbytes, offset_device=m.offset ) return PackXchgViewKernel() def unpack(self, mv): class UnpackXchgMatrixKernel(ComputeKernel): def run(self, queue): queue.mic_stream_comp.transfer_host2device( mv.hdata.ctypes.data, mv.basedata, mv.nbytes, offset_device=mv.offset ) return UnpackXchgMatrixKernel() pyfr-1.5.0/pyfr/backends/mic/provider.py000066400000000000000000000022071277740313300202130ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base import (BaseKernelProvider, BasePointwiseKernelProvider, ComputeKernel) from pyfr.backends.mic.compiler import MICSourceModule import pyfr.backends.mic.generator as generator from pyfr.util import memoize class MICKernelProvider(BaseKernelProvider): @memoize def _build_kernel(self, name, src, argtypes, restype=None): mod = MICSourceModule(src, self.backend.dev, self.backend.cfg) return mod.function(name, argtypes, restype) class MICPointwiseKernelProvider(MICKernelProvider, BasePointwiseKernelProvider): kernel_generator_cls = generator.MICKernelGenerator def _instantiate_kernel(self, dims, fun, arglst): class PointwiseKernel(ComputeKernel): def run(self, queue, **kwargs): narglst = [kwargs.get(ka, ka) for ka in arglst] narglst = [getattr(arg, 'dev_ptr', arg) for arg in narglst] narglst = [getattr(arg, 'data', arg) for arg in narglst] queue.mic_stream_comp.invoke(fun, *narglst) return PointwiseKernel() pyfr-1.5.0/pyfr/backends/mic/types.py000066400000000000000000000067511277740313300175350ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np import pyfr.backends.base as base class MICMatrixBase(base.MatrixBase): def onalloc(self, basedata, offset): self.basedata = basedata self.data = basedata.dev_ptr + offset self.offset = offset # Process any initial value if self._initval is not None: self._set(self._initval) # Remove del self._initval def _get(self): # Allocate an empty buffer buf = np.empty((self.nrow, self.leaddim), dtype=self.dtype) # Copy using the default stream self.backend.sdflt.transfer_device2host( self.basedata, buf.ctypes.data, self.nbytes, offset_device=self.offset ) self.backend.sdflt.sync() # Unpack return self._unpack(buf[:, :self.ncol]) def _set(self, ary): # Allocate a new buffer with suitable padding and pack it buf = np.zeros((self.nrow, self.leaddim), dtype=self.dtype) buf[:, :self.ncol] = self._pack(ary) # Copy using the default stream self.backend.sdflt.transfer_host2device( buf.ctypes.data, self.basedata, self.nbytes, offset_device=self.offset ) self.backend.sdflt.sync() class MICMatrix(MICMatrixBase, base.Matrix): pass class MICMatrixRSlice(base.MatrixRSlice): @property def data(self): return self.basedata.dev_ptr + self.offset class MICMatrixBank(base.MatrixBank): pass class MICConstMatrix(MICMatrixBase, base.ConstMatrix): pass class MICXchgMatrix(MICMatrix, base.XchgMatrix): def __init__(self, backend, ioshape, initval, extent, aliases, tags): # Call the standard matrix constructor super().__init__(backend, ioshape, initval, extent, aliases, tags) # Allocate an empty buffer on the host for MPI to send/recv from self.hdata = np.empty((self.nrow, self.ncol), self.dtype) class MICXchgView(base.XchgView): pass class MICView(base.View): pass class MICQueue(base.Queue): def __init__(self, backend): super().__init__(backend) # MIC stream self.mic_stream_comp = backend.sdflt def _exec_item(self, item, args, kwargs): item.run(self, *args, **kwargs) self.mic_stream_comp.sync() self._last = item def _exec_nonblock(self): while self._items: kern = self._items[0][0] # See if kern will block if self._at_sequence_point(kern) or kern.ktype == 'compute': break self._exec_item(*self._items.popleft()) def _wait(self): if self._last and self._last.ktype == 'mpi': from mpi4py import MPI MPI.Prequest.Waitall(self.mpi_reqs) self.mpi_reqs = [] self._last = None def _at_sequence_point(self, item): last = self._last return last and last.ktype == 'mpi' and item.ktype != 'mpi' @staticmethod def runall(queues): # Fire off any non-blocking kernels for q in queues: q._exec_nonblock() while any(queues): # Execute a (potentially) blocking item from each queue for q in filter(None, queues): q._exec_nowait() # Now consider kernels which will wait for q in filter(None, queues): q._exec_next() q._exec_nonblock() # Wait for all tasks to complete for q in queues: q._wait() pyfr-1.5.0/pyfr/backends/opencl/000077500000000000000000000000001277740313300165165ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/opencl/__init__.py000066400000000000000000000001151277740313300206240ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.opencl.base import OpenCLBackend pyfr-1.5.0/pyfr/backends/opencl/base.py000066400000000000000000000063651277740313300200140ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.base import BaseBackend from pyfr.mpiutil import get_local_rank class OpenCLBackend(BaseBackend): name = 'opencl' def __init__(self, cfg): super().__init__(cfg) import pyopencl as cl # Get the platform/device info from the config file platid = cfg.get('backend-opencl', 'platform-id', '0').lower() devid = cfg.get('backend-opencl', 'device-id', 'local-rank').lower() devtype = cfg.get('backend-opencl', 'device-type', 'all').upper() # Handle the local-rank case if devid == 'local-rank': devid = str(get_local_rank()) # Map the device type to the corresponding PyOpenCL constant devtype = getattr(cl.device_type, devtype) # Determine the OpenCL platform to use for i, platform in enumerate(cl.get_platforms()): if platid == str(i) or platid == platform.name.lower(): break else: raise ValueError('No suitable OpenCL platform found') # Determine the OpenCL device to use for i, device in enumerate(platform.get_devices(devtype)): if devid == str(i) or devid == device.name.lower(): break else: raise ValueError('No suitable OpenCL device found') # Determine if the device supports double precision arithmetic if self.fpdtype == np.float64 and not device.double_fp_config: raise ValueError('Device does not support double precision') # Create a OpenCL context on this device self.ctx = cl.Context([device]) # Create a queue for initialisation-type operations self.qdflt = cl.CommandQueue(self.ctx) # Compute the alignment requirement for the context self.alignb = device.mem_base_addr_align // 8 # Compute the SoA size self.soasz = 2*self.alignb // np.dtype(self.fpdtype).itemsize from pyfr.backends.opencl import (blasext, clblas, gimmik, packing, provider, types) # Register our data types self.base_matrix_cls = types.OpenCLMatrixBase self.const_matrix_cls = types.OpenCLConstMatrix self.matrix_cls = types.OpenCLMatrix self.matrix_bank_cls = types.OpenCLMatrixBank self.matrix_rslice_cls = types.OpenCLMatrixRSlice self.queue_cls = types.OpenCLQueue self.view_cls = types.OpenCLView self.xchg_matrix_cls = types.OpenCLXchgMatrix self.xchg_view_cls = types.OpenCLXchgView # Instantiate the base kernel providers kprovs = [provider.OpenCLPointwiseKernelProvider, blasext.OpenCLBlasExtKernels, packing.OpenCLPackingKernels, gimmik.OpenCLGiMMiKKernels, clblas.OpenCLClBLASKernels] self._providers = [k(self) for k in kprovs] # Pointwise kernels self.pointwise = self._providers[0] def _malloc_impl(self, nbytes): import pyopencl as cl # Allocate the device buffer buf = cl.Buffer(self.ctx, cl.mem_flags.READ_WRITE, nbytes) # Zero the buffer cl.enqueue_copy(self.qdflt, buf, np.zeros(nbytes, dtype=np.uint8)) return buf pyfr-1.5.0/pyfr/backends/opencl/blasext.py000066400000000000000000000053211277740313300205330ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np import pyopencl as cl from pyopencl.array import Array from pyopencl.reduction import ReductionKernel from pyfr.backends.opencl.provider import OpenCLKernelProvider from pyfr.backends.base import ComputeKernel from pyfr.nputil import npdtype_to_ctype class OpenCLBlasExtKernels(OpenCLKernelProvider): def axnpby(self, *arr, subdims=None): if any(arr[0].traits != x.traits for x in arr[1:]): raise ValueError('Incompatible matrix types') nv = len(arr) nrow, ldim, dtype = arr[0].traits ncola, ncolb = arr[0].ioshape[1:] # Render the kernel template src = self.backend.lookup.get_template('axnpby').render( subdims=subdims or range(ncola), ncola=ncola, nv=nv ) # Build the kernel kern = self._build_kernel('axnpby', src, [np.int32]*3 + [np.intp]*nv + [dtype]*nv) class AxnpbyKernel(ComputeKernel): def run(self, queue, *consts): args = [x.data for x in arr] + list(consts) kern(queue.cl_queue_comp, (ncolb, nrow), None, nrow, ncolb, ldim, *args) return AxnpbyKernel() def copy(self, dst, src): if dst.traits != src.traits: raise ValueError('Incompatible matrix types') class CopyKernel(ComputeKernel): def run(self, queue): cl.enqueue_copy(queue.cl_queue_comp, dst.data, src.data) return CopyKernel() def errest(self, x, y, z, *, norm): if x.traits != y.traits != z.traits: raise ValueError('Incompatible matrix types') cnt = x.leaddim*x.nrow dtype = x.dtype # Norm type reduce_expr = 'a + b' if norm == 'l2' else 'max(a, b)' # Build the reduction kernel rkern = ReductionKernel( self.backend.ctx, dtype, neutral='0', reduce_expr=reduce_expr, map_expr='pow(x[i]/(atol + rtol*max(fabs(y[i]), fabs(z[i]))), 2)', arguments='__global {0}* x, __global {0}* y, __global {0}* z, ' '{0} atol, {0} rtol'.format(npdtype_to_ctype(dtype)) ) class ErrestKernel(ComputeKernel): @property def retval(self): return self._retarr.get() def run(self, queue, atol, rtol): qcomp = queue.cl_queue_comp xarr = Array(qcomp, cnt, dtype, data=x.data) yarr = Array(qcomp, cnt, dtype, data=y.data) zarr = Array(qcomp, cnt, dtype, data=z.data) self._retarr = rkern(xarr, yarr, zarr, atol, rtol, queue=qcomp) return ErrestKernel() pyfr-1.5.0/pyfr/backends/opencl/clblas.py000066400000000000000000000057731277740313300203440ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ctypes import (POINTER, c_int, c_double, c_float, c_size_t, c_uint, c_void_p) import numpy as np from pyfr.backends.base import ComputeKernel from pyfr.ctypesutil import load_library class ClBLASWrappers(object): def __init__(self): lib = load_library('clBLAS') # Constants self.clblasRowMajor = 0 self.clblasColumnMajor = 1 self.clblasNoTrans = 0 self.clblasTrans = 1 self.clblasConjTrans = 2 # clblasSetup self.clblasSetup = lib.clblasSetup self.clblasSetup.argtypes = [] self.clblasSetup.errcheck = self._errcheck # clblasTeardown self.clblasTeardown = lib.clblasTeardown self.clblasTeardown.argtypes = [] self.clblasTeardown.restype = None # clblasSgemm self.clblasSgemm = lib.clblasSgemm self.clblasSgemm.argtypes = [ c_int, c_int, c_int, c_size_t, c_size_t, c_size_t, c_float, c_void_p, c_size_t, c_size_t, c_void_p, c_size_t, c_size_t, c_float, c_void_p, c_size_t, c_size_t, c_uint, POINTER(c_void_p), c_uint, POINTER(c_void_p), POINTER(c_void_p) ] self.clblasSgemm.errcheck = self._errcheck # clblasDgemm self.clblasDgemm = lib.clblasDgemm self.clblasDgemm.argtypes = [ c_int, c_int, c_int, c_size_t, c_size_t, c_size_t, c_double, c_void_p, c_size_t, c_size_t, c_void_p, c_size_t, c_size_t, c_double, c_void_p, c_size_t, c_size_t, c_uint, POINTER(c_void_p), c_uint, POINTER(c_void_p), POINTER(c_void_p) ] self.clblasDgemm.errcheck = self._errcheck def _errcheck(self, status, fn, args): if status != 0: raise RuntimeError('clBLAS: {0}'.format(status)) class OpenCLClBLASKernels(object): def __init__(self, backend): # Load and wrap clBLAS self._wrappers = ClBLASWrappers() # Init self._wrappers.clblasSetup() def __del__(self): self._wrappers.clblasTeardown() def mul(self, a, b, out, alpha=1.0, beta=0.0): w = self._wrappers # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') m, n, k = a.nrow, b.ncol, a.ncol if a.dtype == np.float64: clblasgemm = w.clblasDgemm else: clblasgemm = w.clblasSgemm class MulKernel(ComputeKernel): def run(self, queue): qptr = c_void_p(queue.cl_queue_comp.int_ptr) clblasgemm(w.clblasRowMajor, w.clblasNoTrans, w.clblasNoTrans, m, n, k, alpha, a, 0, a.leaddim, b, 0, b.leaddim, beta, out, 0, out.leaddim, 1, qptr, 0, None, None) return MulKernel() pyfr-1.5.0/pyfr/backends/opencl/generator.py000066400000000000000000000043361277740313300210640ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.generator import BaseKernelGenerator class OpenCLKernelGenerator(BaseKernelGenerator): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Specialise if self.ndim == 1: self._ix = 'int _x = get_global_id(0);' self._limits = 'if (_x < _nx)' else: self._ix = 'int _x = get_global_id(0), _y = get_global_id(1);' self._limits = 'if (_x < _nx && _y < _ny)' def render(self): # Kernel spec spec = self._render_spec() # Iteration indicies and limits ix, limits = self._ix, self._limits # Combine return '''{spec} {{ {ix} #define X_IDX (_x) #define X_IDX_AOSOA(v, nv) SOA_IX(X_IDX, v, nv) {limits} {{ {body} }} #undef X_IDX #undef X_IDX_AOSOA }}'''.format(spec=spec, ix=ix, limits=limits, body=self.body) def _render_spec(self): # We first need the argument list; starting with the dimensions kargs = ['int ' + d for d in self._dims] # Now add any scalar arguments kargs.extend('{0.dtype} {0.name}'.format(sa) for sa in self.scalargs) # Finally, add the vector arguments for va in self.vectargs: ka = [] # Views if va.isview: ka.append('__global {0.dtype}* restrict {0.name}_v') ka.append('__global const int* restrict {0.name}_vix') if va.ncdim == 2: ka.append('__global const int* restrict {0.name}_vrstri') # Arrays else: if va.intent == 'in': ka.append('__global const {0.dtype}* restrict {0.name}_v') else: ka.append('__global {0.dtype}* restrict {0.name}_v') if self.needs_ldim(va): ka.append('int ld{0.name}') # Format kargs.extend(k.format(va) for k in ka) return '__kernel void {0}({1})'.format(self.name, ', '.join(kargs)) pyfr-1.5.0/pyfr/backends/opencl/gimmik.py000066400000000000000000000027331277740313300203520ustar00rootroot00000000000000# -*- coding: utf-8 -*- from gimmik import generate_mm import numpy as np from pyfr.backends.base import ComputeKernel, NotSuitableError from pyfr.backends.opencl.provider import OpenCLKernelProvider class OpenCLGiMMiKKernels(OpenCLKernelProvider): def __init__(self, backend): super().__init__(backend) self.max_nnz = backend.cfg.getint('backend-opencl', 'gimmik-max-nnz', 512) def mul(self, a, b, out, alpha=1.0, beta=0.0): # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') # Check that A is constant if 'const' not in a.tags: raise NotSuitableError('GiMMiK requires a constant a matrix') # Check that A is reasonably sparse if np.count_nonzero(a.get()) > self.max_nnz: raise NotSuitableError('Matrix too dense for GiMMiK') # Generate src = generate_mm(a.get(), dtype=a.dtype, platform='opencl', alpha=alpha, beta=beta) # Build fun = self._build_kernel('gimmik_mm', src, [np.int32] + [np.intp, np.int32]*2) class MulKernel(ComputeKernel): def run(self, queue): fun(queue.cl_queue_comp, (b.ncol,), None, b.ncol, b.data, b.leaddim, out.data, out.leaddim) return MulKernel() pyfr-1.5.0/pyfr/backends/opencl/kernels/000077500000000000000000000000001277740313300201615ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/opencl/kernels/__init__.py000066400000000000000000000000301277740313300222630ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/backends/opencl/kernels/axnpby.mako000066400000000000000000000017711277740313300223410ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> __kernel void axnpby(int nrow, int ncolb, int ldim, __global fpdtype_t* restrict x0, ${', '.join('__global const fpdtype_t* restrict x' + str(i) for i in range(1, nv))}, ${', '.join('fpdtype_t a' + str(i) for i in range(nv))}) { int i = get_global_id(1), j = get_global_id(0); int idx; if (j < ncolb && a0 == 0.0) { % for k in subdims: idx = i*ldim + SOA_IX(j, ${k}, ${ncola}); x0[idx] = ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; % endfor } else if (j < ncolb && a0 == 1.0) { % for k in subdims: idx = i*ldim + SOA_IX(j, ${k}, ${ncola}); x0[idx] += ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; % endfor } else if (j < ncolb) { % for k in subdims: idx = i*ldim + SOA_IX(j, ${k}, ${ncola}); x0[idx] = ${pyfr.dot('a{l}', 'x{l}[idx]', l=nv)}; % endfor } } pyfr-1.5.0/pyfr/backends/opencl/kernels/base.mako000066400000000000000000000006311277740313300217440ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> // Enable support for double precision #if __OPENCL_VERSION__ < 120 # pragma OPENCL EXTENSION cl_khr_fp64: enable #endif // AoSoA macros #define SOA_SZ ${soasz} #define SOA_IX(a, v, nv) ((((a) / SOA_SZ)*(nv) + (v))*SOA_SZ + (a) % SOA_SZ) // Typedefs typedef ${pyfr.npdtype_to_ctype(fpdtype)} fpdtype_t; ${next.body()} pyfr-1.5.0/pyfr/backends/opencl/kernels/pack.mako000066400000000000000000000012371277740313300217530ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> __kernel void pack_view(int n, int nrv, int ncv, __global const fpdtype_t* restrict v, __global const int* restrict vix, __global const int* restrict vrstri, __global fpdtype_t* restrict pmat) { int i = get_global_id(0); if (i < n && ncv == 1) pmat[i] = v[vix[i]]; else if (i < n && nrv == 1) for (int c = 0; c < ncv; ++c) pmat[c*n + i] = v[vix[i] + SOA_SZ*c]; else if (i < n) for (int r = 0; r < nrv; ++r) for (int c = 0; c < ncv; ++c) pmat[(r*ncv + c)*n + i] = v[vix[i] + vrstri[i]*r + SOA_SZ*c]; } pyfr-1.5.0/pyfr/backends/opencl/packing.py000066400000000000000000000030011277740313300204760ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np import pyopencl as cl from pyfr.backends.base import ComputeKernel from pyfr.backends.base.packing import BasePackingKernels from pyfr.backends.opencl.provider import OpenCLKernelProvider class OpenCLPackingKernels(OpenCLKernelProvider, BasePackingKernels): def pack(self, mv): # An exchange view is simply a regular view plus an exchange matrix m, v = mv.xchgmat, mv.view # Render the kernel template src = self.backend.lookup.get_template('pack').render() # Build kern = self._build_kernel('pack_view', src, [np.int32]*3 + [np.intp]*4) class PackXchgViewKernel(ComputeKernel): def run(self, queue): # Kernel arguments args = [v.n, v.nvrow, v.nvcol, v.basedata, v.mapping, v.rstrides, m] args = [getattr(arg, 'data', arg) for arg in args] # Pack event = kern(queue.cl_queue_comp, (v.n,), None, *args) # Copy the packed buffer to the host cl.enqueue_copy(queue.cl_queue_copy, m.hdata, m.data, is_blocking=False, wait_for=[event]) return PackXchgViewKernel() def unpack(self, mv): class UnpackXchgMatrixKernel(ComputeKernel): def run(self, queue): cl.enqueue_copy(queue.cl_queue_comp, mv.data, mv.hdata, is_blocking=False) return UnpackXchgMatrixKernel() pyfr-1.5.0/pyfr/backends/opencl/provider.py000066400000000000000000000032341277740313300207240ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np import pyopencl as cl from pyfr.backends.base import (BaseKernelProvider, BasePointwiseKernelProvider, ComputeKernel) import pyfr.backends.opencl.generator as generator from pyfr.util import memoize class OpenCLKernelProvider(BaseKernelProvider): @memoize def _build_kernel(self, name, src, argtypes): # Compile the source code prg = cl.Program(self.backend.ctx, src) prg.build(['-cl-fast-relaxed-math']) # Retrieve the kernel kern = getattr(prg, name) # Set the argument types dtypes = [t if t != np.intp else None for t in argtypes] kern.set_scalar_arg_dtypes(dtypes) return kern class OpenCLPointwiseKernelProvider(OpenCLKernelProvider, BasePointwiseKernelProvider): kernel_generator_cls = generator.OpenCLKernelGenerator def _instantiate_kernel(self, dims, fun, arglst): cfg = self.backend.cfg # Determine the local work size if len(dims) == 1: ls = (cfg.getint('backend-opencl', 'local-size-1d', '64'),) else: ls = cfg.getliteral('backend-opencl', 'local-size-2d', '128, 1') # Global work size gs = tuple(dims[::-1]) class PointwiseKernel(ComputeKernel): def run(self, queue, **kwargs): kwargs = {k: float(v) for k, v in kwargs.items()} narglst = [kwargs.get(ka, ka) for ka in arglst] narglst = [getattr(arg, 'data', arg) for arg in narglst] fun(queue.cl_queue_comp, gs, ls, *narglst) return PointwiseKernel() pyfr-1.5.0/pyfr/backends/opencl/types.py000066400000000000000000000063101277740313300202340ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np import pyopencl as cl import pyfr.backends.base as base from pyfr.util import lazyprop class OpenCLMatrixBase(base.MatrixBase): def onalloc(self, basedata, offset): self.basedata = basedata self.data = basedata.get_sub_region(offset, self.nbytes) self.offset = offset # Process any initial value if self._initval is not None: self._set(self._initval) # Remove del self._initval def _get(self): # Allocate an empty buffer buf = np.empty((self.nrow, self.leaddim), dtype=self.dtype) # Copy cl.enqueue_copy(self.backend.qdflt, buf, self.data) # Unpack return self._unpack(buf[:, :self.ncol]) def _set(self, ary): # Allocate a new buffer with suitable padding and pack it buf = np.zeros((self.nrow, self.leaddim), dtype=self.dtype) buf[:, :self.ncol] = self._pack(ary) # Copy cl.enqueue_copy(self.backend.qdflt, self.data, buf) @property def _as_parameter_(self): return self.data.int_ptr class OpenCLMatrix(OpenCLMatrixBase, base.Matrix): pass class OpenCLMatrixRSlice(base.MatrixRSlice): @lazyprop def data(self): return self.parent.basedata.get_sub_region(self.offset, self.nrow*self.pitch) @property def _as_parameter_(self): return self.data.int_ptr class OpenCLMatrixBank(base.MatrixBank): pass class OpenCLConstMatrix(OpenCLMatrixBase, base.ConstMatrix): pass class OpenCLView(base.View): pass class OpenCLXchgMatrix(OpenCLMatrix, base.XchgMatrix): def __init__(self, backend, ioshape, initval, extent, aliases, tags): super().__init__(backend, ioshape, initval, extent, aliases, tags) # Allocate an empty buffer on the host for MPI to send/recv from self.hdata = np.empty((self.nrow, self.ncol), self.dtype) class OpenCLXchgView(base.XchgView): pass class OpenCLQueue(base.Queue): def __init__(self, backend): super().__init__(backend) # OpenCL command queues self.cl_queue_comp = cl.CommandQueue(backend.ctx) self.cl_queue_copy = cl.CommandQueue(backend.ctx) def _wait(self): last = self._last if last and last.ktype == 'compute': self.cl_queue_comp.finish() self.cl_queue_copy.finish() elif last and last.ktype == 'mpi': from mpi4py import MPI MPI.Prequest.Waitall(self.mpi_reqs) self.mpi_reqs = [] self._last = None def _at_sequence_point(self, item): return self._last and self._last.ktype != item.ktype @staticmethod def runall(queues): # First run any items which will not result in an implicit wait for q in queues: q._exec_nowait() # So long as there are items remaining in the queues while any(queues): # Execute a (potentially) blocking item from each queue for q in filter(None, queues): q._exec_next() q._exec_nowait() # Wait for all tasks to complete for q in queues: q._wait() pyfr-1.5.0/pyfr/backends/openmp/000077500000000000000000000000001277740313300165345ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/openmp/__init__.py000066400000000000000000000001151277740313300206420ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.openmp.base import OpenMPBackend pyfr-1.5.0/pyfr/backends/openmp/base.py000066400000000000000000000031241277740313300200200ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.base import BaseBackend class OpenMPBackend(BaseBackend): name = 'openmp' def __init__(self, cfg): super().__init__(cfg) # Take the alignment requirement to be 64-bytes self.alignb = 64 # Compute the SoA size self.soasz = self.alignb // np.dtype(self.fpdtype).itemsize from pyfr.backends.openmp import (blasext, cblas, gimmik, packing, provider, types) # Register our data types self.base_matrix_cls = types.OpenMPMatrixBase self.const_matrix_cls = types.OpenMPConstMatrix self.matrix_cls = types.OpenMPMatrix self.matrix_bank_cls = types.OpenMPMatrixBank self.matrix_rslice_cls = types.OpenMPMatrixRSlice self.queue_cls = types.OpenMPQueue self.view_cls = types.OpenMPView self.xchg_matrix_cls = types.OpenMPXchgMatrix self.xchg_view_cls = types.OpenMPXchgView # Kernel provider classes kprovcls = [provider.OpenMPPointwiseKernelProvider, blasext.OpenMPBlasExtKernels, packing.OpenMPPackingKernels, gimmik.OpenMPGiMMiKKernels, cblas.OpenMPCBLASKernels] self._providers = [k(self) for k in kprovcls] # Pointwise kernels self.pointwise = self._providers[0] def _malloc_impl(self, nbytes): data = np.zeros(nbytes + self.alignb, dtype=np.uint8) offset = -data.ctypes.data % self.alignb return data[offset:nbytes + offset] pyfr-1.5.0/pyfr/backends/openmp/blasext.py000066400000000000000000000045051277740313300205540ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.openmp.provider import OpenMPKernelProvider from pyfr.backends.base import ComputeKernel class OpenMPBlasExtKernels(OpenMPKernelProvider): def axnpby(self, *arr, subdims=None): if any(arr[0].traits != x.traits for x in arr[1:]): raise ValueError('Incompatible matrix types') nv = len(arr) nrow, ldim, dtype = arr[0].traits ncola, ncolb = arr[0].ioshape[1:] # Render the kernel template src = self.backend.lookup.get_template('axnpby').render( subdims=subdims or range(ncola), ncola=ncola, nv=nv ) # Build the kernel kern = self._build_kernel('axnpby', src, [np.int32]*3 + [np.intp]*nv + [dtype]*nv) class AxnpbyKernel(ComputeKernel): def run(self, queue, *consts): args = list(arr) + list(consts) kern(nrow, ncolb, ldim, *args) return AxnpbyKernel() def copy(self, dst, src): if dst.traits != src.traits: raise ValueError('Incompatible matrix types') if dst.nbytes >= 2**31: raise ValueError('Matrix too large for copy') # Render the kernel template ksrc = self.backend.lookup.get_template('par-memcpy').render() # Build the kernel kern = self._build_kernel('par_memcpy', ksrc, [np.intp, np.intp, np.int32]) class CopyKernel(ComputeKernel): def run(self, queue): kern(dst, src, dst.nbytes) return CopyKernel() def errest(self, x, y, z, *, norm): if x.traits != y.traits != z.traits: raise ValueError('Incompatible matrix types') cnt = x.leaddim*x.nrow dtype = x.dtype # Render the reduction kernel template src = self.backend.lookup.get_template('errest').render(norm=norm) # Build rkern = self._build_kernel( 'errest', src, [np.int32] + [np.intp]*3 + [dtype]*2, restype=dtype ) class ErrestKernel(ComputeKernel): @property def retval(self): return self._retval def run(self, queue, atol, rtol): self._retval = rkern(cnt, x, y, z, atol, rtol) return ErrestKernel() pyfr-1.5.0/pyfr/backends/openmp/cblas.py000066400000000000000000000072121277740313300201740ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ctypes import CDLL, cast, c_int, c_double, c_float, c_void_p import numpy as np from pyfr.backends.base import ComputeKernel from pyfr.backends.openmp.provider import OpenMPKernelProvider # Matrix orderings class CBlasOrder(object): ROW_MAJOR = 101 COL_MAJOR = 102 class CBlasTranspose(object): NO_TRANS = 111 TRANS = 112 CONJ_TRANS = 113 class CBlasWrappers(object): def __init__(self, libname): try: lib = CDLL(libname) except OSError: raise RuntimeError('Unable to load cblas') # cblas_dgemm self.cblas_dgemm = lib.cblas_dgemm self.cblas_dgemm.restype = None self.cblas_dgemm.argtypes = [ c_int, c_int, c_int, c_int, c_int, c_int, c_double, c_void_p, c_int, c_void_p, c_int, c_double, c_void_p, c_int ] # cblas_sgemm self.cblas_sgemm = lib.cblas_sgemm self.cblas_sgemm.restype = None self.cblas_sgemm.argtypes = [ c_int, c_int, c_int, c_int, c_int, c_int, c_float, c_void_p, c_int, c_void_p, c_int, c_float, c_void_p, c_int ] class OpenMPCBLASKernels(OpenMPKernelProvider): def __init__(self, backend): super().__init__(backend) libname = backend.cfg.getpath('backend-openmp', 'cblas', abs=False) libtype = backend.cfg.get('backend-openmp', 'cblas-type', 'parallel') if libtype not in {'serial', 'parallel'}: raise ValueError('cblas type must be serial or parallel') # Load and wrap cblas self._wrappers = CBlasWrappers(libname) self._cblas_type = libtype def mul(self, a, b, out, alpha=1.0, beta=0.0): # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') m, n, k = a.nrow, b.ncol, a.ncol if a.dtype == np.float64: cblas_gemm = self._wrappers.cblas_dgemm else: cblas_gemm = self._wrappers.cblas_sgemm # If our BLAS library is single threaded then invoke our own # parallelization kernel which uses OpenMP to partition the # operation along b.ncol (which works extremely well for the # extremely long matrices encountered by PyFR). Otherwise, we # let the BLAS library handle parallelization itself (which # may, or may not, use OpenMP). if self._cblas_type == 'serial': # Render the kernel template src = self.backend.lookup.get_template('par-gemm').render() # Argument types for par_gemm argt = [ np.intp, np.int32, np.int32, np.int32, a.dtype, np.intp, np.int32, np.intp, np.int32, a.dtype, np.intp, np.int32 ] # Build par_gemm = self._build_kernel('par_gemm', src, argt) # Pointer to the BLAS library GEMM function cblas_gemm_ptr = cast(cblas_gemm, c_void_p).value class MulKernel(ComputeKernel): def run(self, queue): par_gemm(cblas_gemm_ptr, m, n, k, alpha, a, a.leaddim, b, b.leaddim, beta, out, out.leaddim) else: class MulKernel(ComputeKernel): def run(self, queue): cblas_gemm(CBlasOrder.ROW_MAJOR, CBlasTranspose.NO_TRANS, CBlasTranspose.NO_TRANS, m, n, k, alpha, a, a.leaddim, b, b.leaddim, beta, out, out.leaddim) return MulKernel() pyfr-1.5.0/pyfr/backends/openmp/compiler.py000066400000000000000000000045441277740313300207270ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from ctypes import CDLL import itertools as it import os import shlex import tempfile from pytools.prefork import call_capture_output from pyfr.ctypesutil import platform_libname from pyfr.nputil import npdtype_to_ctypestype from pyfr.util import rm class SourceModule(object, metaclass=ABCMeta): _dir_seq = it.count() def __init__(self, src, cfg): self.src = src self.cfg = cfg # Create a scratch directory tmpidx = next(self._dir_seq) tmpdir = tempfile.mkdtemp(prefix='pyfr-{0}-'.format(tmpidx)) try: # Compile and link the source lname = self._build(tmpdir) # Load self._mod = CDLL(os.path.join(tmpdir, lname)) finally: # Unless we're debugging delete the scratch directory if 'PYFR_DEBUG_OMP_KEEP_LIBS' not in os.environ: rm(tmpdir) def function(self, name, restype, argtypes): # Get the function fn = getattr(self._mod, name) fn.restype = npdtype_to_ctypestype(restype) fn.argtypes = [npdtype_to_ctypestype(a) for a in argtypes] return fn @abstractmethod def _build(self, tmpdir): pass class GccSourceModule(SourceModule): def __init__(self, src, cfg): # Find GCC (or a compatible alternative) self._cc = cfg.getpath('backend-openmp', 'cc', 'cc', abs=False) # User specified compiler flags self._cflags = shlex.split(cfg.get('backend-openmp', 'cflags', '')) # Delegate super().__init__(src, cfg) def _build(self, tmpdir): # File names cn, ln = 'tmp.c', platform_libname('tmp') # Write the source code out with open(os.path.join(tmpdir, cn), 'w') as f: f.write(self.src) # Compile and link cmd = [self._cc, '-shared', # Create a shared library '-std=c99', # Enable C99 support '-Ofast', # Optimise, incl. -ffast-math '-march=native', # Use CPU-specific instructions '-fopenmp', # Enable OpenMP support '-fPIC', # Position-independent code for shared lib '-o', ln, cn] call_capture_output(cmd + self._cflags, cwd=tmpdir) return ln pyfr-1.5.0/pyfr/backends/openmp/generator.py000066400000000000000000000065601277740313300211030ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.generator import BaseKernelGenerator class OpenMPKernelGenerator(BaseKernelGenerator): def render(self): if self.ndim == 1: inner = ''' int cb, ce; loop_sched_1d(_nx, align, &cb, &ce); int nci = ((ce - cb) / SOA_SZ)*SOA_SZ; for (int _xi = cb; _xi < cb + nci; _xi += SOA_SZ) {{ #pragma omp simd for (int _xj = 0; _xj < SOA_SZ; _xj++) {{ {body} }} }} for (int _xi = cb + nci, _xj = 0; _xj < ce - _xi; _xj++) {{ {body} }}'''.format(body=self.body) else: inner = ''' int rb, re, cb, ce; loop_sched_2d(_ny, _nx, align, &rb, &re, &cb, &ce); int nci = ((ce - cb) / SOA_SZ)*SOA_SZ; for (int _y = rb; _y < re; _y++) {{ for (int _xi = cb; _xi < cb + nci; _xi += SOA_SZ) {{ #pragma omp simd for (int _xj = 0; _xj < SOA_SZ; _xj++) {{ {body} }} }} for (int _xi = cb + nci, _xj = 0; _xj < ce - _xi; _xj++) {{ {body} }} }}'''.format(body=self.body) return '''{spec} {{ #define X_IDX (_xi + _xj) #define X_IDX_AOSOA(v, nv)\ ((_xi/SOA_SZ*(nv) + (v))*SOA_SZ + _xj) int align = PYFR_ALIGN_BYTES / sizeof(fpdtype_t); #pragma omp parallel {{ {inner} }} #undef X_IDX #undef X_IDX_AOSOA }}'''.format(spec=self._render_spec(), inner=inner) def _render_spec(self): # We first need the argument list; starting with the dimensions kargs = ['int ' + d for d in self._dims] # Now add any scalar arguments kargs.extend('{0.dtype} {0.name}'.format(sa) for sa in self.scalargs) # Finally, add the vector arguments for va in self.vectargs: # Views if va.isview: kargs.append('{0.dtype}* __restrict__ {0.name}_v'.format(va)) kargs.append('const int* __restrict__ {0.name}_vix' .format(va)) if va.ncdim == 2: kargs.append('const int* __restrict__ {0.name}_vrstri' .format(va)) # Arrays else: # Intent in arguments should be marked constant const = 'const' if va.intent == 'in' else '' kargs.append('{0} {1.dtype}* __restrict__ {1.name}_v' .format(const, va).strip()) if self.needs_ldim(va): kargs.append('int ld{0.name}'.format(va)) return 'void {0}({1})'.format(self.name, ', '.join(kargs)) pyfr-1.5.0/pyfr/backends/openmp/gimmik.py000066400000000000000000000026511277740313300203670ustar00rootroot00000000000000# -*- coding: utf-8 -*- from gimmik import generate_mm import numpy as np from pyfr.backends.base import ComputeKernel, NotSuitableError from pyfr.backends.openmp.provider import OpenMPKernelProvider class OpenMPGiMMiKKernels(OpenMPKernelProvider): def __init__(self, backend): super().__init__(backend) self.max_nnz = backend.cfg.getint('backend-openmp', 'gimmik-max-nnz', 512) def mul(self, a, b, out, alpha=1.0, beta=0.0): # Ensure the matrices are compatible if a.nrow != out.nrow or a.ncol != b.nrow or b.ncol != out.ncol: raise ValueError('Incompatible matrices for out = a*b') # Check that A is constant if 'const' not in a.tags: raise NotSuitableError('GiMMiK requires a constant a matrix') # Check that A is reasonably sparse if np.count_nonzero(a.get()) > self.max_nnz: raise NotSuitableError('Matrix too dense for GiMMiK') # Generate the GiMMiK kernel src = generate_mm(a.get(), dtype=a.dtype, platform='c-omp', alpha=alpha, beta=beta) gimmik_mm = self._build_kernel('gimmik_mm', src, [np.int32] + [np.intp, np.int32]*2) class MulKernel(ComputeKernel): def run(self, queue): gimmik_mm(b.ncol, b, b.leaddim, out, out.leaddim) return MulKernel() pyfr-1.5.0/pyfr/backends/openmp/kernels/000077500000000000000000000000001277740313300201775ustar00rootroot00000000000000pyfr-1.5.0/pyfr/backends/openmp/kernels/__init__.py000066400000000000000000000000301277740313300223010ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/backends/openmp/kernels/axnpby.mako000066400000000000000000000034451277740313300223570ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> void axnpby(int nrow, int ncolb, int ldim, ${', '.join('fpdtype_t *__restrict__ x' + str(i) for i in range(nv))}, ${', '.join('fpdtype_t a' + str(i) for i in range(nv))}) { #define X_IDX_AOSOA(v, nv) ((ci/SOA_SZ*(nv) + (v))*SOA_SZ + cj) #pragma omp parallel { int align = PYFR_ALIGN_BYTES / sizeof(fpdtype_t); int rb, re, cb, ce, idx; fpdtype_t axn; loop_sched_2d(nrow, ncolb, align, &rb, &re, &cb, &ce); int nci = ((ce - cb) / SOA_SZ)*SOA_SZ; for (int r = rb; r < re; r++) { for (int ci = cb; ci < cb + nci; ci += SOA_SZ) { #pragma omp simd for (int cj = 0; cj < SOA_SZ; cj++) { % for k in subdims: idx = r*ldim + X_IDX_AOSOA(${k}, ${ncola}); axn = ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; if (a0 == 0.0) x0[idx] = axn; else if (a0 == 1.0) x0[idx] += axn; else x0[idx] = a0*x0[idx] + axn; % endfor } } for (int ci = cb + nci, cj = 0; cj < ce - ci; cj++) { % for k in subdims: idx = r*ldim + X_IDX_AOSOA(${k}, ${ncola}); axn = ${pyfr.dot('a{l}', 'x{l}[idx]', l=(1, nv))}; if (a0 == 0.0) x0[idx] = axn; else if (a0 == 1.0) x0[idx] += axn; else x0[idx] = a0*x0[idx] + axn; % endfor } } } #undef X_IDX_AOSOA } pyfr-1.5.0/pyfr/backends/openmp/kernels/base.mako000066400000000000000000000006761277740313300217730ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> #include #include #include #define PYFR_ALIGN_BYTES ${alignb} #define SOA_SZ ${soasz} #define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b)) // Typedefs typedef ${pyfr.npdtype_to_ctype(fpdtype)} fpdtype_t; // OpenMP static loop scheduling functions <%include file='loop-sched'/> ${next.body()} pyfr-1.5.0/pyfr/backends/openmp/kernels/errest.mako000066400000000000000000000012071277740313300223540ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> fpdtype_t errest(int n, fpdtype_t *__restrict__ x, fpdtype_t *__restrict__ y, fpdtype_t *__restrict__ z, fpdtype_t atol, fpdtype_t rtol) { fpdtype_t out = 0.0; % if norm == 'l2': #pragma omp parallel for reduction(+:out) for (int i = 0; i < n; i++) out += pow(x[i]/(atol + rtol*max(fabs(y[i]), fabs(z[i]))), 2); % else: #pragma omp parallel for reduction(max:out) for (int i = 0; i < n; i++) out = max(out, pow(x[i]/(atol + rtol*max(fabs(y[i]), fabs(z[i]))), 2)); % endif return out; } pyfr-1.5.0/pyfr/backends/openmp/kernels/loop-sched.mako000066400000000000000000000030751277740313300231120ustar00rootroot00000000000000# -*- coding: utf-8 -*- static inline int gcd(int a, int b) { return (a == 0) ? b : gcd(b % a, a); } static inline void loop_sched_1d(int n, int align, int *b, int *e) { int tid = omp_get_thread_num(); int nth = omp_get_num_threads(); // Round up n to be a multiple of nth int rn = n + nth - 1 - (n - 1) % nth; // Nominal tile size int sz = rn / nth; // Handle alignment sz += align - 1 - (sz - 1) % align; // Assign the starting and ending index *b = sz * tid; *e = min(*b + sz, n); // Clamp if (*b >= n) *b = *e = 0; } static inline void loop_sched_2d(int nrow, int ncol, int colalign, int *rowb, int *rowe, int *colb, int *cole) { int tid = omp_get_thread_num(); int nth = omp_get_num_threads(); // Distribute threads int nrowth = gcd(nrow, nth); int ncolth = nth / nrowth; // Row and column indices for our thread int rowix = tid / ncolth; int colix = tid % ncolth; // Round up ncol to be a multiple of ncolth int rncol = ncol + ncolth - 1 - (ncol - 1) % ncolth; // Nominal tile size int ntilerow = nrow / nrowth; int ntilecol = rncol / ncolth; // Handle column alignment ntilecol += colalign - 1 - (ntilecol - 1) % colalign; // Assign the starting and ending row to each thread *rowb = ntilerow * rowix; *rowe = *rowb + ntilerow; // Assign the starting and ending column to each thread *colb = ntilecol * colix; *cole = min(*colb + ntilecol, ncol); // Clamp if (*colb >= ncol) *colb = *cole = 0; } pyfr-1.5.0/pyfr/backends/openmp/kernels/pack.mako000066400000000000000000000013731277740313300217720ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> void pack_view(int n, int nrv, int ncv, const fpdtype_t *__restrict__ v, const int *__restrict__ vix, const int *__restrict__ vrstri, fpdtype_t *__restrict__ pmat) { if (ncv == 1) for (int i = 0; i < n; i++) pmat[i] = v[vix[i]]; else if (nrv == 1) for (int i = 0; i < n; i++) for (int c = 0; c < ncv; c++) pmat[c*n + i] = v[vix[i] + SOA_SZ*c]; else for (int i = 0; i < n; i++) for (int r = 0; r < nrv; r++) for (int c = 0; c < ncv; c++) pmat[(r*ncv + c)*n + i] = v[vix[i] + vrstri[i]*r + SOA_SZ*c]; } pyfr-1.5.0/pyfr/backends/openmp/kernels/par-gemm.mako000066400000000000000000000015541277740313300225620ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> // CBLAS GEMM constants #define ROW_MAJOR 101 #define NO_TRANS 111 // CBLAS GEMM prototype typedef void (*cblas_gemm_t)(int, int, int, int, int, int, fpdtype_t, const fpdtype_t *, int, const fpdtype_t *, int, fpdtype_t, fpdtype_t *, int); void par_gemm(cblas_gemm_t gemm, int M, int N, int K, fpdtype_t alpha, const fpdtype_t *A, int lda, const fpdtype_t *B, int ldb, fpdtype_t beta, fpdtype_t *C, int ldc) { #pragma omp parallel { int begin, end; loop_sched_1d(N, PYFR_ALIGN_BYTES / sizeof(fpdtype_t), &begin, &end); gemm(ROW_MAJOR, NO_TRANS, NO_TRANS, M, end - begin, K, alpha, A, lda, B + begin, ldb, beta, C + begin, ldc); } } pyfr-1.5.0/pyfr/backends/openmp/kernels/par-memcpy.mako000066400000000000000000000005341277740313300231240ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> #include void par_memcpy(char *dst, const char *src, int n) { #pragma omp parallel { int begin, end; loop_sched_1d(n, 1, &begin, &end); memcpy(dst + begin, src + begin, end - begin); } } pyfr-1.5.0/pyfr/backends/openmp/packing.py000066400000000000000000000016121277740313300205220ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base import ComputeKernel, NullComputeKernel from pyfr.backends.base.packing import BasePackingKernels from pyfr.backends.openmp.provider import OpenMPKernelProvider class OpenMPPackingKernels(OpenMPKernelProvider, BasePackingKernels): def pack(self, mv): # An exchange view is simply a regular view plus an exchange matrix m, v = mv.xchgmat, mv.view # Render the kernel template src = self.backend.lookup.get_template('pack').render() # Build kern = self._build_kernel('pack_view', src, 'iiiPPPP') class PackXchgViewKernel(ComputeKernel): def run(self, queue): kern(v.n, v.nvrow, v.nvcol, v.basedata, v.mapping, v.rstrides or 0, m) return PackXchgViewKernel() def unpack(self, mv): # No-op return NullComputeKernel() pyfr-1.5.0/pyfr/backends/openmp/provider.py000066400000000000000000000016651277740313300207500ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base import (BaseKernelProvider, BasePointwiseKernelProvider, ComputeKernel) from pyfr.backends.openmp.compiler import GccSourceModule import pyfr.backends.openmp.generator as generator from pyfr.util import memoize class OpenMPKernelProvider(BaseKernelProvider): @memoize def _build_kernel(self, name, src, argtypes, restype=None): mod = GccSourceModule(src, self.backend.cfg) return mod.function(name, restype, argtypes) class OpenMPPointwiseKernelProvider(OpenMPKernelProvider, BasePointwiseKernelProvider): kernel_generator_cls = generator.OpenMPKernelGenerator def _instantiate_kernel(self, dims, fun, arglst): class PointwiseKernel(ComputeKernel): def run(self, queue, **kwargs): fun(*[kwargs.get(ka, ka) for ka in arglst]) return PointwiseKernel() pyfr-1.5.0/pyfr/backends/openmp/types.py000066400000000000000000000051561277740313300202610ustar00rootroot00000000000000# -*- coding: utf-8 -*- import pyfr.backends.base as base from pyfr.util import lazyprop class OpenMPMatrixBase(base.MatrixBase): def onalloc(self, basedata, offset): self.basedata = basedata.ctypes.data self.data = basedata[offset:offset + self.nrow*self.pitch] self.data = self.data.view(self.dtype) self.data = self.data.reshape(self.nrow, self.leaddim) self.offset = offset # Pointer to our ndarray (used by ctypes) self._as_parameter_ = self.data.ctypes.data # Process any initial value if self._initval is not None: self._set(self._initval) # Remove del self._initval def _get(self): return self._unpack(self.data[:, :self.ncol]) def _set(self, ary): self.data[:, :self.ncol] = self._pack(ary) class OpenMPMatrix(OpenMPMatrixBase, base.Matrix): @lazyprop def hdata(self): return self.data class OpenMPMatrixRSlice(base.MatrixRSlice): @lazyprop def data(self): return self.parent.data[self.p:self.q] @lazyprop def _as_parameter_(self): return self.data.ctypes.data class OpenMPMatrixBank(base.MatrixBank): pass class OpenMPConstMatrix(OpenMPMatrixBase, base.ConstMatrix): pass class OpenMPXchgMatrix(OpenMPMatrix, base.XchgMatrix): pass class OpenMPXchgView(base.XchgView): pass class OpenMPView(base.View): pass class OpenMPQueue(base.Queue): def _exec_nonblock(self): while self._items: kern = self._items[0][0] # See if kern will block if self._at_sequence_point(kern) or kern.ktype == 'compute': break self._exec_item(*self._items.popleft()) def _wait(self): if self._last and self._last.ktype == 'mpi': from mpi4py import MPI MPI.Prequest.Waitall(self.mpi_reqs) self.mpi_reqs = [] self._last = None def _at_sequence_point(self, item): last = self._last return last and last.ktype == 'mpi' and item.ktype != 'mpi' @staticmethod def runall(queues): # Fire off any non-blocking kernels for q in queues: q._exec_nonblock() while any(queues): # Execute a (potentially) blocking item from each queue for q in filter(None, queues): q._exec_nowait() # Now consider kernels which will wait for q in filter(None, queues): q._exec_next() q._exec_nonblock() # Wait for all tasks to complete for q in queues: q._wait() pyfr-1.5.0/pyfr/ctypesutil.py000066400000000000000000000023741277740313300162510ustar00rootroot00000000000000# -*- coding: utf-8 -*- import ctypes import ctypes.util import os import sys def find_libc(): if sys.platform == 'win32': return ctypes.util.find_msvcrt() else: return ctypes.util.find_library('c') def load_library(name): lname = platform_libname(name) sdirs = platform_libdirs() # First attempt to utilise the system search path try: return ctypes.CDLL(lname) # Otherwise, if this fails then run our own search except OSError: for sd in sdirs: try: return ctypes.CDLL(os.path.abspath(os.path.join(sd, lname))) except OSError: pass else: raise OSError('Unable to load {0}'.format(name)) def platform_libname(name): if sys.platform == 'darwin': return 'lib{0}.dylib'.format(name) elif sys.platform == 'win32': return '{0}.dll'.format(name) else: return 'lib{0}.so'.format(name) def platform_libdirs(): path = os.environ.get('PYFR_LIBRARY_PATH', '') dirs = [d for d in path.split(':') if d] # On Mac OS X append the default path used by MacPorts if sys.platform == 'darwin': return dirs + ['/opt/local/lib'] # Otherwise just return else: return dirs pyfr-1.5.0/pyfr/inifile.py000066400000000000000000000072361277740313300154650ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ast import literal_eval from collections import OrderedDict from configparser import SafeConfigParser, NoSectionError, NoOptionError import io import os import re def _ensure_float(m): m = m.group(0) return m if any(c in m for c in '.eE') else m + '.' _sentinel = object() class Inifile(object): def __init__(self, inistr=None): self._cp = cp = SafeConfigParser(inline_comment_prefixes=[';']) # Preserve case cp.optionxform = str if inistr: cp.read_string(inistr) @staticmethod def load(file): if isinstance(file, str): file = open(file) return Inifile(file.read()) def set(self, section, option, value): value = str(value) try: self._cp.set(section, option, value) except NoSectionError: self._cp.add_section(section) self._cp.set(section, option, value) def hasopt(self, section, option): return self._cp.has_option(section, option) def get(self, section, option, default=_sentinel, vars=None): try: val = self._cp.get(section, option, vars=vars) except NoSectionError: if default is _sentinel: raise self._cp.add_section(section) val = self.get(section, option, default, vars) except NoOptionError: if default is _sentinel: raise self._cp.set(section, option, str(default)) val = self._cp.get(section, option, vars=vars) return os.path.expandvars(val) def getpath(self, section, option, default=_sentinel, vars=None, abs=True): path = self.get(section, option, default, vars) path = os.path.expanduser(path) if abs: path = os.path.abspath(path) return path def getexpr(self, section, option, default=_sentinel, subs={}): expr = self.get(section, option, default) # Ensure the expression does not contain invalid characters if not re.match(r'[A-Za-z0-9 \t\n\r.,+\-*/%()]+$', expr): raise ValueError('Invalid characters in expression') # Substitute variables if subs: expr = re.sub(r'\b({0})\b'.format('|'.join(subs)), lambda m: subs[m.group(1)], expr) # Convert integers to floats expr = re.sub(r'\b((\d+\.?\d*)|(\.\d+))([eE][+-]?\d+)?(?!\s*])', _ensure_float, expr) # Encase in parenthesis return '({0})'.format(expr) def getfloat(self, section, option, default=_sentinel): return float(self.get(section, option, default)) def getint(self, section, option, default=_sentinel): return int(self.get(section, option, default)) def getliteral(self, section, option, default=_sentinel): return literal_eval(self.get(section, option, default)) def items(self, section): return OrderedDict(self._cp.items(section)) def items_as(self, section, type): iv = [] for k, v in self._cp.items(section): try: iv.append((k, type(v))) except ValueError: pass return OrderedDict(iv) _bool_states = {'1': True, 'yes': True, 'true': True, 'on': True, '0': False, 'no': False, 'false': False, 'off': False} def getbool(self, section, option, default=_sentinel): v = self.get(section, option, default) return self._bool_states[v.lower()] def sections(self): return self._cp.sections() def tostr(self): buf = io.StringIO() self._cp.write(buf) return buf.getvalue() pyfr-1.5.0/pyfr/integrators/000077500000000000000000000000001277740313300160255ustar00rootroot00000000000000pyfr-1.5.0/pyfr/integrators/__init__.py000066400000000000000000000032611277740313300201400ustar00rootroot00000000000000# -*- coding: utf-8 -*- import re from pyfr.integrators.dual import (BaseDualController, BaseDualPseudoStepper, BaseDualStepper) from pyfr.integrators.std import BaseStdController, BaseStdStepper from pyfr.util import subclass_where def get_integrator(backend, systemcls, rallocs, mesh, initsoln, cfg): form = cfg.get('solver-time-integrator', 'formulation', 'std') if form == 'std': cn = cfg.get('solver-time-integrator', 'controller') sn = cfg.get('solver-time-integrator', 'scheme') cc = subclass_where(BaseStdController, controller_name=cn) sc = subclass_where(BaseStdStepper, stepper_name=sn) bases = [(cn, cc), (sn, sc)] elif form == 'dual': cn = cfg.get('solver-time-integrator', 'controller') pn = cfg.get('solver-time-integrator', 'pseudo-scheme') sn = cfg.get('solver-time-integrator', 'scheme') cc = subclass_where(BaseDualController, controller_name=cn) pc = subclass_where(BaseDualPseudoStepper, pseudo_stepper_name=pn) sc = subclass_where(BaseDualStepper, stepper_name=sn) bases = [(cn, cc), (pn, pc), (sn, sc)] else: raise ValueError('Invalid integrator formulation') # Determine the integrator name name = '_'.join([form] + list(bn for bn, bc in bases) + ['integrator']) name = re.sub('(?:^|_|-)([a-z])', lambda m: m.group(1).upper(), name) # Composite the base classes together to form a new type integrator = type(name, tuple(bc for bn, bc in bases), dict(name=name)) # Construct and return an instance of this new integrator class return integrator(backend, systemcls, rallocs, mesh, initsoln, cfg) pyfr-1.5.0/pyfr/integrators/base.py000066400000000000000000000155271277740313300173230ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod, abstractproperty from collections import deque import re import time import numpy as np from pyfr.inifile import Inifile from pyfr.mpiutil import get_comm_rank_root, get_mpi from pyfr.plugins import get_plugin from pyfr.util import memoize, proxylist class BaseIntegrator(object, metaclass=ABCMeta): def __init__(self, backend, systemcls, rallocs, mesh, initsoln, cfg): self.backend = backend self.rallocs = rallocs self.isrestart = initsoln is not None self.cfg = cfg self.prevcfgs = {f: initsoln[f] for f in initsoln or [] if f.startswith('config-')} # Ensure the system is compatible with our formulation if self.formulation not in systemcls.elementscls.formulations: raise RuntimeError( 'System {0} does not support time stepping formulation {1}' .format(systemcls.name, self.formulation) ) # Start time self.tstart = cfg.getfloat('solver-time-integrator', 'tstart', 0.0) self.tend = cfg.getfloat('solver-time-integrator', 'tend') # Current time; defaults to tstart unless restarting if self.isrestart: stats = Inifile(initsoln['stats']) self.tcurr = stats.getfloat('solver-time-integrator', 'tcurr') else: self.tcurr = self.tstart # List of target times to advance to self.tlist = deque([self.tend]) # Accepted and rejected step counters self.nacptsteps = 0 self.nrjctsteps = 0 self.nacptchain = 0 # Current and minimum time steps self._dt = self.cfg.getfloat('solver-time-integrator', 'dt') self.dtmin = 1.0e-12 # Determine the amount of temp storage required by this method nreg = self._stepper_nregs # Construct the relevant mesh partition self.system = systemcls(backend, rallocs, mesh, initsoln, nreg, cfg) # Storage register banks self._regs, self._regidx = self._get_reg_banks(nreg) # Extract the UUID of the mesh (to be saved with solutions) self.mesh_uuid = mesh['mesh_uuid'] # Get a queue for subclasses to use self._queue = backend.queue() # Global degree of freedom count self._gndofs = self._get_gndofs() # Bank index of solution self._idxcurr = 0 # Solution cache self._curr_soln = None # Add kernel cache self._axnpby_kerns = {} # Record the starting wall clock time self._wstart = time.time() # Event handlers for advance_to self.completed_step_handlers = proxylist(self._get_plugins()) # Delete the memory-intensive elements map from the system del self.system.ele_map def _get_reg_banks(self, nreg): regs, regidx = [], list(range(nreg)) # Create a proxylist of matrix-banks for each storage register for i in regidx: regs.append( proxylist([self.backend.matrix_bank(em, i) for em in self.system.ele_banks]) ) return regs, regidx def _get_gndofs(self): comm, rank, root = get_comm_rank_root() # Get the number of degrees of freedom in this partition ndofs = sum(self.system.ele_ndofs) # Sum to get the global number over all partitions return comm.allreduce(ndofs, op=get_mpi('sum')) def _get_plugins(self): plugins = [] for s in self.cfg.sections(): m = re.match('soln-plugin-(.+?)(?:-(.+))?$', s) if m: cfgsect, name, suffix = m.group(0), m.group(1), m.group(2) # Instantiate plugins.append(get_plugin(name, self, cfgsect, suffix)) return plugins def _get_kernels(self, name, nargs, **kwargs): # Transpose from [nregs][neletypes] to [neletypes][nregs] transregs = zip(*self._regs) # Generate an kernel for each element type kerns = proxylist([]) for tr in transregs: kerns.append(self.backend.kernel(name, *tr[:nargs], **kwargs)) return kerns def _prepare_reg_banks(self, *bidxes): for reg, ix in zip(self._regs, bidxes): reg.active = ix @memoize def _get_axnpby_kerns(self, n, subdims=None): return self._get_kernels('axnpby', nargs=n, subdims=subdims) def _add(self, *args): # Get a suitable set of axnpby kernels axnpby = self._get_axnpby_kerns(len(args) // 2) # Bank indices are in odd-numbered arguments self._prepare_reg_banks(*args[1::2]) # Bind and run the axnpby kernels self._queue % axnpby(*args[::2]) def call_plugin_dt(self, dt): ta = self.tlist tb = deque(np.arange(self.tcurr, self.tend, dt).tolist()) self.tlist = tlist = deque() # Merge the current and new time lists while ta and tb: t = ta.popleft() if ta[0] < tb[0] else tb.popleft() if not tlist or t - tlist[-1] > self.dtmin: tlist.append(t) tlist.extend(ta) tlist.extend(tb) @property def soln(self): # If we do not have the solution cached then fetch it if not self._curr_soln: self._curr_soln = self.system.ele_scal_upts(self._idxcurr) return self._curr_soln @abstractmethod def step(self, t, dt): pass @abstractmethod def advance_to(self, t): pass @abstractproperty def _stepper_nfevals(self): pass @abstractproperty def _stepper_nregs(self): pass @abstractproperty def _stepper_order(self): pass def run(self): for t in self.tlist: self.advance_to(t) @property def nsteps(self): return self.nacptsteps + self.nrjctsteps def collect_stats(self, stats): wtime = time.time() - self._wstart # Rank allocation stats.set('backend', 'rank-allocation', ','.join(str(r) for r in self.rallocs.mprankmap)) # Simulation and wall clock times stats.set('solver-time-integrator', 'tcurr', self.tcurr) stats.set('solver-time-integrator', 'wall-time', wtime) # Step counts stats.set('solver-time-integrator', 'nsteps', self.nsteps) stats.set('solver-time-integrator', 'nacptsteps', self.nacptsteps) stats.set('solver-time-integrator', 'nrjctsteps', self.nrjctsteps) @property def cfgmeta(self): cfg = self.cfg.tostr() if self.prevcfgs: ret = dict(self.prevcfgs, config=cfg) if cfg != ret['config-' + str(len(self.prevcfgs) - 1)]: ret['config-' + str(len(self.prevcfgs))] = cfg return ret else: return {'config': cfg, 'config-0': cfg} pyfr-1.5.0/pyfr/integrators/dual/000077500000000000000000000000001277740313300167525ustar00rootroot00000000000000pyfr-1.5.0/pyfr/integrators/dual/__init__.py000066400000000000000000000003341277740313300210630ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.integrators.dual.controllers import BaseDualController from pyfr.integrators.dual.pseudosteppers import BaseDualPseudoStepper from pyfr.integrators.dual.steppers import BaseDualStepper pyfr-1.5.0/pyfr/integrators/dual/base.py000066400000000000000000000013121277740313300202330ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import abstractmethod from pyfr.integrators.base import BaseIntegrator class BaseDualIntegrator(BaseIntegrator): formulation = 'dual' def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._dtau = self.cfg.getfloat('solver-time-integrator', 'pseudo-dt') self.dtaumin = 1.0e-12 @property def _stepper_regidx(self): return self._regidx[:self._pseudo_stepper_nregs] @property def _source_regidx(self): return self._regidx[self._pseudo_stepper_nregs:] @abstractmethod def _dual_time_source(self): pass @abstractmethod def finalise_step(self, currsoln): pass pyfr-1.5.0/pyfr/integrators/dual/controllers.py000066400000000000000000000065051277740313300217000ustar00rootroot00000000000000# -*- coding: utf-8 -*- import math from pyfr.integrators.dual.base import BaseDualIntegrator from pyfr.mpiutil import get_comm_rank_root, get_mpi from pyfr.util import memoize class BaseDualController(BaseDualIntegrator): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Solution filtering frequency self._fnsteps = self.cfg.getint('soln-filter', 'nsteps', '0') # Stats on the most recent step self.stepinfo = [] def _accept_step(self, dt, idxcurr): self.tcurr += dt self.nacptsteps += 1 self.nacptchain += 1 self._idxcurr = idxcurr # Filter if self._fnsteps and self.nacptsteps % self._fnsteps == 0: self.system.filt(idxcurr) # Invalidate the solution cache self._curr_soln = None # Fire off any event handlers self.completed_step_handlers(self) class DualNoneController(BaseDualController): controller_name = 'none' def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) sect = 'solver-time-integrator' self._maxniters = self.cfg.getint(sect, 'pseudo-niters-max') self._minniters = self.cfg.getint(sect, 'pseudo-niters-min') if self._maxniters < self._minniters: raise ValueError('The maximum number of pseudo-iterations must ' 'be greater than or equal to the minimum') self._pseudo_aresid = self.cfg.getfloat(sect, 'pseudo-aresid') self._pseudo_rresid = self.cfg.getfloat(sect, 'pseudo-rresid') def advance_to(self, t): if t < self.tcurr: raise ValueError('Advance time is in the past') while self.tcurr < t: for i in range(self._maxniters): dt = max(min(t - self.tcurr, self._dt), self.dtmin) dtau = max(min(t - self.tcurr, self._dtau), self.dtaumin) # Take the step self._idxcurr, self._idxprev = self.step(self.tcurr, dt, dtau) # Activate convergence monitoring after pseudo-niters-min if i >= self._minniters - 1: # Subtract the current solution from the previous solution self._add(-1.0/dtau, self._idxprev, 1.0/dtau, self._idxcurr) # Compute the normalised residual and check for convergence if self._resid(self._idxprev, self._idxcurr) < 1.0: break # Update the dual-time stepping banks (n+1 => n, n => n-1) self.finalise_step(self._idxcurr) # We are not adaptive, so accept every step self._accept_step(dt, self._idxcurr) @memoize def _get_errest_kerns(self): return self._get_kernels('errest', nargs=3, norm='uniform') def _resid(self, x, y): comm, rank, root = get_comm_rank_root() # Get an errest kern to compute the square of the maximum residual errest = self._get_errest_kerns() # Prepare and run the kernel self._prepare_reg_banks(x, y, y) self._queue % errest(self._pseudo_aresid, self._pseudo_rresid) # Reduce locally (element types) and globally (MPI ranks) rl = max(errest.retval) rg = comm.allreduce(rl, op=get_mpi('max')) # Normalise return math.sqrt(rg) pyfr-1.5.0/pyfr/integrators/dual/pseudosteppers.py000066400000000000000000000121661277740313300224170ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.integrators.dual.base import BaseDualIntegrator class BaseDualPseudoStepper(BaseDualIntegrator): def collect_stats(self, stats): super().collect_stats(stats) # Total number of RHS evaluations stats.set('solver-time-integrator', 'nfevals', self._stepper_nfevals) def _add_with_dts(self, *args, c): vals, regs = list(args[::2]), list(args[1::2]) # Coefficients for the dual-time source term svals = [c*sc for sc in self._dual_time_source] # Normal addition axnpby = self._get_axnpby_kerns(len(vals)) self._prepare_reg_banks(*regs) self._queue % axnpby(*vals) # Source addition axnpby = self._get_axnpby_kerns(len(svals) + 1, subdims=self._subdims) self._prepare_reg_banks(regs[0], self._idxcurr, *self._source_regidx) self._queue % axnpby(1, *svals) def finalise_step(self, currsoln): add = self._add pnreg = self._pseudo_stepper_nregs # Rotate the source registers to the right by one self._regidx[pnreg:] = (self._source_regidx[-1:] + self._source_regidx[:-1]) # Copy the current soln into the first source register add(0.0, self._regidx[pnreg], 1.0, currsoln) class DualPseudoEulerStepper(BaseDualPseudoStepper): pseudo_stepper_name = 'euler' @property def _stepper_nfevals(self): return self.nsteps @property def _pseudo_stepper_nregs(self): return 2 @property def _pseudo_stepper_order(self): return 1 def step(self, t, dt, dtau): add, add_with_dts = self._add, self._add_with_dts rhs = self.system.rhs r0, r1 = self._stepper_regidx rat = dtau / dt if r0 != self._idxcurr: r0, r1 = r1, r0 rhs(t, r0, r1) add_with_dts(0, r1, 1, r0, dtau, r1, c=rat) return r1, r0 class DualPseudoTVDRK3Stepper(BaseDualPseudoStepper): pseudo_stepper_name = 'tvd-rk3' @property def _stepper_nfevals(self): return 3*self.nsteps @property def _pseudo_stepper_nregs(self): return 3 @property def _pseudo_stepper_order(self): return 3 def step(self, t, dt, dtau): add, add_with_dts = self._add, self._add_with_dts rhs = self.system.rhs rat = dtau / dt # Get the bank indices for pseudo-registers (n+1,m; n+1,m+1; rhs), # where m = pseudo-time and n = real-time r0, r1, r2 = self._stepper_regidx # Ensure r0 references the bank containing u(n+1,m) if r0 != self._idxcurr: r0, r1 = r1, r0 # First stage; # r2 = -∇·f(r0); r1 = r0 + dtau*r2 - dtau*dQ/dt; rhs(t, r0, r2) add_with_dts(0, r1, 1, r0, dtau, r2, c=rat) # Second stage; # r2 = -∇·f(r1); r1 = 3/4*r0 + 1/4*r1 + 1/4*dtau*r2 - dtau/4*dQ/dt rhs(t, r1, r2) add_with_dts(1/4, r1, 3/4, r0, dtau/4, r2, c=rat/4) # Third stage; # r2 = -∇·f(r1); r1 = 1/3*r0 + 2/3*r1 + 2/3*dtau*r2 - 2/3*dtau*dQ/dt rhs(t, r1, r2) add_with_dts(2/3, r1, 1/3, r0, 2*dtau/3, r2, c=2*rat/3) # Return the index of the bank containing u(n+1,m+1) return r1, r0 class DualPseudoRK4Stepper(BaseDualPseudoStepper): pseudo_stepper_name = 'rk4' @property def _stepper_nfevals(self): return 4*self.nsteps @property def _pseudo_stepper_nregs(self): return 3 @property def _pseudo_stepper_order(self): return 4 def step(self, t, dt, dtau): add, add_with_dts = self._add, self._add_with_dts rhs = self.system.rhs rat = dtau / dt # Get the bank indices for pseudo-registers (n+1,m; n+1,m+1; rhs), # where m = pseudo-time and n = real-time r0, r1, r2 = self._stepper_regidx # Ensure r0 references the bank containing u(n+1,m) if r0 != self._idxcurr: r0, r1 = r1, r0 # First stage; r1 = -∇·f(r0) rhs(t, r0, r1) # Second stage; r2 = r0 + dtau/2*r1 - dtau/2*dQ/dt; r2 = -∇·f(r2) add_with_dts(0, r2, 1, r0, dtau/2, r1, c=rat/2) rhs(t, r2, r2) # As no subsequent stages depend on the first stage we can # reuse its register to start accumulating the solution with # r1 = r0 + dtau/6*r1 + dtau/3*r2 -(dtau/6+dtau/3)*dQ/dt add_with_dts(dtau/6, r1, 1, r0, dtau/3, r2, c=(1/6+1/3)*rat) # Third stage; here we reuse the r2 register # r2 = r0 + dtau/2*r2 - dtau/2*dQ/dt # r2 = -∇·f(r2) add_with_dts(dtau/2, r2, 1, r0, c=rat/2) rhs(t, r2, r2) # Accumulate; r1 = r1 + dtau/3*r2 - dtau/3*dQ/dt add_with_dts(1, r1, dtau/3, r2, c=rat/3) # Fourth stage; again we reuse r2 # r2 = r0 + dtau*r2 - dtau*dQ/dt # r2 = -∇·f(r2) add_with_dts(dtau, r2, 1, r0, c=rat) rhs(t, r2, r2) # Final accumulation r1 = r1 + dtau/6*r2 - dtau/6*dQ/dt = u(n+1,m+1) add_with_dts(1, r1, dtau/6, r2, c=rat/6) # Return the index of the bank containing u(n+1,m+1) return r1, r0 pyfr-1.5.0/pyfr/integrators/dual/steppers.py000066400000000000000000000022471277740313300211760ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.integrators.dual.base import BaseDualIntegrator class BaseDualStepper(BaseDualIntegrator): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) elementscls = self.system.elementscls self._subdims = [elementscls.convarmap[self.system.ndims].index(v) for v in elementscls.dualcoeffs[self.system.ndims]] @property def _stepper_nregs(self): return self._pseudo_stepper_nregs + len(self._dual_time_source) - 1 class DualBDF2Stepper(BaseDualStepper): stepper_name = 'bdf2' @property def _stepper_order(self): return 2 @property def _dual_time_source(self): return [-1.5, 2.0, -0.5] class DualBDF3Stepper(BaseDualStepper): stepper_name = 'bdf3' @property def _stepper_order(self): return 3 @property def _dual_time_source(self): return [-11.0/6.0, 3.0, -1.5, 1.0/3.0] class DualBackwardEulerStepper(BaseDualStepper): stepper_name = 'backward-euler' @property def _stepper_order(self): return 1 @property def _dual_time_source(self): return [-1.0, 1.0] pyfr-1.5.0/pyfr/integrators/std/000077500000000000000000000000001277740313300166175ustar00rootroot00000000000000pyfr-1.5.0/pyfr/integrators/std/__init__.py000066400000000000000000000002211277740313300207230ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.integrators.std.controllers import BaseStdController from pyfr.integrators.std.steppers import BaseStdStepper pyfr-1.5.0/pyfr/integrators/std/base.py000066400000000000000000000011051277740313300201000ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import abstractproperty from pyfr.integrators.base import BaseIntegrator class BaseStdIntegrator(BaseIntegrator): formulation = 'std' def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Sanity checks if self._controller_needs_errest and not self._stepper_has_errest: raise TypeError('Incompatible stepper/controller combination') @abstractproperty def _controller_needs_errest(self): pass @abstractproperty def _stepper_has_errest(self): pass pyfr-1.5.0/pyfr/integrators/std/controllers.py000066400000000000000000000116731277740313300215470ustar00rootroot00000000000000# -*- coding: utf-8 -*- import math from pyfr.integrators.std.base import BaseStdIntegrator from pyfr.mpiutil import get_comm_rank_root, get_mpi from pyfr.util import memoize, proxylist class BaseStdController(BaseStdIntegrator): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Solution filtering frequency self._fnsteps = self.cfg.getint('soln-filter', 'nsteps', '0') # Stats on the most recent step self.stepinfo = [] def _accept_step(self, dt, idxcurr, err=None): self.tcurr += dt self.nacptsteps += 1 self.nacptchain += 1 self.stepinfo.append((dt, 'accept', err)) self._idxcurr = idxcurr # Filter if self._fnsteps and self.nacptsteps % self._fnsteps == 0: self.system.filt(idxcurr) # Invalidate the solution cache self._curr_soln = None # Fire off any event handlers self.completed_step_handlers(self) # Clear the step info self.stepinfo = [] def _reject_step(self, dt, idxold, err=None): if dt <= self.dtmin: raise RuntimeError('Minimum sized time step rejected') self.nacptchain = 0 self.nrjctsteps += 1 self.stepinfo.append((dt, 'reject', err)) self._idxcurr = idxold class StdNoneController(BaseStdController): controller_name = 'none' @property def _controller_needs_errest(self): return False def advance_to(self, t): if t < self.tcurr: raise ValueError('Advance time is in the past') while self.tcurr < t: # Decide on the time step dt = max(min(t - self.tcurr, self._dt), self.dtmin) # Take the step idxcurr = self.step(self.tcurr, dt) # We are not adaptive, so accept every step self._accept_step(dt, idxcurr) class StdPIController(BaseStdController): controller_name = 'pi' def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) sect = 'solver-time-integrator' # Error tolerances self._atol = self.cfg.getfloat(sect, 'atol') self._rtol = self.cfg.getfloat(sect, 'rtol') # Error norm self._norm = self.cfg.get(sect, 'errest-norm', 'l2') if self._norm not in {'l2', 'uniform'}: raise ValueError('Invalid error norm') # PI control values self._alpha = self.cfg.getfloat(sect, 'pi-alpha', 0.7) self._beta = self.cfg.getfloat(sect, 'pi-beta', 0.4) # Estimate of previous error self._errprev = 1.0 # Step size adjustment factors self._saffac = self.cfg.getfloat(sect, 'safety-fact', 0.8) self._maxfac = self.cfg.getfloat(sect, 'max-fact', 2.5) self._minfac = self.cfg.getfloat(sect, 'min-fact', 0.3) @property def _controller_needs_errest(self): return True @memoize def _get_errest_kerns(self): return self._get_kernels('errest', nargs=3, norm=self._norm) def _errest(self, x, y, z): comm, rank, root = get_comm_rank_root() errest = self._get_errest_kerns() # Obtain an estimate for the squared error self._prepare_reg_banks(x, y, z) self._queue % errest(self._atol, self._rtol) # L2 norm if self._norm == 'l2': # Reduce locally (element types) and globally (MPI ranks) rl = sum(errest.retval) rg = comm.allreduce(rl, op=get_mpi('sum')) # Normalise err = math.sqrt(rg / self._gndofs) # Uniform norm else: # Reduce locally (element types) and globally (MPI ranks) rl = max(errest.retval) rg = comm.allreduce(rl, op=get_mpi('max')) # Normalise err = math.sqrt(rg) return err if not math.isnan(err) else 100 def advance_to(self, t): if t < self.tcurr: raise ValueError('Advance time is in the past') # Constants maxf = self._maxfac minf = self._minfac saff = self._saffac sord = self._stepper_order expa = self._alpha / sord expb = self._beta / sord while self.tcurr < t: # Decide on the time step dt = max(min(t - self.tcurr, self._dt), self.dtmin) # Take the step idxcurr, idxprev, idxerr = self.step(self.tcurr, dt) # Estimate the error err = self._errest(idxerr, idxcurr, idxprev) # Determine time step adjustment factor fac = err**-expa * self._errprev**expb fac = min(maxf, max(minf, saff*fac)) # Compute the size of the next step self._dt = fac*dt # Decide if to accept or reject the step if err < 1.0: self._errprev = err self._accept_step(dt, idxcurr, err=err) else: self._reject_step(dt, idxprev, err=err) pyfr-1.5.0/pyfr/integrators/std/steppers.py000066400000000000000000000153051277740313300210420ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.integrators.std.base import BaseStdIntegrator class BaseStdStepper(BaseStdIntegrator): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Add kernel cache self._axnpby_kerns = {} def collect_stats(self, stats): super().collect_stats(stats) # Total number of RHS evaluations stats.set('solver-time-integrator', 'nfevals', self._stepper_nfevals) class StdEulerStepper(BaseStdStepper): stepper_name = 'euler' @property def _stepper_has_errest(self): return False @property def _stepper_nfevals(self): return self.nsteps @property def _stepper_nregs(self): return 2 @property def _stepper_order(self): return 1 def step(self, t, dt): add, rhs = self._add, self.system.rhs ut, f = self._regidx rhs(t, ut, f) add(1.0, ut, dt, f) return ut class StdTVDRK3Stepper(BaseStdStepper): stepper_name = 'tvd-rk3' @property def _stepper_has_errest(self): return False @property def _stepper_nfevals(self): return 3*self.nsteps @property def _stepper_nregs(self): return 3 @property def _stepper_order(self): return 3 def step(self, t, dt): add, rhs = self._add, self.system.rhs # Get the bank indices for each register (n, n+1, rhs) r0, r1, r2 = self._regidx # Ensure r0 references the bank containing u(t) if r0 != self._idxcurr: r0, r1 = r1, r0 # First stage; r2 = -∇·f(r0); r1 = r0 + dt*r2 rhs(t, r0, r2) add(0.0, r1, 1.0, r0, dt, r2) # Second stage; r2 = -∇·f(r1); r1 = 0.75*r0 + 0.25*r1 + 0.25*dt*r2 rhs(t + dt, r1, r2) add(0.25, r1, 0.75, r0, 0.25*dt, r2) # Third stage; r2 = -∇·f(r1); # r1 = 1.0/3.0*r0 + 2.0/3.0*r1 + 2.0/3.0*dt*r2 rhs(t + 0.5*dt, r1, r2) add(2.0/3.0, r1, 1.0/3.0, r0, 2.0/3.0*dt, r2) # Return the index of the bank containing u(t + dt) return r1 class StdRK4Stepper(BaseStdStepper): stepper_name = 'rk4' @property def _stepper_has_errest(self): return False @property def _stepper_nfevals(self): return 4*self.nsteps @property def _stepper_nregs(self): return 3 @property def _stepper_order(self): return 4 def step(self, t, dt): add, rhs = self._add, self.system.rhs # Get the bank indices for each register r0, r1, r2 = self._regidx # Ensure r0 references the bank containing u(t) if r0 != self._idxcurr: r0, r1 = r1, r0 # First stage; r1 = -∇·f(r0) rhs(t, r0, r1) # Second stage; r2 = r0 + dt/2*r1; r2 = -∇·f(r2) add(0.0, r2, 1.0, r0, dt/2.0, r1) rhs(t + dt/2.0, r2, r2) # As no subsequent stages depend on the first stage we can # reuse its register to start accumulating the solution with # r1 = r0 + dt/6*r1 + dt/3*r2 add(dt/6.0, r1, 1.0, r0, dt/3.0, r2) # Third stage; here we reuse the r2 register # r2 = r0 + dt/2*r2 # r2 = -∇·f(r2) add(dt/2.0, r2, 1.0, r0) rhs(t + dt/2.0, r2, r2) # Accumulate; r1 = r1 + dt/3*r2 add(1.0, r1, dt/3.0, r2) # Fourth stage; again we reuse r2 # r2 = r0 + dt*r2 # r2 = -∇·f(r2) add(dt, r2, 1.0, r0) rhs(t + dt, r2, r2) # Final accumulation r1 = r1 + dt/6*r2 = u(t + dt) add(1.0, r1, dt/6.0, r2) # Return the index of the bank containing u(t + dt) return r1 class StdRKVdH2RStepper(BaseStdStepper): # Coefficients a = [] b = [] bhat = [] def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Compute the c and error coeffs self.c = [0.0] + [sum(self.b[:i]) + ai for i, ai in enumerate(self.a)] self.e = [b - bh for b, bh in zip(self.b, self.bhat)] self._nstages = len(self.c) @property def _stepper_has_errest(self): return self._controller_needs_errest and len(self.bhat) @property def _stepper_nfevals(self): return len(self.b)*self.nsteps @property def _stepper_nregs(self): return 4 if self._stepper_has_errest else 2 def step(self, t, dt): add, rhs = self._add, self.system.rhs errest = self._stepper_has_errest r1 = self._idxcurr if errest: r2, rold, rerr = set(self._regidx) - {r1} # Save the current solution add(0.0, rold, 1.0, r1) else: r2, = set(self._regidx) - {r1} # Evaluate the stages in the scheme for i in range(self._nstages): # Compute -∇·f rhs(t + self.c[i]*dt, r2 if i > 0 else r1, r2) # Accumulate the error term in rerr if errest: add(1.0 if i > 0 else 0.0, rerr, self.e[i]*dt, r2) # Sum (special-casing the final stage) if i < self._nstages - 1: add(1.0, r1, self.a[i]*dt, r2) add((self.b[i] - self.a[i])*dt, r2, 1.0, r1) else: add(1.0, r1, self.b[i]*dt, r2) # Swap r1, r2 = r2, r1 # Return return (r2, rold, rerr) if errest else r2 class StdRK34Stepper(StdRKVdH2RStepper): stepper_name = 'rk34' a = [ 11847461282814 / 36547543011857, 3943225443063 / 7078155732230, -346793006927 / 4029903576067 ] b = [ 1017324711453 / 9774461848756, 8237718856693 / 13685301971492, 57731312506979 / 19404895981398, -101169746363290 / 37734290219643 ] bhat = [ 15763415370699 / 46270243929542, 514528521746 / 5659431552419, 27030193851939 / 9429696342944, -69544964788955 / 30262026368149 ] @property def _stepper_order(self): return 3 class StdRK45Stepper(StdRKVdH2RStepper): stepper_name = 'rk45' a = [ 970286171893 / 4311952581923, 6584761158862 / 12103376702013, 2251764453980 / 15575788980749, 26877169314380 / 34165994151039 ] b = [ 1153189308089 / 22510343858157, 1772645290293 / 4653164025191, -1672844663538 / 4480602732383, 2114624349019 / 3568978502595, 5198255086312 / 14908931495163 ] bhat = [ 1016888040809 / 7410784769900, 11231460423587 / 58533540763752, -1563879915014 / 6823010717585, 606302364029 / 971179775848, 1097981568119 / 3980877426909 ] @property def _stepper_order(self): return 4 pyfr-1.5.0/pyfr/mpiutil.py000066400000000000000000000037001277740313300155210ustar00rootroot00000000000000# -*- coding: utf-8 -*- import atexit import os import sys def register_finalize_handler(): import mpi4py.rc from mpi4py import MPI # Prevent mpi4py from calling MPI_Finalize mpi4py.rc.finalize = False # Intercept any uncaught exceptions class ExceptHook(object): def __init__(self): self.exception = None self._orig_excepthook = sys.excepthook sys.excepthook = self._excepthook def _excepthook(self, exc_type, exc, *args): self.exception = exc self._orig_excepthook(exc_type, exc, *args) # Register our exception hook excepthook = ExceptHook() def onexit(): if not MPI.Is_initialized() or MPI.Is_finalized(): return # Get the current exception (if any) exc = excepthook.exception # If we are exiting normally then call MPI_Finalize if (MPI.COMM_WORLD.size == 1 or exc is None or isinstance(exc, KeyboardInterrupt) or (isinstance(exc, SystemExit) and exc.code == 0)): MPI.Finalize() # Otherwise forcefully abort else: sys.stderr.flush() MPI.COMM_WORLD.Abort(1) # Register our exit handler atexit.register(onexit) def get_comm_rank_root(): from mpi4py import MPI comm = MPI.COMM_WORLD return comm, comm.rank, 0 def get_local_rank(): envs = ['OMPI_COMM_WORLD_LOCAL_RANK', 'MV2_COMM_WORLD_LOCAL_RANK'] for ev in envs: if ev in os.environ: return int(os.environ[ev]) else: from mpi4py import MPI hostn = MPI.Get_processor_name() grank = MPI.COMM_WORLD.rank lrank = 0 for i, n in enumerate(MPI.COMM_WORLD.allgather(hostn)): if i >= grank: break if hostn == n: lrank += 1 return lrank def get_mpi(attr): from mpi4py import MPI return getattr(MPI, attr.upper()) pyfr-1.5.0/pyfr/nputil.py000066400000000000000000000063461277740313300153620ustar00rootroot00000000000000# -*- coding: utf-8 -*- import ctypes as ct import functools as ft import itertools as it import re import numpy as np def block_diag(arrs): shapes = [a.shape for a in arrs] out = np.zeros(np.sum(shapes, axis=0), dtype=arrs[0].dtype) r, c = 0, 0 for i, (rr, cc) in enumerate(shapes): out[r:r + rr, c:c + cc] = arrs[i] r += rr c += cc return out def clean(origfn=None, tol=1e-10): def cleanfn(fn): @ft.wraps(fn) def newfn(*args, **kwargs): arr = fn(*args, **kwargs).copy() # Flush small elements to zero arr[np.abs(arr) < tol] = 0 # Coalesce similar elements amfl = np.abs(arr.flat) amix = np.argsort(amfl) i, ix = 0, amix[0] for j, jx in enumerate(amix[1:], start=1): if amfl[jx] - amfl[ix] >= tol: if j - i > 1: amfl[amix[i:j]] = np.median(amfl[amix[i:j]]) i, ix = j, jx if i != j: amfl[amix[i:]] = np.median(amfl[amix[i:]]) # Fix up the signs and assign arr.flat = np.copysign(amfl, arr.flat) return arr return newfn return cleanfn(origfn) if origfn else cleanfn _npeval_syms = { '__builtins__': None, 'exp': np.exp, 'log': np.log, 'sin': np.sin, 'asin': np.arcsin, 'cos': np.cos, 'acos': np.arccos, 'tan': np.tan, 'atan': np.arctan, 'atan2': np.arctan2, 'abs': np.abs, 'pow': np.power, 'sqrt': np.sqrt, 'tanh': np.tanh, 'pi': np.pi} def npeval(expr, locals): # Disallow direct exponentiation if '^' in expr or '**' in expr: raise ValueError('Direct exponentiation is not supported; use pow') # Ensure the expression does not contain invalid characters if not re.match(r'[A-Za-z0-9 \t\n\r.,+\-*/%()]+$', expr): raise ValueError('Invalid characters in expression') # Disallow access to object attributes objs = '|'.join(it.chain(_npeval_syms, locals)) if re.search(r'(%s|\))\s*\.' % objs, expr): raise ValueError('Invalid expression') return eval(expr, _npeval_syms, locals) def fuzzysort(arr, idx, dim=0, tol=1e-6): # Extract our dimension and argsort arrd = arr[dim] srtdidx = sorted(idx, key=arrd.__getitem__) i, ix = 0, srtdidx[0] for j, jx in enumerate(srtdidx[1:], start=1): if arrd[jx] - arrd[ix] >= tol: if j - i > 1: srtdidx[i:j] = fuzzysort(arr, srtdidx[i:j], dim + 1, tol) i, ix = j, jx if i != j: srtdidx[i:] = fuzzysort(arr, srtdidx[i:], dim + 1, tol) return srtdidx _ctype_map = { np.int32: 'int', np.uint32: 'unsigned int', np.int64: 'long long', np.uint64: 'unsigned long long', np.float32: 'float', np.float64: 'double'} def npdtype_to_ctype(dtype): return _ctype_map[np.dtype(dtype).type] _ctypestype_map = { np.int32: ct.c_int32, np.uint32: ct.c_uint32, np.int64: ct.c_int64, np.uint64: ct.c_uint64, np.float32: ct.c_float, np.float64: ct.c_double} def npdtype_to_ctypestype(dtype): # Special-case None which otherwise expands to np.float if dtype is None: return None return _ctypestype_map[np.dtype(dtype).type] pyfr-1.5.0/pyfr/partitioners/000077500000000000000000000000001277740313300162075ustar00rootroot00000000000000pyfr-1.5.0/pyfr/partitioners/__init__.py000066400000000000000000000005221277740313300203170ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.partitioners.base import BasePartitioner from pyfr.partitioners.metis import METISPartitioner from pyfr.partitioners.scotch import SCOTCHPartitioner from pyfr.util import subclass_where def get_partitioner(name, *args, **kwargs): return subclass_where(BasePartitioner, name=name)(*args, **kwargs) pyfr-1.5.0/pyfr/partitioners/base.py000066400000000000000000000224641277740313300175030ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import Counter, defaultdict, namedtuple import re import uuid import numpy as np Graph = namedtuple('Graph', ['vtab', 'etab', 'vwts', 'ewts']) class BasePartitioner(object): # Approximate element weightings at each polynomial order elewtsmap = { 1: {'quad': 5, 'tri': 3, 'tet': 3, 'hex': 9, 'pri': 6, 'pyr': 4}, 2: {'quad': 6, 'tri': 3, 'tet': 3, 'hex': 16, 'pri': 8, 'pyr': 5}, 3: {'quad': 6, 'tri': 3, 'tet': 3, 'hex': 24, 'pri': 10, 'pyr': 6}, 4: {'quad': 7, 'tri': 3, 'tet': 3, 'hex': 30, 'pri': 12, 'pyr': 7}, 5: {'quad': 7, 'tri': 3, 'tet': 3, 'hex': 34, 'pri': 13, 'pyr': 7}, 6: {'quad': 8, 'tri': 3, 'tet': 3, 'hex': 38, 'pri': 14, 'pyr': 8} } def __init__(self, partwts, elewts=None, order=None, opts={}): self.partwts = partwts if elewts is not None: self.elewts = elewts elif order is not None: self.elewts = self.elewtsmap[min(order, max(self.elewtsmap))] else: raise ValueError('Must provide either elewts or order') # Parse the options list self.opts = {} for k, v in dict(self.dflt_opts, **opts).items(): if k in self.int_opts: self.opts[k] = int(v) elif k in self.enum_opts: self.opts[k] = self.enum_opts[k][v] else: raise ValueError('Invalid partitioner option') def _combine_mesh_parts(self, mesh): # Get the per-partition element counts pinf = mesh.partition_info('spt') # Shape points and element number offsets spts = defaultdict(list) offs = defaultdict(dict) for en, pn in pinf.items(): for i, n in enumerate(pn): if n > 0: offs[en][i] = sum(s.shape[1] for s in spts[en]) spts[en].append(mesh['spt_{0}_p{1}'.format(en, i)]) def offset_con(con, pr): con = con.copy().astype('U4,i4,i1,i1') for en, pn in pinf.items(): if pn[pr] > 0: con['f1'][np.where(con['f0'] == en)] += offs[en][pr] return con # Connectivity intcon, mpicon, bccon = [], {}, defaultdict(list) for f in mesh: mi = re.match(r'con_p(\d+)$', f) mm = re.match(r'con_p(\d+)p(\d+)$', f) bc = re.match(r'bcon_(.+?)_p(\d+)$', f) if mi: intcon.append(offset_con(mesh[f], int(mi.group(1)))) elif mm: l, r = int(mm.group(1)), int(mm.group(2)) lcon = offset_con(mesh[f], l) if (r, l) in mpicon: rcon = mpicon.pop((r, l)) intcon.append(np.vstack([lcon, rcon])) else: mpicon[l, r] = lcon elif bc: name, l = bc.group(1), int(bc.group(2)) bccon[name].append(offset_con(mesh[f], l)) # Output data type dtype = 'S4,i4,i1,i1' # Concatenate these arrays to from the new mesh newmesh = {'con_p0': np.hstack(intcon).astype(dtype)} for k, v in spts.items(): newmesh['spt_{0}_p0'.format(k)] = np.hstack(v) for k, v in bccon.items(): newmesh['bcon_{0}_p0'.format(k)] = np.hstack(v).astype(dtype) return newmesh def _combine_soln_parts(self, soln): newsoln = defaultdict(list) for f, (en, shape) in soln.array_info('soln').items(): newsoln['soln_{0}_p0'.format(en)].append(soln[f]) newsoln = {k: np.dstack(v) for k, v in newsoln.items()} newsoln['config'] = soln['config'] newsoln['stats'] = soln['stats'] return newsoln def _construct_graph(self, mesh): # Edges of the dual graph con = mesh['con_p0'].astype('U4,i4,i1,i1') con = np.hstack([con, con[::-1]]) # Sort by the left hand side idx = np.lexsort([con['f0'][0], con['f1'][0]]) con = con[:, idx] # Left and right hand side element types/indicies lhs, rhs = con[['f0', 'f1']] # Compute vertex offsets vtab = np.where(lhs[1:] != lhs[:-1])[0] vtab = np.concatenate(([0], vtab + 1, [len(lhs)])) # Compute the element type/index to vertex number map vetimap = [tuple(lhs[i]) for i in vtab[:-1]] etivmap = {k: v for v, k in enumerate(vetimap)} # Prepare the list of edges for each vertex etab = np.array([etivmap[tuple(r)] for r in rhs]) # Prepare the list of vertex and edge weights vwts = np.array([self.elewts[t] for t, i in vetimap]) ewts = np.ones_like(etab) return Graph(vtab, etab, vwts, ewts), vetimap def _partition_graph(self, graph, partwts): pass def _partition_spts(self, mesh, vparts, vetimap): # Get the shape point arrays from the mesh spt_p0 = {} for f in mesh: if f.startswith('spt'): spt_p0[f.split('_')[1]] = mesh[f] # Partition the shape points spt_px = defaultdict(list) for (etype, eidxg), part in zip(vetimap, vparts): spt_px[etype, part].append(spt_p0[etype][:, eidxg, :]) # Stack return {'spt_{0}_p{1}'.format(*k): np.array(v).swapaxes(0, 1) for k, v in spt_px.items()} def _partition_soln(self, soln, vparts, vetimap): # Get the solution arrays from the file soln_p0 = {} for f in soln: if f.startswith('soln'): soln_p0[f.split('_')[1]] = soln[f] # Partition the solutions soln_px = defaultdict(list) for (etype, eidxg), part in zip(vetimap, vparts): soln_px[etype, part].append(soln_p0[etype][..., eidxg]) # Stack return {'soln_{0}_p{1}'.format(*k): np.dstack(v) for k, v in soln_px.items()} def _partition_con(self, mesh, vparts, vetimap): con_px = defaultdict(list) con_pxpy = defaultdict(list) bcon_px = defaultdict(list) # Global-to-local element index map eleglmap = defaultdict(list) pcounter = Counter() for (etype, eidxg), part in zip(vetimap, vparts): eleglmap[etype].append((part, pcounter[etype, part])) pcounter[etype, part] += 1 # Generate the face connectivity for l, r in zip(*mesh['con_p0'].astype('U4,i4,i1,i1')): letype, leidxg, lfidx, lflags = l retype, reidxg, rfidx, rflags = r lpart, leidxl = eleglmap[letype][leidxg] rpart, reidxl = eleglmap[retype][reidxg] conl = (letype, leidxl, lfidx, lflags) conr = (retype, reidxl, rfidx, rflags) if lpart == rpart: con_px[lpart].append([conl, conr]) else: con_pxpy[lpart, rpart].append(conl) con_pxpy[rpart, lpart].append(conr) # Generate boundary conditions for f in mesh: m = re.match('bcon_(.+?)_p0$', f) if m: lhs = mesh[f].astype('U4,i4,i1,i1') for lpetype, leidxg, lfidx, lflags in lhs: lpart, leidxl = eleglmap[lpetype][leidxg] conl = (lpetype, leidxl, lfidx, lflags) bcon_px[m.group(1), lpart].append(conl) # Output data type dtype = 'S4,i4,i1,i1' # Output ret = {} for k, v in con_px.items(): ret['con_p{0}'.format(k)] = np.array(v, dtype=dtype).T for k, v in con_pxpy.items(): ret['con_p{0}p{1}'.format(*k)] = np.array(v, dtype=dtype) for k, v in bcon_px.items(): ret['bcon_{0}_p{1}'.format(*k)] = np.array(v, dtype=dtype) return ret def partition(self, mesh): # Extract the current UUID from the mesh curruuid = mesh['mesh_uuid'] # Combine any pre-existing parititons mesh = self._combine_mesh_parts(mesh) # Perform the partitioning if len(self.partwts) > 1: # Obtain the dual graph for this mesh graph, vetimap = self._construct_graph(mesh) # Partition the graph vparts = self._partition_graph(graph, self.partwts) # Partition the connectivity portion of the mesh newmesh = self._partition_con(mesh, vparts, vetimap) # Handle the shape points newmesh.update(self._partition_spts(mesh, vparts, vetimap)) # Short circuit else: newmesh = mesh # Generate a new UUID for the mesh newmesh['mesh_uuid'] = newuuid = str(uuid.uuid4()) # Build the solution converter def partition_soln(soln): # Check the UUID if curruuid != soln['mesh_uuid']: raise ValueError('Mismatched solution/mesh') # Combine any pre-existing parititons soln = self._combine_soln_parts(soln) # Partition if len(self.partwts) > 1: newsoln = self._partition_soln(soln, vparts, vetimap) else: newsoln = soln # Handle the metadata newsoln['config'] = soln['config'] newsoln['stats'] = soln['stats'] newsoln['mesh_uuid'] = newuuid return newsoln return newmesh, partition_soln pyfr-1.5.0/pyfr/partitioners/metis.py000066400000000000000000000140761277740313300177120ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ctypes import (POINTER, byref, c_double, c_int32, c_int64, c_float, c_void_p) import numpy as np from pyfr.ctypesutil import load_library from pyfr.partitioners.base import BasePartitioner from pyfr.util import silence # Possible METIS exception types METISError = type('METISError', (Exception,), {}) METISErrorInput = type('METISErrorInput', (METISError,), {}) METISErrorMemory = type('METISErrorMemory', (METISError,), {}) class METISWrappers(object): # Possible return codes _statuses = { -2: METISErrorInput, -3: METISErrorMemory, -4: METISError } # Constants METIS_NOPTIONS = 40 METIS_OPTION_PTYPE = 0 METIS_OPTION_CTYPE = 2 METIS_OPTION_IPTYPE = 3 METIS_OPTION_RTYPE = 4 METIS_OPTION_NITER = 6 METIS_OPTION_NCUTS = 7 METIS_OPTION_NSEPS = 15 METIS_OPTION_UFACTOR = 16 METIS_OPTION_MINCONN = 9 def __init__(self): lib = load_library('metis') # Try to determine the data types METIS was compiled with with silence(): self._probe_types(lib) # METIS_SetDefaultOptions self.METIS_SetDefaultOptions = lib.METIS_SetDefaultOptions self.METIS_SetDefaultOptions.argtypes = [c_void_p] self.METIS_SetDefaultOptions.errcheck = self._errcheck # METIS_PartGraphKway self.METIS_PartGraphKway = lib.METIS_PartGraphKway self.METIS_PartGraphKway.argtypes = [ POINTER(self.metis_int), POINTER(self.metis_int), c_void_p, c_void_p, c_void_p, c_void_p, c_void_p, POINTER(self.metis_int), c_void_p, c_void_p, c_void_p, POINTER(self.metis_int), c_void_p ] self.METIS_PartGraphKway.errcheck = self._errcheck # METIS_PartGraphRecursive self.METIS_PartGraphRecursive = lib.METIS_PartGraphRecursive self.METIS_PartGraphRecursive.argtypes = [ POINTER(self.metis_int), POINTER(self.metis_int), c_void_p, c_void_p, c_void_p, c_void_p, c_void_p, POINTER(self.metis_int), c_void_p, c_void_p, c_void_p, POINTER(self.metis_int), c_void_p ] self.METIS_PartGraphRecursive.errcheck = self._errcheck def _probe_types(self, lib): # Attempt to determine the integer type used by METIS opts = np.arange(0, self.METIS_NOPTIONS, dtype=np.int64) lib.METIS_SetDefaultOptions(opts.ctypes) # If the last element was set then assume 64-bit ints if opts[-1] != self.METIS_NOPTIONS - 1: self.metis_int = metis_int = c_int64 self.metis_int_np = metis_int_np = np.int64 # Otherwise go with 32-bits else: self.metis_int = metis_int = c_int32 self.metis_int_np = metis_int_np = np.int32 intref = lambda v=0: byref(metis_int(v)) # Attempt to partition a two vertex graph into two partitions vtab = np.array([0, 1, 2], dtype=metis_int_np) etab = np.array([1, 0], dtype=metis_int_np) pwts = np.array([0.5, 0.5], dtype=np.float64) prts = np.empty(len(vtab) - 1, dtype=metis_int_np) ret = lib.METIS_PartGraphKway( intref(len(vtab) - 1), intref(1), vtab.ctypes, etab.ctypes, None, None, None, intref(len(pwts)), pwts.ctypes, None, None, intref(), prts.ctypes ) # If successful then assume METIS is using 64-bit doubles if ret == 1: self.metis_flt, self.metis_flt_np = c_double, np.float64 # Else if we are getting a parameter error assume 32-bit floats elif ret == -2: self.metis_flt, self.metis_flt_np = c_float, np.float32 # Other, unknown error else: raise METISError def _errcheck(self, status, fn, args): if status != 1: try: raise self._statuses[status] except KeyError: raise METISError class METISPartitioner(BasePartitioner): name = 'metis' # Integer options int_opts = {'niter', 'ncuts', 'nseps', 'ufactor'} # Enumeration options enum_opts = { 'ptype': {'rb': 0, 'kway': 1}, 'ctype': {'rm': 0, 'shem': 1}, 'iptype': {'grow': 0, 'random': 1, 'edge': 2, 'node': 3}, 'rtype': {'fm': 0, 'greedy': 1, 'sep2sided': 3, 'sep1sided': 4}, 'minconn': {'false': 0, 'true': 1} } # Default options dflt_opts = {'ufactor': 10, 'ptype': 'rb', 'minconn': 'true'} def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Load METIS self._wrappers = METISWrappers() def _partition_graph(self, graph, partwts): w = self._wrappers # Type conversion vtab = np.asanyarray(graph.vtab, dtype=w.metis_int_np) etab = np.asanyarray(graph.etab, dtype=w.metis_int_np) vwts = np.asanyarray(graph.vwts, dtype=w.metis_int_np) ewts = np.asanyarray(graph.ewts, dtype=w.metis_int_np) partwts = np.array(partwts, dtype=w.metis_flt_np) # Normalise the weights partwts /= np.sum(partwts) # Allocate the partition array parts = np.empty(len(vtab) - 1, dtype=w.metis_int_np) # Allocate our options array opts = np.empty(w.METIS_NOPTIONS, dtype=w.metis_int_np) w.METIS_SetDefaultOptions(opts.ctypes) # Process our options for k, v in self.opts.items(): oidx = getattr(w, 'METIS_OPTION_' + k.upper()) opts[oidx] = v # Select the partitioning function if self.opts['ptype'] == self.enum_opts['ptype']['rb']: part_graph_fn = w.METIS_PartGraphRecursive else: part_graph_fn = w.METIS_PartGraphKway # Integer parameters nvert, nconst = w.metis_int(len(vtab) - 1), w.metis_int(1) npart, objval = w.metis_int(len(partwts)), w.metis_int() # Partition part_graph_fn( nvert, nconst, vtab.ctypes, etab.ctypes, vwts.ctypes, None, ewts.ctypes, npart, partwts.ctypes, None, opts.ctypes, objval, parts.ctypes ) return parts pyfr-1.5.0/pyfr/partitioners/scotch.py000066400000000000000000000117521277740313300200520ustar00rootroot00000000000000# -*- coding: utf-8 -*- from ctypes import POINTER, c_int, c_double, c_void_p import numpy as np from pyfr.ctypesutil import load_library from pyfr.partitioners.base import BasePartitioner class SCOTCHWrappers(object): def __init__(self): lib = load_library('scotch') # Types self.SCOTCH_Arch = SCOTCH_Arch = c_double*128 self.SCOTCH_Graph = SCOTCH_Graph = c_double*128 self.SCOTCH_Strat = SCOTCH_Strat = c_double*128 # SCOTCH_archInit self.SCOTCH_archInit = lib.SCOTCH_archInit self.SCOTCH_archInit.argtypes = [POINTER(SCOTCH_Arch)] self.SCOTCH_archInit.errcheck = self._errcheck # SCOTCH_archExit self.SCOTCH_archExit = lib.SCOTCH_archExit self.SCOTCH_archExit.argtypes = [POINTER(SCOTCH_Arch)] self.SCOTCH_archExit.restype = None # SCOTCH_archCmpltw self.SCOTCH_archCmpltw = lib.SCOTCH_archCmpltw self.SCOTCH_archCmpltw.argtypes = [ POINTER(SCOTCH_Arch), c_int, c_void_p ] self.SCOTCH_archCmpltw.errcheck = self._errcheck # SCOTCH_graphInit self.SCOTCH_graphInit = lib.SCOTCH_graphInit self.SCOTCH_graphInit.argtypes = [POINTER(SCOTCH_Graph)] self.SCOTCH_graphInit.errcheck = self._errcheck # SCOTCH_graphExit self.SCOTCH_graphExit = lib.SCOTCH_graphExit self.SCOTCH_graphExit.argtypes = [POINTER(SCOTCH_Graph)] self.SCOTCH_graphExit.restype = None # SCOTCH_graphBuild self.SCOTCH_graphBuild = lib.SCOTCH_graphBuild self.SCOTCH_graphBuild.argtypes = [ POINTER(SCOTCH_Graph), c_int, c_int, c_void_p, c_void_p, c_void_p, c_void_p, c_int, c_void_p, c_void_p ] self.SCOTCH_graphBuild.errcheck = self._errcheck # SCOTCH_graphPart self.SCOTCH_graphMap = lib.SCOTCH_graphMap self.SCOTCH_graphMap.argtypes = [ POINTER(SCOTCH_Graph), POINTER(SCOTCH_Arch), POINTER(SCOTCH_Strat), c_void_p ] self.SCOTCH_graphMap.errcheck = self._errcheck # SCOTCH_stratInit self.SCOTCH_stratInit = lib.SCOTCH_stratInit self.SCOTCH_stratInit.argtypes = [POINTER(SCOTCH_Strat)] self.SCOTCH_stratInit.errcheck = self._errcheck # SCOTCH_stratExit self.SCOTCH_stratExit = lib.SCOTCH_stratExit self.SCOTCH_stratExit.argtypes = [POINTER(SCOTCH_Strat)] self.SCOTCH_stratExit.restype = None # SCOTCH_stratGraphMapBuild self.SCOTCH_stratGraphMapBuild = lib.SCOTCH_stratGraphMapBuild self.SCOTCH_stratGraphMapBuild.argtypes = [ POINTER(SCOTCH_Strat), c_int, c_int, c_double ] self.SCOTCH_stratGraphMapBuild.errcheck = self._errcheck def _errcheck(self, status, fn, args): if status != 0: raise RuntimeError('Scotch error') class SCOTCHPartitioner(BasePartitioner): name = 'scotch' # Interger options int_opts = {'ufactor'} # Enumeration options enum_opts = { 'strat': {'default': 0, 'quality': 1, 'speed': 2, 'balance': 4} } # Default options dflt_opts = {'ufactor': 10, 'strat': 'default'} def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # Load SCOTCH self._wrappers = SCOTCHWrappers() def _partition_graph(self, graph, partwts): w = self._wrappers # Type conversion vtab = np.asanyarray(graph.vtab, dtype=np.int32) etab = np.asanyarray(graph.etab, dtype=np.int32) vwts = np.asanyarray(graph.vwts, dtype=np.int32) ewts = np.asanyarray(graph.ewts, dtype=np.int32) partwts = np.asanyarray(partwts, dtype=np.int32) # Output partition array parts = np.empty(len(vtab) - 1, dtype=np.int32) # Allocate arch = w.SCOTCH_Arch() graph = w.SCOTCH_Graph() strat = w.SCOTCH_Strat() try: # Initialise w.SCOTCH_archInit(arch) w.SCOTCH_graphInit(graph) w.SCOTCH_stratInit(strat) # Apply the partition weights w.SCOTCH_archCmpltw(arch, len(partwts), partwts.ctypes) # Construct the graph w.SCOTCH_graphBuild( graph, 0, len(vtab) - 1, vtab.ctypes, None, vwts.ctypes, None, len(etab), etab.ctypes, ewts.ctypes ) # Permitted load imbalance ratio balrat = self.opts['ufactor'] / 1000.0 # Partitioning stratergy w.SCOTCH_stratGraphMapBuild( strat, self.opts['strat'], len(partwts), balrat ) # Perform the partitioning w.SCOTCH_graphMap(graph, arch, strat, parts.ctypes) finally: if any(v != 0.0 for v in arch): w.SCOTCH_archExit(arch) if any(v != 0.0 for v in graph): w.SCOTCH_graphExit(graph) if any(v != 0.0 for v in strat): w.SCOTCH_stratExit(strat) return parts pyfr-1.5.0/pyfr/plugins/000077500000000000000000000000001277740313300151455ustar00rootroot00000000000000pyfr-1.5.0/pyfr/plugins/__init__.py000066400000000000000000000010351277740313300172550ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.plugins.base import BasePlugin from pyfr.plugins.dtstats import DtStatsPlugin from pyfr.plugins.fluidforce import FluidForcePlugin from pyfr.plugins.nancheck import NaNCheckPlugin from pyfr.plugins.residual import ResidualPlugin from pyfr.plugins.sampler import SamplerPlugin from pyfr.plugins.tavg import TavgPlugin from pyfr.plugins.writer import WriterPlugin from pyfr.util import subclass_where def get_plugin(name, *args, **kwargs): return subclass_where(BasePlugin, name=name)(*args, **kwargs) pyfr-1.5.0/pyfr/plugins/base.py000066400000000000000000000051501277740313300164320ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod import os import shlex from pytools import prefork from pyfr.mpiutil import get_comm_rank_root def init_csv(cfg, cfgsect, header, *, filekey='file', headerkey='header'): # Determine the file path fname = cfg.get(cfgsect, filekey) # Append the '.csv' extension if not fname.endswith('.csv'): fname += '.csv' # Open for appending outf = open(fname, 'a') # Output a header if required if os.path.getsize(fname) == 0 and cfg.getbool(cfgsect, headerkey, True): print(header, file=outf) # Return the file return outf class BasePlugin(object, metaclass=ABCMeta): name = None systems = None @abstractmethod def __init__(self, intg, cfgsect, suffix=None): self.cfg = intg.cfg self.cfgsect = cfgsect self.suffix = suffix self.ndims = intg.system.ndims self.nvars = intg.system.nvars # Tolerance for time comparisons self.tol = 5*intg.dtmin # Initalise our post-action (if any) self.postact = None self.postactaid = None self.postactmode = None if self.cfg.hasopt(cfgsect, 'post-action'): self.postact = self.cfg.getpath(cfgsect, 'post-action', abs=False) self.postactmode = self.cfg.get(cfgsect, 'post-action-mode', 'blocking') if self.postactmode not in {'blocking', 'non-blocking'}: raise ValueError('Invalid post action mode') # Check that we support this particular system if not ('*' in self.systems or intg.system.name in self.systems): raise RuntimeError('System {0} not supported by plugin {1}' .format(intg.system.name, self.name)) def __del__(self): if self.postactaid is not None: prefork.wait(self.postactaid) def _invoke_postaction(self, **kwargs): comm, rank, root = get_comm_rank_root() # If we have a post-action and are the root rank then fire it if rank == root and self.postact: # If a post-action is currently running then wait for it if self.postactaid is not None: prefork.wait(self.postactaid) # Prepare the command line cmdline = shlex.split(self.postact.format(**kwargs)) # Invoke if self.postactmode == 'blocking': prefork.call(cmdline) else: self.postactaid = prefork.call_async(cmdline) @abstractmethod def __call__(self, intg): pass pyfr-1.5.0/pyfr/plugins/dtstats.py000066400000000000000000000026251277740313300172120ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.mpiutil import get_comm_rank_root from pyfr.plugins.base import BasePlugin, init_csv class DtStatsPlugin(BasePlugin): name = 'dtstats' systems = ['*'] def __init__(self, intg, cfgsect, prefix): super().__init__(intg, cfgsect, prefix) self.flushsteps = self.cfg.getint(self.cfgsect, 'flushsteps', 500) self.count = 0 self.stats = [] self.tprev = intg.tcurr # MPI info comm, rank, root = get_comm_rank_root() # The root rank needs to open the output file if rank == root: self.outf = init_csv(self.cfg, cfgsect, 'n,t,dt,action,error') else: self.outf = None def __call__(self, intg): # Process the sequence of rejected/accepted steps for i, (dt, act, err) in enumerate(intg.stepinfo, start=self.count): self.stats.append((i, self.tprev, dt, act, err)) # Update the total step count and save the current time self.count += len(intg.stepinfo) self.tprev = intg.tcurr # If we're the root rank then output if self.outf: for s in self.stats: print(','.join(str(c) for c in s), file=self.outf) # Periodically flush to disk if intg.nacptsteps % self.flushsteps == 0: self.outf.flush() # Reset the stats self.stats = [] pyfr-1.5.0/pyfr/plugins/fluidforce.py000066400000000000000000000155021277740313300176440ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import defaultdict import numpy as np from pyfr.mpiutil import get_comm_rank_root, get_mpi from pyfr.plugins.base import BasePlugin, init_csv class FluidForcePlugin(BasePlugin): name = 'fluidforce' systems = ['euler', 'navier-stokes'] def __init__(self, intg, cfgsect, suffix): super().__init__(intg, cfgsect, suffix) comm, rank, root = get_comm_rank_root() # Output frequency self.nsteps = self.cfg.getint(cfgsect, 'nsteps') # Check if we need to compute viscous force self._viscous = intg.system.name == 'navier-stokes' # Viscous correction self._viscorr = self.cfg.get('solver', 'viscosity-correction', 'none') # Constant variables self._constants = self.cfg.items_as('constants', float) # Underlying elements class self.elementscls = intg.system.elementscls # Boundary to integrate over bc = 'bcon_{0}_p{1}'.format(suffix, intg.rallocs.prank) # Get the mesh and elements mesh, elemap = intg.system.mesh, intg.system.ele_map # See which ranks have the boundary bcranks = comm.gather(bc in mesh, root=root) # The root rank needs to open the output file if rank == root: if not any(bcranks): raise RuntimeError('Boundary {0} does not exist' .format(suffix)) # CSV header header = ['t', 'px', 'py', 'pz'][:self.ndims + 1] if self._viscous: header += ['vx', 'vy', 'vz'][:self.ndims] # Open self.outf = init_csv(self.cfg, cfgsect, ','.join(header)) # Interpolation matrices and quadrature weights self._m0 = m0 = {} self._qwts = qwts = defaultdict(list) if self._viscous: self._m4 = m4 = {} rcpjact = {} # If we have the boundary then process the interface if bc in mesh: # Element indices and associated face normals eidxs = defaultdict(list) norms = defaultdict(list) for etype, eidx, fidx, flags in mesh[bc].astype('U4,i4,i1,i1'): eles = elemap[etype] if (etype, fidx) not in m0: facefpts = eles.basis.facefpts[fidx] m0[etype, fidx] = eles.basis.m0[facefpts] qwts[etype, fidx] = eles.basis.fpts_wts[facefpts] if self._viscous and etype not in m4: m4[etype] = eles.basis.m4 # Get the smats at the solution points smat = eles.smat_at_np('upts').transpose(2, 0, 1, 3) # Get |J|^-1 at the solution points rcpdjac = eles.rcpdjac_at_np('upts') # Product to give J^-T at the solution points rcpjact[etype] = smat*rcpdjac # Unit physical normals and their magnitudes (including |J|) npn = eles.get_norm_pnorms(eidx, fidx) mpn = eles.get_mag_pnorms(eidx, fidx) eidxs[etype, fidx].append(eidx) norms[etype, fidx].append(mpn[:, None]*npn) self._eidxs = {k: np.array(v) for k, v in eidxs.items()} self._norms = {k: np.array(v) for k, v in norms.items()} if self._viscous: self._rcpjact = {k: rcpjact[k[0]][..., v] for k, v in self._eidxs.items()} def __call__(self, intg): # Return if no output is due if intg.nacptsteps % self.nsteps: return # MPI info comm, rank, root = get_comm_rank_root() # Solution matrices indexed by element type solns = dict(zip(intg.system.ele_types, intg.soln)) ndims, nvars = self.ndims, self.nvars # Force vector f = np.zeros(2*ndims if self._viscous else ndims) for etype, fidx in self._m0: # Get the interpolation operator m0 = self._m0[etype, fidx] nfpts, nupts = m0.shape # Extract the relevant elements from the solution uupts = solns[etype][..., self._eidxs[etype, fidx]] # Interpolate to the face ufpts = np.dot(m0, uupts.reshape(nupts, -1)) ufpts = ufpts.reshape(nfpts, nvars, -1) ufpts = ufpts.swapaxes(0, 1) # Compute the pressure p = self.elementscls.con_to_pri(ufpts, self.cfg)[-1] # Get the quadrature weights and normal vectors qwts = self._qwts[etype, fidx] norms = self._norms[etype, fidx] # Do the quadrature f[:ndims] += np.einsum('i...,ij,jik', qwts, p, norms) if self._viscous: # Get operator and J^-T matrix m4 = self._m4[etype] rcpjact = self._rcpjact[etype, fidx] # Transformed gradient at solution points tduupts = np.dot(m4, uupts.reshape(nupts, -1)) tduupts = tduupts.reshape(ndims, nupts, nvars, -1) # Physical gradient at solution points duupts = np.einsum('ijkl,jkml->ikml', rcpjact, tduupts) duupts = duupts.reshape(ndims, nupts, -1) # Interpolate gradient to flux points dufpts = np.array([np.dot(m0, du) for du in duupts]) dufpts = dufpts.reshape(ndims, nfpts, nvars, -1) dufpts = dufpts.swapaxes(1, 2) # Viscous stress vis = self.stress_tensor(ufpts, dufpts) # Do the quadrature f[ndims:] += np.einsum('i...,klij,jil', qwts, vis, norms) # Reduce and output if we're the root rank if rank != root: comm.Reduce(f, None, op=get_mpi('sum'), root=root) else: comm.Reduce(get_mpi('in_place'), f, op=get_mpi('sum'), root=root) # Build the row row = [intg.tcurr] + f.tolist() # Write print(','.join(str(r) for r in row), file=self.outf) # Flush to disk self.outf.flush() def stress_tensor(self, u, du): c = self._constants # Density, energy rho, E = u[0], u[-1] # Gradient of density and momentum gradrho, gradrhou = du[:, 0], du[:, 1:-1] # Gradient of velocity gradu = (gradrhou - gradrho[:, None]*u[None, 1:-1]/rho) / rho # Bulk tensor bulk = np.eye(self.ndims)[:, :, None, None]*np.trace(gradu) # Viscosity mu = c['mu'] if self._viscorr == 'sutherland': cpT = c['gamma']*(E/rho - 0.5*np.sum(u[1:-1]**2, axis=0)) Trat = cpT/c['cpTref'] mu *= (c['cpTref'] + c['cpTs'])*Trat**1.5 / (cpT + c['cpTs']) return -mu*(gradu + gradu.swapaxes(0, 1) - 2/3*bulk) pyfr-1.5.0/pyfr/plugins/nancheck.py000066400000000000000000000010671277740313300172750ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.plugins.base import BasePlugin class NaNCheckPlugin(BasePlugin): name = 'nancheck' systems = ['*'] def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.nsteps = self.cfg.getint(self.cfgsect, 'nsteps') def __call__(self, intg): if intg.nacptsteps % self.nsteps == 0: if any(np.isnan(np.sum(s)) for s in intg.soln): raise RuntimeError('NaNs detected at t = {0}' .format(intg.tcurr)) pyfr-1.5.0/pyfr/plugins/residual.py000066400000000000000000000041431277740313300173310ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.mpiutil import get_comm_rank_root, get_mpi from pyfr.plugins.base import BasePlugin, init_csv class ResidualPlugin(BasePlugin): name = 'residual' systems = ['*'] def __init__(self, intg, cfgsect, suffix): super().__init__(intg, cfgsect, suffix) comm, rank, root = get_comm_rank_root() # Output frequency self.nsteps = self.cfg.getint(cfgsect, 'nsteps') # The root rank needs to open the output file if rank == root: header = ['t'] + intg.system.elementscls.convarmap[self.ndims] # Open self.outf = init_csv(self.cfg, cfgsect, ','.join(header)) # Call ourself in case output is needed after the first step self(intg) def __call__(self, intg): # If an output is due this step if intg.nacptsteps % self.nsteps == 0 and intg.nacptsteps: # MPI info comm, rank, root = get_comm_rank_root() # Previous and current solution prev = self._prev curr = intg.soln # Square of the residual vector for each variable resid = sum(np.linalg.norm(p - c, axis=(0, 2))**2 for p, c in zip(prev, curr)) # Reduce and, if we are the root rank, output if rank != root: comm.Reduce(resid, None, op=get_mpi('sum'), root=root) else: comm.Reduce(get_mpi('in_place'), resid, op=get_mpi('sum'), root=root) # Normalise resid = np.sqrt(resid) / (intg.tcurr - self._tprev) # Build the row row = [intg.tcurr] + resid.tolist() # Write print(','.join(str(r) for r in row), file=self.outf) # Flush to disk self.outf.flush() del self._prev, self._tprev # If an output is due next step if (intg.nacptsteps + 1) % self.nsteps == 0: self._prev = [s.copy() for s in intg.soln] self._tprev = intg.tcurr pyfr-1.5.0/pyfr/plugins/sampler.py000066400000000000000000000123501277740313300171630ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.mpiutil import get_comm_rank_root, get_mpi from pyfr.plugins.base import BasePlugin, init_csv def _closest_upts_bf(etypes, eupts, pts): for p in pts: # Compute the distances between each point and p dists = [np.linalg.norm(e - p, axis=2) for e in eupts] # Get the index of the closest point to p for each element type amins = [np.unravel_index(np.argmin(d), d.shape) for d in dists] # Dereference to get the actual distances and locations dmins = [d[a] for d, a in zip(dists, amins)] plocs = [e[a] for e, a in zip(eupts, amins)] # Find the minimum across all element types yield min(zip(dmins, plocs, etypes, amins)) def _closest_upts_kd(etypes, eupts, pts): from scipy.spatial import cKDTree # Flatten the physical location arrays feupts = [e.reshape(-1, e.shape[-1]) for e in eupts] # For each element type construct a KD-tree of the upt locations trees = [cKDTree(f) for f in feupts] for p in pts: # Query the distance/index of the closest upt to p dmins, amins = zip(*[t.query(p) for t in trees]) # Unravel the indices amins = [np.unravel_index(i, e.shape[:2]) for i, e in zip(amins, eupts)] # Dereference to obtain the precise locations plocs = [e[a] for e, a in zip(eupts, amins)] # Reduce across element types yield min(zip(dmins, plocs, etypes, amins)) def _closest_upts(etypes, eupts, pts): try: # Attempt to use a KD-tree based approach yield from _closest_upts_kd(etypes, eupts, pts) except ImportError: # Otherwise fall back to brute force yield from _closest_upts_bf(etypes, eupts, pts) class SamplerPlugin(BasePlugin): name = 'sampler' systems = ['*'] def __init__(self, intg, cfgsect, suffix): super().__init__(intg, cfgsect, suffix) # Underlying elements class self.elementscls = intg.system.elementscls # Output frequency self.nsteps = self.cfg.getint(cfgsect, 'nsteps') # List of points to be sampled and format self.pts = self.cfg.getliteral(cfgsect, 'samp-pts') self.fmt = self.cfg.get(cfgsect, 'format', 'primitive') # MPI info comm, rank, root = get_comm_rank_root() # MPI rank responsible for each point and rank-indexed info self._ptsrank = ptsrank = [] self._ptsinfo = ptsinfo = [[] for i in range(comm.size)] # Physical location of the solution points plocs = [p.swapaxes(1, 2) for p in intg.system.ele_ploc_upts] # Locate the closest solution points in our partition closest = _closest_upts(intg.system.ele_types, plocs, self.pts) # Process these points for cp in closest: # Reduce cp over all partitions mcp, mrank = comm.allreduce((cp, rank), op=get_mpi('minloc')) # Store the rank responsible along with the info ptsrank.append(mrank) ptsinfo[mrank].append(mcp[1:]) # If we're the root rank then open the output file if rank == root: self.outf = init_csv(self.cfg, cfgsect, self._header) @property def _header(self): colnames = ['t'] + ['x', 'y', 'z'][:self.ndims] colnames += ['prank', 'etype', 'uidx', 'eidx'] if self.fmt == 'primitive': colnames += self.elementscls.privarmap[self.ndims] else: colnames += self.elementscls.convarmap[self.ndims] return ','.join(colnames) def _process_samples(self, samps): samps = np.array(samps) # If necessary then convert to primitive form if self.fmt == 'primitive' and samps.size: samps = self.elementscls.con_to_pri(samps.T, self.cfg) samps = np.array(samps).T return samps.tolist() def __call__(self, intg): # Return if no output is due if intg.nacptsteps % self.nsteps: return # MPI info comm, rank, root = get_comm_rank_root() # Solution matrices indexed by element type solns = dict(zip(intg.system.ele_types, intg.soln)) # Points we're responsible for sampling ourpts = self._ptsinfo[comm.rank] # Sample the solution matrices at these points samples = [solns[et][ui, :, ei] for _, et, (ui, ei) in ourpts] samples = self._process_samples(samples) # Gather to the root rank to give a list of points per rank samples = comm.gather(samples, root=root) # If we're the root rank then output if rank == root: # Collate iters = [zip(pi, sp) for pi, sp in zip(self._ptsinfo, samples)] for mrank in self._ptsrank: # Unpack (ploc, etype, idx), samp = next(iters[mrank]) # Determine the physical mesh rank prank = intg.rallocs.mprankmap[mrank] # Prepare the output row row = [[intg.tcurr], ploc, [prank, etype], idx, samp] row = ','.join(str(r) for rp in row for r in rp) # Write print(row, file=self.outf) # Flush to disk self.outf.flush() pyfr-1.5.0/pyfr/plugins/tavg.py000066400000000000000000000073451277740313300164710ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.inifile import Inifile from pyfr.plugins.base import BasePlugin from pyfr.nputil import npeval from pyfr.writers.native import NativeWriter class TavgPlugin(BasePlugin): name = 'tavg' systems = ['*'] def __init__(self, intg, cfgsect, suffix=None): super().__init__(intg, cfgsect, suffix) # Underlying elements class self.elementscls = intg.system.elementscls # Expressions to time average c = self.cfg.items_as('constants', float) self.exprs = [(k, self.cfg.getexpr(cfgsect, k, subs=c)) for k in self.cfg.items(cfgsect) if k.startswith('avg-')] # Save a reference to the physical solution point locations self.plocs = intg.system.ele_ploc_upts # Output file directory, base name, and writer basedir = self.cfg.getpath(cfgsect, 'basedir', '.') basename = self.cfg.get(cfgsect, 'basename') self._writer = NativeWriter(intg, len(self.exprs), basedir, basename, prefix='tavg') # Time averaging parameters self.dtout = self.cfg.getfloat(cfgsect, 'dt-out') self.nsteps = self.cfg.getint(cfgsect, 'nsteps') self.tout = intg.tcurr + self.dtout # Register our output times with the integrator intg.call_plugin_dt(self.dtout) # Time averaging state self.prevt = intg.tcurr self.prevex = self._eval_exprs(intg) self.accmex = [np.zeros_like(p) for p in self.prevex] def _eval_exprs(self, intg): exprs = [] # Iterate over each element type in the simulation for soln, ploc in zip(intg.soln, self.plocs): # Get the primitive variable names and solutions pnames = self.elementscls.privarmap[self.ndims] psolns = self.elementscls.con_to_pri(soln.swapaxes(0, 1), self.cfg) # Prepare the substitutions dictionary ploc = dict(zip('xyz', ploc.swapaxes(0, 1))) subs = dict(zip(pnames, psolns), t=intg.tcurr, **ploc) # Evaluate the expressions exprs.append([npeval(v, subs) for k, v in self.exprs]) # Stack up the expressions for each element type and return return [np.dstack(exs).swapaxes(1, 2) for exs in exprs] def __call__(self, intg): dowrite = abs(self.tout - intg.tcurr) < self.tol doaccum = intg.nacptsteps % self.nsteps == 0 if dowrite or doaccum: # Evaluate the time averaging expressions currex = self._eval_exprs(intg) # Accumulate them; always do this even when just writing for a, p, c in zip(self.accmex, self.prevex, currex): a += 0.5*(intg.tcurr - self.prevt)*(p + c) # Save the time and solution self.prevt = intg.tcurr self.prevex = currex if dowrite: # Normalise accmex = [a / self.dtout for a in self.accmex] stats = Inifile() stats.set('data', 'prefix', 'tavg') stats.set('data', 'fields', ','.join(k for k, v in self.exprs)) stats.set('tavg', 'tstart', intg.tcurr - self.dtout) stats.set('tavg', 'tend', intg.tcurr) intg.collect_stats(stats) metadata = dict(intg.cfgmeta, stats=stats.tostr(), mesh_uuid=intg.mesh_uuid) self._writer.write(accmex, metadata, intg.tcurr) self.tout = intg.tcurr + self.dtout self.accmex = [np.zeros_like(a) for a in accmex] pyfr-1.5.0/pyfr/plugins/writer.py000066400000000000000000000036131277740313300170360ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.inifile import Inifile from pyfr.plugins.base import BasePlugin from pyfr.writers.native import NativeWriter class WriterPlugin(BasePlugin): name = 'writer' systems = ['*'] def __init__(self, intg, cfgsect, suffix=None): super().__init__(intg, cfgsect, suffix) # Construct the solution writer basedir = self.cfg.getpath(cfgsect, 'basedir', '.') basename = self.cfg.get(cfgsect, 'basename') self._writer = NativeWriter(intg, self.nvars, basedir, basename, prefix='soln') # Output time step and next output time self.dt_out = self.cfg.getfloat(cfgsect, 'dt-out') self.tout_next = intg.tcurr # Output field names self.fields = intg.system.elementscls.convarmap[self.ndims] # Register our output times with the integrator intg.call_plugin_dt(self.dt_out) # If we're not restarting then write out the initial solution if not intg.isrestart: self(intg) else: self.tout_next += self.dt_out def __call__(self, intg): if abs(self.tout_next - intg.tcurr) > self.tol: return stats = Inifile() stats.set('data', 'fields', ','.join(self.fields)) stats.set('data', 'prefix', 'soln') intg.collect_stats(stats) # Prepare the metadata metadata = dict(intg.cfgmeta, stats=stats.tostr(), mesh_uuid=intg.mesh_uuid) # Write out the file solnfname = self._writer.write(intg.soln, metadata, intg.tcurr) # If a post-action has been registered then invoke it self._invoke_postaction(mesh=intg.system.mesh.fname, soln=solnfname, t=intg.tcurr) # Compute the next output time self.tout_next = intg.tcurr + self.dt_out pyfr-1.5.0/pyfr/polys.py000066400000000000000000000315241277740313300152110ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import Iterable from math import sqrt import numpy as np from pyfr.nputil import clean from pyfr.util import lazyprop, subclass_where def jacobi(n, a, b, z): j = [1] if n >= 1: j.append(((a + b + 2)*z + a - b) / 2) if n >= 2: apb, bbmaa = a + b, b*b - a*a for q in range(2, n + 1): qapbpq, apbp2q = q*(apb + q), apb + 2*q apbp2qm1, apbp2qm2 = apbp2q - 1, apbp2q - 2 aq = apbp2q*apbp2qm1/(2*qapbpq) bq = apbp2qm1*bbmaa/(2*qapbpq*apbp2qm2) cq = apbp2q*(a + q - 1)*(b + q - 1)/(qapbpq*apbp2qm2) # Update j.append((aq*z - bq)*j[-1] - cq*j[-2]) return j def jacobi_diff(n, a, b, z): dj = [0] if n >= 1: dj.extend(jp*(i + a + b + 2)/2 for i, jp in enumerate(jacobi(n - 1, a + 1, b + 1, z))) return dj def get_polybasis(name, order, pts=[]): return subclass_where(BasePolyBasis, name=name)(order, pts) class BasePolyBasis(object): name = None def __init__(self, order, pts): self.order = order self.pts = pts @clean def ortho_basis_at(self, pts): if len(pts) and not isinstance(pts[0], Iterable): pts = [(p,) for p in pts] return np.array([self.ortho_basis_at_py(*p) for p in pts]).T @clean def jac_ortho_basis_at(self, pts): if len(pts) and not isinstance(pts[0], Iterable): pts = [(p,) for p in pts] J = [self.jac_ortho_basis_at_py(*p) for p in pts] return np.array(J).swapaxes(0, 2) @clean def nodal_basis_at(self, epts): return np.linalg.solve(self.vdm, self.ortho_basis_at(epts)).T @clean def jac_nodal_basis_at(self, epts): return np.linalg.solve(self.vdm, self.jac_ortho_basis_at(epts)) @lazyprop def vdm(self): return self.ortho_basis_at(self.pts) @lazyprop @clean def invvdm(self): return np.linalg.inv(self.vdm) class LinePolyBasis(BasePolyBasis): name = 'line' def ortho_basis_at_py(self, p): jp = jacobi(self.order - 1, 0, 0, p) return [sqrt(i + 0.5)*p for i, p in enumerate(jp)] def jac_ortho_basis_at_py(self, p): djp = jacobi_diff(self.order - 1, 0, 0, p) return [(sqrt(i + 0.5)*p,) for i, p in enumerate(djp)] @lazyprop def degrees(self): return list(range(self.order)) class TriPolyBasis(BasePolyBasis): name = 'tri' def ortho_basis_at_py(self, p, q): a = 2*(1 + p)/(1 - q) - 1 if q != 1 else -1 b = q ob = [] for i, pi in enumerate(jacobi(self.order - 1, 0, 0, a)): pa = pi*(1 - b)**i for j, pj in enumerate(jacobi(self.order - i - 1, 2*i + 1, 0, b)): cij = sqrt((2*i + 1)*(2*i + 2*j + 2)) / 2**(i + 1) ob.append(cij*pa*pj) return ob def jac_ortho_basis_at_py(self, p, q): a = 2*(1 + p)/(1 - q) - 1 if q != 1 else -1 b = q f = jacobi(self.order - 1, 0, 0, a) df = jacobi_diff(self.order - 1, 0, 0, a) ob = [] for i, (fi, dfi) in enumerate(zip(f, df)): g = jacobi(self.order - i - 1, 2*i + 1, 0, b) dg = jacobi_diff(self.order - i - 1, 2*i + 1, 0, b) for j, (gj, dgj) in enumerate(zip(g, dg)): cij = sqrt((2*i + 1)*(2*i + 2*j + 2)) / 2**(i + 1) tmp = (1 - b)**(i - 1) if i > 0 else 1 pij = 2*tmp*dfi*gj qij = tmp*(-i*fi + (1 + a)*dfi)*gj + (1 - b)**i*fi*dgj ob.append([cij*pij, cij*qij]) return ob @lazyprop def degrees(self): return [i + j for i in range(self.order) for j in range(self.order - i)] class QuadPolyBasis(BasePolyBasis): name = 'quad' def ortho_basis_at_py(self, p, q): sk = [sqrt(k + 0.5) for k in range(self.order)] pa = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, p))] pb = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, q))] return [pi*pj for pi in pa for pj in pb] def jac_ortho_basis_at_py(self, p, q): sk = [sqrt(k + 0.5) for k in range(self.order)] pa = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, p))] pb = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, q))] dpa = [c*jp for c, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, p))] dpb = [c*jp for c, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, q))] return [[dpi*pj, pi*dpj] for pi, dpi in zip(pa, dpa) for pj, dpj in zip(pb, dpb)] @lazyprop def degrees(self): return [i + j for i in range(self.order) for j in range(self.order)] class TetPolyBasis(BasePolyBasis): name = 'tet' def ortho_basis_at_py(self, p, q, r): a = -2*(1 + p)/(q + r) - 1 if r != -q else -1 b = 2*(1 + q)/(1 - r) - 1 if r != 1 else -1 c = r ob = [] for i, pi in enumerate(jacobi(self.order - 1, 0, 0, a)): ci = 2**(-2*i - 1)*sqrt(2*i + 1)*(1 - b)**i for j, pj in enumerate(jacobi(self.order - i - 1, 2*i + 1, 0, b)): cj = sqrt(i + j + 1)*2**-j*(1 - c)**(i + j) cij = ci*cj pij = pi*pj jp = jacobi(self.order - i - j - 1, 2*(i + j + 1), 0, c) for k, pk in enumerate(jp): ck = sqrt(2*(k + j + i) + 3) ob.append(cij*ck*pij*pk) return ob def jac_ortho_basis_at_py(self, p, q, r): a = -2*(1 + p)/(q + r) - 1 if r != -q else -1 b = 2*(1 + q)/(1 - r) - 1 if r != 1 else -1 c = r f = jacobi(self.order - 1, 0, 0, a) df = jacobi_diff(self.order - 1, 0, 0, a) ob = [] for i, (fi, dfi) in enumerate(zip(f, df)): ci = 2**(-2*i - 1)*sqrt(2*i + 1) g = jacobi(self.order - i - 1, 2*i + 1, 0, b) dg = jacobi_diff(self.order - i - 1, 2*i + 1, 0, b) for j, (gj, dgj) in enumerate(zip(g, dg)): cj = sqrt(i + j + 1)*2**-j cij = ci*cj h = jacobi(self.order - i - j - 1, 2*(i + j + 1), 0, c) dh = jacobi_diff(self.order - i - j - 1, 2*(i + j + 1), 0, c) for k, (hk, dhk) in enumerate(zip(h, dh)): ck = sqrt(2*(k + j + i) + 3) cijk = cij*ck tmp1 = (1 - c)**(i + j - 1) if i + j > 0 else 1 tmp2 = tmp1*(1 - b)**(i - 1) if i > 0 else 1 pijk = 4*tmp2*dfi*gj*hk qijk = 2*(tmp2*(-i*fi + (1 + a)*dfi)*gj + tmp1*(1 - b)**i*fi*dgj)*hk rijk = ( 2*(1 + a)*tmp2*dfi*gj*hk + (1 + b)*tmp1*(1 - b)**i*fi*dgj*hk + (1 - c)**(i + j)*(1 - b)**i*fi*gj*dhk - (i*(1 + b)*tmp2 + (i + j)*tmp1*(1 - b)**i)*fi*gj*hk ) ob.append([cijk*pijk, cijk*qijk, cijk*rijk]) return ob @lazyprop def degrees(self): return [i + j + k for i in range(self.order) for j in range(self.order - i) for k in range(self.order - i - j)] class PriPolyBasis(BasePolyBasis): name = 'pri' def ortho_basis_at_py(self, p, q, r): a = 2*(1 + p)/(1 - q) - 1 if q != 1 else -1 b = q c = r pab = [] for i, pi in enumerate(jacobi(self.order - 1, 0, 0, a)): ci = (1 - b)**i / 2**(i + 1) for j, pj in enumerate(jacobi(self.order - i - 1, 2*i + 1, 0, b)): cij = sqrt((2*i + 1)*(2*i + 2*j + 2))*ci pab.append(cij*pi*pj) sk = [sqrt(k + 0.5) for k in range(self.order)] pc = [s*jp for s, jp in zip(sk, jacobi(self.order - 1, 0, 0, c))] return [pij*pk for pij in pab for pk in pc] def jac_ortho_basis_at_py(self, p, q, r): a = 2*(1 + p)/(1 - q) - 1 if q != 1 else -1 b = q c = r f = jacobi(self.order - 1, 0, 0, a) df = jacobi_diff(self.order - 1, 0, 0, a) pab = [] for i, (fi, dfi) in enumerate(zip(f, df)): g = jacobi(self.order - i - 1, 2*i + 1, 0, b) dg = jacobi_diff(self.order - i - 1, 2*i + 1, 0, b) for j, (gj, dgj) in enumerate(zip(g, dg)): cij = sqrt((2*i + 1)*(2*i + 2*j + 2)) / 2**(i + 1) tmp = (1 - b)**(i - 1) if i > 0 else 1 pij = 2*tmp*dfi*gj qij = tmp*(-i*fi + (1 + a)*dfi)*gj + (1 - b)**i*fi*dgj rij = (1 - b)**i*fi*gj pab.append([cij*pij, cij*qij, cij*rij]) sk = [sqrt(k + 0.5) for k in range(self.order)] hc = [s*jp for s, jp in zip(sk, jacobi(self.order - 1, 0, 0, c))] dhc = [s*jp for s, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, c))] return [[pij*hk, qij*hk, rij*dhk] for pij, qij, rij in pab for hk, dhk in zip(hc, dhc)] @lazyprop def degrees(self): return [i + j + k for i in range(self.order) for j in range(self.order - i) for k in range(self.order)] class PyrPolyBasis(BasePolyBasis): name = 'pyr' def ortho_basis_at_py(self, p, q, r): a = 2*p/(1 - r) if r != 1 else 0 b = 2*q/(1 - r) if r != 1 else 0 c = r sk = [2**(-k - 0.25)*sqrt(k + 0.5) for k in range(self.order)] pa = [s*jp for s, jp in zip(sk, jacobi(self.order - 1, 0, 0, a))] pb = [s*jp for s, jp in zip(sk, jacobi(self.order - 1, 0, 0, b))] ob = [] for i, pi in enumerate(pa): for j, pj in enumerate(pb): cij = (1 - c)**(i + j) pij = pi*pj pc = jacobi(self.order - max(i, j) - 1, 2*(i + j + 1), 0, c) for k, pk in enumerate(pc): ck = sqrt(2*(k + j + i) + 3) ob.append(cij*ck*pij*pk) return ob def jac_ortho_basis_at_py(self, p, q, r): a = 2*p/(1 - r) if r != 1 else 0 b = 2*q/(1 - r) if r != 1 else 0 c = r sk = [2**(-k - 0.25)*sqrt(k + 0.5) for k in range(self.order)] fc = [s*jp for s, jp in zip(sk, jacobi(self.order - 1, 0, 0, a))] gc = [s*jp for s, jp in zip(sk, jacobi(self.order - 1, 0, 0, b))] dfc = [s*jp for s, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, a))] dgc = [s*jp for s, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, b))] ob = [] for i, (fi, dfi) in enumerate(zip(fc, dfc)): for j, (gj, dgj) in enumerate(zip(gc, dgc)): h = jacobi(self.order - max(i, j) - 1, 2*(i + j + 1), 0, c) dh = jacobi_diff( self.order - max(i, j) - 1, 2*(i + j + 1), 0, c ) for k, (hk, dhk) in enumerate(zip(h, dh)): ck = sqrt(2*(k + j + i) + 3) tmp = (1 - c)**(i + j-1) if i + j > 0 else 1 pijk = 2*tmp*dfi*gj*hk qijk = 2*tmp*fi*dgj*hk rijk = (tmp*(a*dfi*gj + b*fi*dgj - (i + j)*fi*gj)*hk + (1 - c)**(i + j)*fi*gj*dhk) ob.append([ck*pijk, ck*qijk, ck*rijk]) return ob @lazyprop def degrees(self): return [i + j + k for i in range(self.order) for j in range(self.order) for k in range(self.order - max(i, j))] class HexPolyBasis(BasePolyBasis): name = 'hex' def ortho_basis_at_py(self, p, q, r): sk = [sqrt(k + 0.5) for k in range(self.order)] pa = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, p))] pb = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, q))] pc = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, r))] return [pi*pj*pk for pi in pa for pj in pb for pk in pc] def jac_ortho_basis_at_py(self, p, q, r): sk = [sqrt(k + 0.5) for k in range(self.order)] pa = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, p))] pb = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, q))] pc = [c*jp for c, jp in zip(sk, jacobi(self.order - 1, 0, 0, r))] dpa = [c*jp for c, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, p))] dpb = [c*jp for c, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, q))] dpc = [c*jp for c, jp in zip(sk, jacobi_diff(self.order - 1, 0, 0, r))] return [[dpi*pj*pk, pi*dpj*pk, pi*pj*dpk] for pi, dpi in zip(pa, dpa) for pj, dpj in zip(pb, dpb) for pk, dpk in zip(pc, dpc)] @lazyprop def degrees(self): return [i + j + k for i in range(self.order) for j in range(self.order) for k in range(self.order)] pyfr-1.5.0/pyfr/progress_bar.py000066400000000000000000000047451277740313300165400ustar00rootroot00000000000000# -*- coding: utf-8 -*- import shutil import sys import time def to_hms(delta): hours, remainder = divmod(int(delta), 3600) minutes, seconds = divmod(remainder, 60) return hours, minutes, seconds def format_hms(delta): if delta is not None: return '{:02d}:{:02d}:{:02d}'.format(*to_hms(delta)) else: return '--:--:--' class ProgressBar(object): _dispfmt = '{:7.1%} [{}{}>{}] {:.{dps}f}/{:.{dps}f} ela: {} rem: {}' # Minimum time in seconds between updates _mindelta = 0.1 def __init__(self, start, curr, end, dps=2): self.ststrt = start self.strtrt = curr self.stend = end self.dps = dps self._wstart = time.time() self._last_wallt = 0.0 self._ncol = shutil.get_terminal_size()[0] or 80 self._nbarcol = self._ncol - 24 - 2*len('{:.{}f}'.format(end, dps)) self.advance_to(curr) def advance_to(self, t): self.stcurr = min(t, self.stend) self.stelap = self.stcurr - self.strtrt self._render() if self.stcurr == self.stend: sys.stderr.write('\n') @property def walltime(self): return time.time() - self._wstart def _render(self): wallt = self.walltime delta = wallt - self._last_wallt # If we have rendered recently then do not do so again if delta < self._mindelta and self.stcurr != self.stend: return # Starting, current, elapsed, and ending simulation times st, cu, el, en = self.ststrt, self.stcurr, self.stelap, self.stend # Relative times rcu, ren = cu - st, en - st # Fraction of the simulation we've completed frac = rcu / ren # Elapsed and estimated remaining wall time wela = format_hms(wallt) wrem = format_hms(wallt*(en - cu)/el if self.stelap > 0 else None) # Decide how many '+', '=' and ' ' to output for the progress bar n = self._nbarcol - len(wela) - len(wrem) - 1 nps = int(n * (rcu - el)/ren) neq = int(round(n * el/ren)) nsp = n - nps - neq # Render the progress bar s = self._dispfmt.format(frac, '+'*nps, '='*neq, ' '*nsp, cu, en, wela, wrem, dps=self.dps) # Write the progress bar and pad the remaining columns sys.stderr.write('\x1b[2K\x1b[G') sys.stderr.write(s) sys.stderr.flush() # Update the last render time self._last_wallt = wallt pyfr-1.5.0/pyfr/pyfr000077700000000000000000000000001277740313300164542__main__.pyustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/000077500000000000000000000000001277740313300154715ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/__init__.py000066400000000000000000000067471277740313300176200ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pkg_resources import resource_listdir, resource_string import re import numpy as np class BaseTabulatedQuadRule(object): def __init__(self, rule): pts = [] wts = [] rule = re.sub(r'(?<=\))\s*,?\s*(?!$)', r'\n', rule) rule = re.sub(r'\(|\)|,', '', rule).strip() rule = rule[1:-1] if rule.startswith('[') else rule for l in rule.splitlines(): if not l: continue # Parse the line args = [float(f) for f in l.split()] if len(args) == self.ndim: pts.append(args) elif len(args) == self.ndim + 1: pts.append(args[:-1]) wts.append(args[-1]) else: raise ValueError('Invalid points in quadrature rule') if len(wts) and len(wts) != len(pts): raise ValueError('Invalid number of weights') # Flatten 1D rules if self.ndim == 1: pts = [p[0] for p in pts] # Cast self.pts = np.array(pts, dtype=np.float) self.wts = np.array(wts, dtype=np.float) class BaseStoredQuadRule(BaseTabulatedQuadRule): @classmethod def _iter_rules(cls): rpaths = getattr(cls, '_rpaths', None) if rpaths is None: cls._rpaths = rpaths = resource_listdir(__name__, cls.shape) for path in rpaths: m = re.match(r'([a-zA-Z0-9\-~+]+)-n(\d+)' r'(?:-d(\d+))?(?:-([spu]+))?\.txt$', path) if m: yield (path, m.group(1), int(m.group(2)), int(m.group(3) or -1), set(m.group(4) or '')) def __init__(self, name=None, npts=None, qdeg=None, flags=None): if not npts and not qdeg: raise ValueError('Must specify either npts or qdeg') best = None for rpath, rname, rnpts, rqdeg, rflags in self._iter_rules(): # See if this rule fulfils the required criterion if ((not name or name == rname) and (not npts or npts == rnpts) and (not qdeg or qdeg <= rqdeg) and (not flags or set(flags) <= rflags)): # If so see if it is better than the current candidate if (not best or (npts and rqdeg > best[2]) or (qdeg and rnpts < best[1])): best = (rpath, rnpts, rqdeg) # Raise if no suitable rules were found if not best: raise ValueError('No suitable quadrature rule found') # Load the rule rule = resource_string(__name__, '{}/{}'.format(self.shape, best[0])) super().__init__(rule.decode('utf-8')) def get_quadrule(eletype, rule=None, npts=None, qdeg=None, flags=None): ndims = dict(line=1, quad=2, tri=2, hex=3, pri=3, pyr=3, tet=3) if rule and not re.match(r'[a-zA-z0-9\-~+]+$', rule): class TabulatedQuadRule(BaseTabulatedQuadRule): shape = eletype ndim = ndims[eletype] r = TabulatedQuadRule(rule) # Validate the provided point set if npts and npts != len(r.pts): raise ValueError('Invalid number of points in provided rule') if qdeg and not len(r.wts): raise ValueError('Provided rule has no quadrature weights') return r else: class StoredQuadRule(BaseStoredQuadRule): shape = eletype ndim = ndims[eletype] return StoredQuadRule(rule, npts, qdeg, flags) pyfr-1.5.0/pyfr/quadrules/hex/000077500000000000000000000000001277740313300162555ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n125-d7-spu.txt000066400000000000000000000265651277740313300252030ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.001 -0.654653670707977143798292456246858356 -1.0 -1.0 0.00544444444444444444444444444444444444 0.0 -1.0 -1.0 0.00711111111111111111111111111111111111 0.654653670707977143798292456246858356 -1.0 -1.0 0.00544444444444444444444444444444444444 1.0 -1.0 -1.0 0.001 -1.0 -0.654653670707977143798292456246858356 -1.0 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 -1.0 0.0296419753086419753086419753086419753 0.0 -0.654653670707977143798292456246858356 -1.0 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 -1.0 0.0296419753086419753086419753086419753 1.0 -0.654653670707977143798292456246858356 -1.0 0.00544444444444444444444444444444444444 -1.0 0.0 -1.0 0.00711111111111111111111111111111111111 -0.654653670707977143798292456246858356 0.0 -1.0 0.0387160493827160493827160493827160494 0.0 0.0 -1.0 0.0505679012345679012345679012345679012 0.654653670707977143798292456246858356 0.0 -1.0 0.0387160493827160493827160493827160494 1.0 0.0 -1.0 0.00711111111111111111111111111111111111 -1.0 0.654653670707977143798292456246858356 -1.0 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 -1.0 0.0296419753086419753086419753086419753 0.0 0.654653670707977143798292456246858356 -1.0 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 -1.0 0.0296419753086419753086419753086419753 1.0 0.654653670707977143798292456246858356 -1.0 0.00544444444444444444444444444444444444 -1.0 1.0 -1.0 0.001 -0.654653670707977143798292456246858356 1.0 -1.0 0.00544444444444444444444444444444444444 0.0 1.0 -1.0 0.00711111111111111111111111111111111111 0.654653670707977143798292456246858356 1.0 -1.0 0.00544444444444444444444444444444444444 1.0 1.0 -1.0 0.001 -1.0 -1.0 -0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 -1.0 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 0.0 -1.0 -0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 -1.0 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 1.0 -1.0 -0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -1.0 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 0.0 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 1.0 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -1.0 0.0 -0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 -0.654653670707977143798292456246858356 0.0 -0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 0.0 0.0 -0.654653670707977143798292456246858356 0.275314128943758573388203017832647462 0.654653670707977143798292456246858356 0.0 -0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 1.0 0.0 -0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 -1.0 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 0.0 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 1.0 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -1.0 1.0 -0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 1.0 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 0.0 1.0 -0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 1.0 -0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 1.0 1.0 -0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -1.0 -1.0 0.0 0.00711111111111111111111111111111111111 -0.654653670707977143798292456246858356 -1.0 0.0 0.0387160493827160493827160493827160494 0.0 -1.0 0.0 0.0505679012345679012345679012345679012 0.654653670707977143798292456246858356 -1.0 0.0 0.0387160493827160493827160493827160494 1.0 -1.0 0.0 0.00711111111111111111111111111111111111 -1.0 -0.654653670707977143798292456246858356 0.0 0.0387160493827160493827160493827160494 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.0 0.210787379972565157750342935528120713 0.0 -0.654653670707977143798292456246858356 0.0 0.275314128943758573388203017832647462 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.0 0.210787379972565157750342935528120713 1.0 -0.654653670707977143798292456246858356 0.0 0.0387160493827160493827160493827160494 -1.0 0.0 0.0 0.0505679012345679012345679012345679012 -0.654653670707977143798292456246858356 0.0 0.0 0.275314128943758573388203017832647462 0.0 0.0 0.0 0.359593964334705075445816186556927298 0.654653670707977143798292456246858356 0.0 0.0 0.275314128943758573388203017832647462 1.0 0.0 0.0 0.0505679012345679012345679012345679012 -1.0 0.654653670707977143798292456246858356 0.0 0.0387160493827160493827160493827160494 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.0 0.210787379972565157750342935528120713 0.0 0.654653670707977143798292456246858356 0.0 0.275314128943758573388203017832647462 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.0 0.210787379972565157750342935528120713 1.0 0.654653670707977143798292456246858356 0.0 0.0387160493827160493827160493827160494 -1.0 1.0 0.0 0.00711111111111111111111111111111111111 -0.654653670707977143798292456246858356 1.0 0.0 0.0387160493827160493827160493827160494 0.0 1.0 0.0 0.0505679012345679012345679012345679012 0.654653670707977143798292456246858356 1.0 0.0 0.0387160493827160493827160493827160494 1.0 1.0 0.0 0.00711111111111111111111111111111111111 -1.0 -1.0 0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 -1.0 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 0.0 -1.0 0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 -1.0 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 1.0 -1.0 0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -1.0 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 0.0 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 1.0 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -1.0 0.0 0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 -0.654653670707977143798292456246858356 0.0 0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 0.0 0.0 0.654653670707977143798292456246858356 0.275314128943758573388203017832647462 0.654653670707977143798292456246858356 0.0 0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 1.0 0.0 0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 -1.0 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 0.0 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.210787379972565157750342935528120713 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.161384087791495198902606310013717421 1.0 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 -1.0 1.0 0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 1.0 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 0.0 1.0 0.654653670707977143798292456246858356 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 1.0 0.654653670707977143798292456246858356 0.0296419753086419753086419753086419753 1.0 1.0 0.654653670707977143798292456246858356 0.00544444444444444444444444444444444444 -1.0 -1.0 1.0 0.001 -0.654653670707977143798292456246858356 -1.0 1.0 0.00544444444444444444444444444444444444 0.0 -1.0 1.0 0.00711111111111111111111111111111111111 0.654653670707977143798292456246858356 -1.0 1.0 0.00544444444444444444444444444444444444 1.0 -1.0 1.0 0.001 -1.0 -0.654653670707977143798292456246858356 1.0 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 1.0 0.0296419753086419753086419753086419753 0.0 -0.654653670707977143798292456246858356 1.0 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 1.0 0.0296419753086419753086419753086419753 1.0 -0.654653670707977143798292456246858356 1.0 0.00544444444444444444444444444444444444 -1.0 0.0 1.0 0.00711111111111111111111111111111111111 -0.654653670707977143798292456246858356 0.0 1.0 0.0387160493827160493827160493827160494 0.0 0.0 1.0 0.0505679012345679012345679012345679012 0.654653670707977143798292456246858356 0.0 1.0 0.0387160493827160493827160493827160494 1.0 0.0 1.0 0.00711111111111111111111111111111111111 -1.0 0.654653670707977143798292456246858356 1.0 0.00544444444444444444444444444444444444 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 1.0 0.0296419753086419753086419753086419753 0.0 0.654653670707977143798292456246858356 1.0 0.0387160493827160493827160493827160494 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 1.0 0.0296419753086419753086419753086419753 1.0 0.654653670707977143798292456246858356 1.0 0.00544444444444444444444444444444444444 -1.0 1.0 1.0 0.001 -0.654653670707977143798292456246858356 1.0 1.0 0.00544444444444444444444444444444444444 0.0 1.0 1.0 0.00711111111111111111111111111111111111 0.654653670707977143798292456246858356 1.0 1.0 0.00544444444444444444444444444444444444 1.0 1.0 1.0 0.001 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n216-d9-spu.txt000066400000000000000000000604341277740313300251770ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.000296296296296296296296296296296296296 -0.76505532392946469285100297395933815 -1.0 -1.0 0.00168211091687931991251827914760899846 -0.285231516480645096314150994040879072 -1.0 -1.0 0.00246603723126882823562986900053914969 0.285231516480645096314150994040879072 -1.0 -1.0 0.00246603723126882823562986900053914969 0.76505532392946469285100297395933815 -1.0 -1.0 0.00168211091687931991251827914760899846 1.0 -1.0 -1.0 0.000296296296296296296296296296296296296 -1.0 -0.76505532392946469285100297395933815 -1.0 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 -1.0 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 -1.0 0.014 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 -1.0 0.014 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 -1.0 0.00954955283631047877525590806652597838 1.0 -0.76505532392946469285100297395933815 -1.0 0.00168211091687931991251827914760899846 -1.0 -0.285231516480645096314150994040879072 -1.0 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 -1.0 0.014 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 -1.0 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 -1.0 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 -1.0 0.014 1.0 -0.285231516480645096314150994040879072 -1.0 0.00246603723126882823562986900053914969 -1.0 0.285231516480645096314150994040879072 -1.0 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 -1.0 0.014 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 -1.0 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 -1.0 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 -1.0 0.014 1.0 0.285231516480645096314150994040879072 -1.0 0.00246603723126882823562986900053914969 -1.0 0.76505532392946469285100297395933815 -1.0 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 -1.0 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 -1.0 0.014 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 -1.0 0.014 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 -1.0 0.00954955283631047877525590806652597838 1.0 0.76505532392946469285100297395933815 -1.0 0.00168211091687931991251827914760899846 -1.0 1.0 -1.0 0.000296296296296296296296296296296296296 -0.76505532392946469285100297395933815 1.0 -1.0 0.00168211091687931991251827914760899846 -0.285231516480645096314150994040879072 1.0 -1.0 0.00246603723126882823562986900053914969 0.285231516480645096314150994040879072 1.0 -1.0 0.00246603723126882823562986900053914969 0.76505532392946469285100297395933815 1.0 -1.0 0.00168211091687931991251827914760899846 1.0 1.0 -1.0 0.000296296296296296296296296296296296296 -1.0 -1.0 -0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 -1.0 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 -1.0 -0.76505532392946469285100297395933815 0.014 0.285231516480645096314150994040879072 -1.0 -0.76505532392946469285100297395933815 0.014 0.76505532392946469285100297395933815 -1.0 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 1.0 -1.0 -0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -1.0 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 1.0 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -1.0 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.014 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 1.0 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.014 -1.0 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.014 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 1.0 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.014 -1.0 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 1.0 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -1.0 1.0 -0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 1.0 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 1.0 -0.76505532392946469285100297395933815 0.014 0.285231516480645096314150994040879072 1.0 -0.76505532392946469285100297395933815 0.014 0.76505532392946469285100297395933815 1.0 -0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 1.0 1.0 -0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -1.0 -1.0 -0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 -1.0 -0.285231516480645096314150994040879072 0.014 -0.285231516480645096314150994040879072 -1.0 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 -1.0 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 -1.0 -0.285231516480645096314150994040879072 0.014 1.0 -1.0 -0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -1.0 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.014 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 1.0 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.014 -1.0 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 1.0 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -1.0 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 1.0 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -1.0 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.014 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 1.0 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.014 -1.0 1.0 -0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 1.0 -0.285231516480645096314150994040879072 0.014 -0.285231516480645096314150994040879072 1.0 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 1.0 -0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 1.0 -0.285231516480645096314150994040879072 0.014 1.0 1.0 -0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -1.0 -1.0 0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 -1.0 0.285231516480645096314150994040879072 0.014 -0.285231516480645096314150994040879072 -1.0 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 -1.0 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 -1.0 0.285231516480645096314150994040879072 0.014 1.0 -1.0 0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -1.0 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.014 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 1.0 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.014 -1.0 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 1.0 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -1.0 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.170823038151238200049943013830198517 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 1.0 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 -1.0 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.014 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.079479740822547865866488689724525177 1.0 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.014 -1.0 1.0 0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 1.0 0.285231516480645096314150994040879072 0.014 -0.285231516480645096314150994040879072 1.0 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 1.0 0.285231516480645096314150994040879072 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 1.0 0.285231516480645096314150994040879072 0.014 1.0 1.0 0.285231516480645096314150994040879072 0.00246603723126882823562986900053914969 -1.0 -1.0 0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 -1.0 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 -1.0 0.76505532392946469285100297395933815 0.014 0.285231516480645096314150994040879072 -1.0 0.76505532392946469285100297395933815 0.014 0.76505532392946469285100297395933815 -1.0 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 1.0 -1.0 0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -1.0 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 1.0 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -1.0 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.014 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 1.0 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.014 -1.0 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.014 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.116520259177452134133511310275474823 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 1.0 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.014 -1.0 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.079479740822547865866488689724525177 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.0542139988857988369870940232068385202 1.0 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -1.0 1.0 0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 1.0 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 1.0 0.76505532392946469285100297395933815 0.014 0.285231516480645096314150994040879072 1.0 0.76505532392946469285100297395933815 0.014 0.76505532392946469285100297395933815 1.0 0.76505532392946469285100297395933815 0.00954955283631047877525590806652597838 1.0 1.0 0.76505532392946469285100297395933815 0.00168211091687931991251827914760899846 -1.0 -1.0 1.0 0.000296296296296296296296296296296296296 -0.76505532392946469285100297395933815 -1.0 1.0 0.00168211091687931991251827914760899846 -0.285231516480645096314150994040879072 -1.0 1.0 0.00246603723126882823562986900053914969 0.285231516480645096314150994040879072 -1.0 1.0 0.00246603723126882823562986900053914969 0.76505532392946469285100297395933815 -1.0 1.0 0.00168211091687931991251827914760899846 1.0 -1.0 1.0 0.000296296296296296296296296296296296296 -1.0 -0.76505532392946469285100297395933815 1.0 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 1.0 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 1.0 0.014 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 1.0 0.014 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 1.0 0.00954955283631047877525590806652597838 1.0 -0.76505532392946469285100297395933815 1.0 0.00168211091687931991251827914760899846 -1.0 -0.285231516480645096314150994040879072 1.0 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 1.0 0.014 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 1.0 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 1.0 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 1.0 0.014 1.0 -0.285231516480645096314150994040879072 1.0 0.00246603723126882823562986900053914969 -1.0 0.285231516480645096314150994040879072 1.0 0.00246603723126882823562986900053914969 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 1.0 0.014 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 1.0 0.0205245212377635952988181660075480957 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 1.0 0.0205245212377635952988181660075480957 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 1.0 0.014 1.0 0.285231516480645096314150994040879072 1.0 0.00246603723126882823562986900053914969 -1.0 0.76505532392946469285100297395933815 1.0 0.00168211091687931991251827914760899846 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 1.0 0.00954955283631047877525590806652597838 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 1.0 0.014 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 1.0 0.014 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 1.0 0.00954955283631047877525590806652597838 1.0 0.76505532392946469285100297395933815 1.0 0.00168211091687931991251827914760899846 -1.0 1.0 1.0 0.000296296296296296296296296296296296296 -0.76505532392946469285100297395933815 1.0 1.0 0.00168211091687931991251827914760899846 -0.285231516480645096314150994040879072 1.0 1.0 0.00246603723126882823562986900053914969 0.285231516480645096314150994040879072 1.0 1.0 0.00246603723126882823562986900053914969 0.76505532392946469285100297395933815 1.0 1.0 0.00168211091687931991251827914760899846 1.0 1.0 1.0 0.000296296296296296296296296296296296296 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n27-d3-spu.txt000066400000000000000000000025731277740313300251110ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.037037037037037037037037037037037037 0.0 -1.0 -1.0 0.148148148148148148148148148148148148 1.0 -1.0 -1.0 0.037037037037037037037037037037037037 -1.0 0.0 -1.0 0.148148148148148148148148148148148148 0.0 0.0 -1.0 0.592592592592592592592592592592592593 1.0 0.0 -1.0 0.148148148148148148148148148148148148 -1.0 1.0 -1.0 0.037037037037037037037037037037037037 0.0 1.0 -1.0 0.148148148148148148148148148148148148 1.0 1.0 -1.0 0.037037037037037037037037037037037037 -1.0 -1.0 0.0 0.148148148148148148148148148148148148 0.0 -1.0 0.0 0.592592592592592592592592592592592593 1.0 -1.0 0.0 0.148148148148148148148148148148148148 -1.0 0.0 0.0 0.592592592592592592592592592592592593 0.0 0.0 0.0 2.37037037037037037037037037037037037 1.0 0.0 0.0 0.592592592592592592592592592592592593 -1.0 1.0 0.0 0.148148148148148148148148148148148148 0.0 1.0 0.0 0.592592592592592592592592592592592593 1.0 1.0 0.0 0.148148148148148148148148148148148148 -1.0 -1.0 1.0 0.037037037037037037037037037037037037 0.0 -1.0 1.0 0.148148148148148148148148148148148148 1.0 -1.0 1.0 0.037037037037037037037037037037037037 -1.0 0.0 1.0 0.148148148148148148148148148148148148 0.0 0.0 1.0 0.592592592592592592592592592592592593 1.0 0.0 1.0 0.148148148148148148148148148148148148 -1.0 1.0 1.0 0.037037037037037037037037037037037037 0.0 1.0 1.0 0.148148148148148148148148148148148148 1.0 1.0 1.0 0.037037037037037037037037037037037037 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n343-d11-spu.txt000066400000000000000000001135621277740313300252520ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.000107979699816434510312061332469495735 -0.83022389627856692987203221396746514 -1.0 -1.0 0.000627723463404911446736282100430989328 -0.468848793470714213803771881908766329 -1.0 -1.0 0.000979014469863634066707190526715107206 0.0 -1.0 -1.0 0.00110571212612028938559550804448763632 0.468848793470714213803771881908766329 -1.0 -1.0 0.000979014469863634066707190526715107206 0.83022389627856692987203221396746514 -1.0 -1.0 0.000627723463404911446736282100430989328 1.0 -1.0 -1.0 0.000107979699816434510312061332469495735 -1.0 -0.83022389627856692987203221396746514 -1.0 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 -1.0 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 -1.0 0.00569135082604470359572400388726919339 0.0 -0.83022389627856692987203221396746514 -1.0 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 -1.0 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 -1.0 0.0036491743094203787317118737671439278 1.0 -0.83022389627856692987203221396746514 -1.0 0.000627723463404911446736282100430989328 -1.0 -0.468848793470714213803771881908766329 -1.0 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 -1.0 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 -1.0 0.00887638448552617131687899115025160184 0.0 -0.468848793470714213803771881908766329 -1.0 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 -1.0 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 -1.0 0.00569135082604470359572400388726919339 1.0 -0.468848793470714213803771881908766329 -1.0 0.000979014469863634066707190526715107206 -1.0 0.0 -1.0 0.00110571212612028938559550804448763632 -0.83022389627856692987203221396746514 0.0 -1.0 0.00642788826526629321457952870841333072 -0.468848793470714213803771881908766329 0.0 -1.0 0.0100251081714036128430816309935626978 0.0 0.0 -1.0 0.011322492171471763308498002375553396 0.468848793470714213803771881908766329 0.0 -1.0 0.0100251081714036128430816309935626978 0.83022389627856692987203221396746514 0.0 -1.0 0.00642788826526629321457952870841333072 1.0 0.0 -1.0 0.00110571212612028938559550804448763632 -1.0 0.468848793470714213803771881908766329 -1.0 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 -1.0 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 -1.0 0.00887638448552617131687899115025160184 0.0 0.468848793470714213803771881908766329 -1.0 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 -1.0 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 -1.0 0.00569135082604470359572400388726919339 1.0 0.468848793470714213803771881908766329 -1.0 0.000979014469863634066707190526715107206 -1.0 0.83022389627856692987203221396746514 -1.0 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 -1.0 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 -1.0 0.00569135082604470359572400388726919339 0.0 0.83022389627856692987203221396746514 -1.0 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 -1.0 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 -1.0 0.0036491743094203787317118737671439278 1.0 0.83022389627856692987203221396746514 -1.0 0.000627723463404911446736282100430989328 -1.0 1.0 -1.0 0.000107979699816434510312061332469495735 -0.83022389627856692987203221396746514 1.0 -1.0 0.000627723463404911446736282100430989328 -0.468848793470714213803771881908766329 1.0 -1.0 0.000979014469863634066707190526715107206 0.0 1.0 -1.0 0.00110571212612028938559550804448763632 0.468848793470714213803771881908766329 1.0 -1.0 0.000979014469863634066707190526715107206 0.83022389627856692987203221396746514 1.0 -1.0 0.000627723463404911446736282100430989328 1.0 1.0 -1.0 0.000107979699816434510312061332469495735 -1.0 -1.0 -0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 -1.0 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 -1.0 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.0 -1.0 -0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 -1.0 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 -1.0 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 1.0 -1.0 -0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -1.0 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.0 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 1.0 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -1.0 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.0 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 1.0 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -1.0 0.0 -0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 -0.83022389627856692987203221396746514 0.0 -0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 -0.468848793470714213803771881908766329 0.0 -0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.0 0.0 -0.83022389627856692987203221396746514 0.0658215758363268425172943739741525065 0.468848793470714213803771881908766329 0.0 -0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.83022389627856692987203221396746514 0.0 -0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 1.0 0.0 -0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 -1.0 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.0 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 1.0 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -1.0 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.0 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 1.0 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -1.0 1.0 -0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 1.0 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 1.0 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.0 1.0 -0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 1.0 -0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 1.0 -0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 1.0 1.0 -0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -1.0 -1.0 -0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 -1.0 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 -1.0 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.0 -1.0 -0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 -1.0 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 -1.0 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 1.0 -1.0 -0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -1.0 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.0 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 1.0 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -1.0 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.0 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 1.0 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -1.0 0.0 -0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 -0.83022389627856692987203221396746514 0.0 -0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 -0.468848793470714213803771881908766329 0.0 -0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.0 0.0 -0.468848793470714213803771881908766329 0.102657107675172995513155901374082025 0.468848793470714213803771881908766329 0.0 -0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.83022389627856692987203221396746514 0.0 -0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 1.0 0.0 -0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 -1.0 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.0 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 1.0 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -1.0 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.0 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 1.0 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -1.0 1.0 -0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 1.0 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 1.0 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.0 1.0 -0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 1.0 -0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 1.0 -0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 1.0 1.0 -0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -1.0 -1.0 0.0 0.00110571212612028938559550804448763632 -0.83022389627856692987203221396746514 -1.0 0.0 0.00642788826526629321457952870841333072 -0.468848793470714213803771881908766329 -1.0 0.0 0.0100251081714036128430816309935626978 0.0 -1.0 0.0 0.011322492171471763308498002375553396 0.468848793470714213803771881908766329 -1.0 0.0 0.0100251081714036128430816309935626978 0.83022389627856692987203221396746514 -1.0 0.0 0.00642788826526629321457952870841333072 1.0 -1.0 0.0 0.00110571212612028938559550804448763632 -1.0 -0.83022389627856692987203221396746514 0.0 0.00642788826526629321457952870841333072 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0 0.0373675449284646782127295873755538207 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0 0.0582794324586977648202137998056365403 0.0 -0.83022389627856692987203221396746514 0.0 0.0658215758363268425172943739741525065 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.0 0.0582794324586977648202137998056365403 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0 0.0373675449284646782127295873755538207 1.0 -0.83022389627856692987203221396746514 0.0 0.00642788826526629321457952870841333072 -1.0 -0.468848793470714213803771881908766329 0.0 0.0100251081714036128430816309935626978 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0 0.0582794324586977648202137998056365403 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0 0.0908941771317879942848408693785764028 0.0 -0.468848793470714213803771881908766329 0.0 0.102657107675172995513155901374082025 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.0 0.0908941771317879942848408693785764028 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.0 0.0582794324586977648202137998056365403 1.0 -0.468848793470714213803771881908766329 0.0 0.0100251081714036128430816309935626978 -1.0 0.0 0.0 0.011322492171471763308498002375553396 -0.83022389627856692987203221396746514 0.0 0.0 0.0658215758363268425172943739741525065 -0.468848793470714213803771881908766329 0.0 0.0 0.102657107675172995513155901374082025 0.0 0.0 0.0 0.115942319835870856279019544325666775 0.468848793470714213803771881908766329 0.0 0.0 0.102657107675172995513155901374082025 0.83022389627856692987203221396746514 0.0 0.0 0.0658215758363268425172943739741525065 1.0 0.0 0.0 0.011322492171471763308498002375553396 -1.0 0.468848793470714213803771881908766329 0.0 0.0100251081714036128430816309935626978 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0 0.0582794324586977648202137998056365403 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0 0.0908941771317879942848408693785764028 0.0 0.468848793470714213803771881908766329 0.0 0.102657107675172995513155901374082025 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0 0.0908941771317879942848408693785764028 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0 0.0582794324586977648202137998056365403 1.0 0.468848793470714213803771881908766329 0.0 0.0100251081714036128430816309935626978 -1.0 0.83022389627856692987203221396746514 0.0 0.00642788826526629321457952870841333072 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0 0.0373675449284646782127295873755538207 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0 0.0582794324586977648202137998056365403 0.0 0.83022389627856692987203221396746514 0.0 0.0658215758363268425172943739741525065 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0 0.0582794324586977648202137998056365403 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0 0.0373675449284646782127295873755538207 1.0 0.83022389627856692987203221396746514 0.0 0.00642788826526629321457952870841333072 -1.0 1.0 0.0 0.00110571212612028938559550804448763632 -0.83022389627856692987203221396746514 1.0 0.0 0.00642788826526629321457952870841333072 -0.468848793470714213803771881908766329 1.0 0.0 0.0100251081714036128430816309935626978 0.0 1.0 0.0 0.011322492171471763308498002375553396 0.468848793470714213803771881908766329 1.0 0.0 0.0100251081714036128430816309935626978 0.83022389627856692987203221396746514 1.0 0.0 0.00642788826526629321457952870841333072 1.0 1.0 0.0 0.00110571212612028938559550804448763632 -1.0 -1.0 0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 -1.0 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 -1.0 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.0 -1.0 0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 -1.0 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 -1.0 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 1.0 -1.0 0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -1.0 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.0 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 1.0 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -1.0 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.0 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 1.0 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -1.0 0.0 0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 -0.83022389627856692987203221396746514 0.0 0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 -0.468848793470714213803771881908766329 0.0 0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.0 0.0 0.468848793470714213803771881908766329 0.102657107675172995513155901374082025 0.468848793470714213803771881908766329 0.0 0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.83022389627856692987203221396746514 0.0 0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 1.0 0.0 0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 -1.0 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.0 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0908941771317879942848408693785764028 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0804790980728449502607834729098546507 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 1.0 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 -1.0 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.0 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.0330857972197607105699972624366764131 1.0 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -1.0 1.0 0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 1.0 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 1.0 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.0 1.0 0.468848793470714213803771881908766329 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 1.0 0.468848793470714213803771881908766329 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 1.0 0.468848793470714213803771881908766329 0.00569135082604470359572400388726919339 1.0 1.0 0.468848793470714213803771881908766329 0.000979014469863634066707190526715107206 -1.0 -1.0 0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 -1.0 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 -1.0 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.0 -1.0 0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 -1.0 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 -1.0 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 1.0 -1.0 0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -1.0 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.0 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 1.0 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -1.0 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.0 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 1.0 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -1.0 0.0 0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 -0.83022389627856692987203221396746514 0.0 0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 -0.468848793470714213803771881908766329 0.0 0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.0 0.0 0.83022389627856692987203221396746514 0.0658215758363268425172943739741525065 0.468848793470714213803771881908766329 0.0 0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.83022389627856692987203221396746514 0.0 0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 1.0 0.0 0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 -1.0 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.0 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0582794324586977648202137998056365403 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0516015030717844789343759154058891846 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 1.0 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 -1.0 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.0 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0373675449284646782127295873755538207 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0330857972197607105699972624366764131 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0212139165044145249578754192184252326 1.0 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -1.0 1.0 0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 1.0 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 1.0 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.0 1.0 0.83022389627856692987203221396746514 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 1.0 0.83022389627856692987203221396746514 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 1.0 0.83022389627856692987203221396746514 0.0036491743094203787317118737671439278 1.0 1.0 0.83022389627856692987203221396746514 0.000627723463404911446736282100430989328 -1.0 -1.0 1.0 0.000107979699816434510312061332469495735 -0.83022389627856692987203221396746514 -1.0 1.0 0.000627723463404911446736282100430989328 -0.468848793470714213803771881908766329 -1.0 1.0 0.000979014469863634066707190526715107206 0.0 -1.0 1.0 0.00110571212612028938559550804448763632 0.468848793470714213803771881908766329 -1.0 1.0 0.000979014469863634066707190526715107206 0.83022389627856692987203221396746514 -1.0 1.0 0.000627723463404911446736282100430989328 1.0 -1.0 1.0 0.000107979699816434510312061332469495735 -1.0 -0.83022389627856692987203221396746514 1.0 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 1.0 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 1.0 0.00569135082604470359572400388726919339 0.0 -0.83022389627856692987203221396746514 1.0 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 1.0 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 1.0 0.0036491743094203787317118737671439278 1.0 -0.83022389627856692987203221396746514 1.0 0.000627723463404911446736282100430989328 -1.0 -0.468848793470714213803771881908766329 1.0 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 1.0 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 1.0 0.00887638448552617131687899115025160184 0.0 -0.468848793470714213803771881908766329 1.0 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 1.0 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 1.0 0.00569135082604470359572400388726919339 1.0 -0.468848793470714213803771881908766329 1.0 0.000979014469863634066707190526715107206 -1.0 0.0 1.0 0.00110571212612028938559550804448763632 -0.83022389627856692987203221396746514 0.0 1.0 0.00642788826526629321457952870841333072 -0.468848793470714213803771881908766329 0.0 1.0 0.0100251081714036128430816309935626978 0.0 0.0 1.0 0.011322492171471763308498002375553396 0.468848793470714213803771881908766329 0.0 1.0 0.0100251081714036128430816309935626978 0.83022389627856692987203221396746514 0.0 1.0 0.00642788826526629321457952870841333072 1.0 0.0 1.0 0.00110571212612028938559550804448763632 -1.0 0.468848793470714213803771881908766329 1.0 0.000979014469863634066707190526715107206 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 1.0 0.00569135082604470359572400388726919339 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 1.0 0.00887638448552617131687899115025160184 0.0 0.468848793470714213803771881908766329 1.0 0.0100251081714036128430816309935626978 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 1.0 0.00887638448552617131687899115025160184 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 1.0 0.00569135082604470359572400388726919339 1.0 0.468848793470714213803771881908766329 1.0 0.000979014469863634066707190526715107206 -1.0 0.83022389627856692987203221396746514 1.0 0.000627723463404911446736282100430989328 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 1.0 0.0036491743094203787317118737671439278 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 1.0 0.00569135082604470359572400388726919339 0.0 0.83022389627856692987203221396746514 1.0 0.00642788826526629321457952870841333072 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 1.0 0.00569135082604470359572400388726919339 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 1.0 0.0036491743094203787317118737671439278 1.0 0.83022389627856692987203221396746514 1.0 0.000627723463404911446736282100430989328 -1.0 1.0 1.0 0.000107979699816434510312061332469495735 -0.83022389627856692987203221396746514 1.0 1.0 0.000627723463404911446736282100430989328 -0.468848793470714213803771881908766329 1.0 1.0 0.000979014469863634066707190526715107206 0.0 1.0 1.0 0.00110571212612028938559550804448763632 0.468848793470714213803771881908766329 1.0 1.0 0.000979014469863634066707190526715107206 0.83022389627856692987203221396746514 1.0 1.0 0.000627723463404911446736282100430989328 1.0 1.0 1.0 0.000107979699816434510312061332469495735 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n512-d13-spu.txt000066400000000000000000002041601277740313300252450ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.0000455539358600583090379008746355685131 -0.871740148509606615337445761220663438 -1.0 -1.0 0.000268755391764676070641571512469076944 -0.59170018143314230214451073139795319 -1.0 -1.0 0.000435105475106510669342143720800699199 -0.209299217902478868768657260345351255 -1.0 -1.0 0.000526095401350387604039608381890573711 0.209299217902478868768657260345351255 -1.0 -1.0 0.000526095401350387604039608381890573711 0.59170018143314230214451073139795319 -1.0 -1.0 0.000435105475106510669342143720800699199 0.871740148509606615337445761220663438 -1.0 -1.0 0.000268755391764676070641571512469076944 1.0 -1.0 -1.0 0.0000455539358600583090379008746355685131 -1.0 -0.871740148509606615337445761220663438 -1.0 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -1.0 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -1.0 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -1.0 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -1.0 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -1.0 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -1.0 0.00158558111914793525773727798829359476 1.0 -0.871740148509606615337445761220663438 -1.0 0.000268755391764676070641571512469076944 -1.0 -0.59170018143314230214451073139795319 -1.0 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -1.0 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -1.0 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -1.0 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -1.0 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -1.0 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -1.0 0.00256699976003030942752662278627562228 1.0 -0.59170018143314230214451073139795319 -1.0 0.000435105475106510669342143720800699199 -1.0 -0.209299217902478868768657260345351255 -1.0 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -1.0 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -1.0 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -1.0 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -1.0 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -1.0 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -1.0 0.00310381469846800922205853006209586046 1.0 -0.209299217902478868768657260345351255 -1.0 0.000526095401350387604039608381890573711 -1.0 0.209299217902478868768657260345351255 -1.0 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -1.0 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -1.0 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -1.0 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -1.0 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -1.0 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -1.0 0.00310381469846800922205853006209586046 1.0 0.209299217902478868768657260345351255 -1.0 0.000526095401350387604039608381890573711 -1.0 0.59170018143314230214451073139795319 -1.0 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -1.0 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -1.0 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -1.0 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -1.0 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -1.0 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -1.0 0.00256699976003030942752662278627562228 1.0 0.59170018143314230214451073139795319 -1.0 0.000435105475106510669342143720800699199 -1.0 0.871740148509606615337445761220663438 -1.0 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -1.0 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -1.0 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -1.0 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -1.0 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -1.0 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -1.0 0.00158558111914793525773727798829359476 1.0 0.871740148509606615337445761220663438 -1.0 0.000268755391764676070641571512469076944 -1.0 1.0 -1.0 0.0000455539358600583090379008746355685131 -0.871740148509606615337445761220663438 1.0 -1.0 0.000268755391764676070641571512469076944 -0.59170018143314230214451073139795319 1.0 -1.0 0.000435105475106510669342143720800699199 -0.209299217902478868768657260345351255 1.0 -1.0 0.000526095401350387604039608381890573711 0.209299217902478868768657260345351255 1.0 -1.0 0.000526095401350387604039608381890573711 0.59170018143314230214451073139795319 1.0 -1.0 0.000435105475106510669342143720800699199 0.871740148509606615337445761220663438 1.0 -1.0 0.000268755391764676070641571512469076944 1.0 1.0 -1.0 0.0000455539358600583090379008746355685131 -1.0 -1.0 -0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 -1.0 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 -1.0 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 -1.0 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 -1.0 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 -1.0 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 -1.0 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 1.0 -1.0 -0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -1.0 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 1.0 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -1.0 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 1.0 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -1.0 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 1.0 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -1.0 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 1.0 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -1.0 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 1.0 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -1.0 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 1.0 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -1.0 1.0 -0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 1.0 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 1.0 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 1.0 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 1.0 -0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 1.0 -0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 1.0 -0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 1.0 1.0 -0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -1.0 -1.0 -0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 -1.0 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 -1.0 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 -1.0 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 -1.0 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 -1.0 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 -1.0 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 1.0 -1.0 -0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -1.0 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 1.0 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -1.0 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 1.0 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -1.0 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 1.0 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -1.0 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 1.0 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -1.0 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 1.0 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -1.0 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 1.0 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -1.0 1.0 -0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 1.0 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 1.0 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 1.0 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 1.0 -0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 1.0 -0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 1.0 -0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 1.0 1.0 -0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -1.0 -1.0 -0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 -1.0 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 -1.0 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 -1.0 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 -1.0 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 -1.0 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 -1.0 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 1.0 -1.0 -0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -1.0 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 1.0 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -1.0 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 1.0 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -1.0 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 1.0 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -1.0 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 1.0 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -1.0 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 1.0 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -1.0 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 1.0 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -1.0 1.0 -0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 1.0 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 1.0 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 1.0 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 1.0 -0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 1.0 -0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 1.0 -0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 1.0 1.0 -0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -1.0 -1.0 0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 -1.0 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 -1.0 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 -1.0 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 -1.0 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 -1.0 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 -1.0 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 1.0 -1.0 0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -1.0 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 1.0 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -1.0 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 1.0 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -1.0 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 1.0 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -1.0 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0701684211869919725829499657688670088 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 1.0 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 -1.0 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 1.0 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -1.0 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.0183116325626459714081200636088110519 1.0 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -1.0 1.0 0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 1.0 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 1.0 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 1.0 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 1.0 0.209299217902478868768657260345351255 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 1.0 0.209299217902478868768657260345351255 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 1.0 0.209299217902478868768657260345351255 0.00310381469846800922205853006209586046 1.0 1.0 0.209299217902478868768657260345351255 0.000526095401350387604039608381890573711 -1.0 -1.0 0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 -1.0 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 -1.0 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 -1.0 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 -1.0 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 -1.0 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 -1.0 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 1.0 -1.0 0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -1.0 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 1.0 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -1.0 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 1.0 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -1.0 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 1.0 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -1.0 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0580325624585834405403924424368644298 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 1.0 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 -1.0 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0479956403256471830980991000112669537 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0396946368155448128957863091475062299 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 1.0 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -1.0 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0151445756144130507683918096020784545 1.0 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -1.0 1.0 0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 1.0 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 1.0 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 1.0 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 1.0 0.59170018143314230214451073139795319 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 1.0 0.59170018143314230214451073139795319 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 1.0 0.59170018143314230214451073139795319 0.00256699976003030942752662278627562228 1.0 1.0 0.59170018143314230214451073139795319 0.000435105475106510669342143720800699199 -1.0 -1.0 0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 -1.0 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 -1.0 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 -1.0 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 -1.0 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 -1.0 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 -1.0 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 1.0 -1.0 0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -1.0 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 1.0 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -1.0 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 1.0 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -1.0 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 1.0 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -1.0 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.035845478742474338583992899929227228 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 1.0 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 -1.0 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0296458855535159390034673481385499526 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0245185323528893647713596574888133945 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 1.0 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -1.0 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0183116325626459714081200636088110519 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0151445756144130507683918096020784545 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00935448203993522978239463247303755206 1.0 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -1.0 1.0 0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 1.0 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 1.0 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 1.0 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 1.0 0.871740148509606615337445761220663438 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 1.0 0.871740148509606615337445761220663438 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 1.0 0.871740148509606615337445761220663438 0.00158558111914793525773727798829359476 1.0 1.0 0.871740148509606615337445761220663438 0.000268755391764676070641571512469076944 -1.0 -1.0 1.0 0.0000455539358600583090379008746355685131 -0.871740148509606615337445761220663438 -1.0 1.0 0.000268755391764676070641571512469076944 -0.59170018143314230214451073139795319 -1.0 1.0 0.000435105475106510669342143720800699199 -0.209299217902478868768657260345351255 -1.0 1.0 0.000526095401350387604039608381890573711 0.209299217902478868768657260345351255 -1.0 1.0 0.000526095401350387604039608381890573711 0.59170018143314230214451073139795319 -1.0 1.0 0.000435105475106510669342143720800699199 0.871740148509606615337445761220663438 -1.0 1.0 0.000268755391764676070641571512469076944 1.0 -1.0 1.0 0.0000455539358600583090379008746355685131 -1.0 -0.871740148509606615337445761220663438 1.0 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 1.0 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 1.0 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 1.0 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 1.0 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 1.0 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 1.0 0.00158558111914793525773727798829359476 1.0 -0.871740148509606615337445761220663438 1.0 0.000268755391764676070641571512469076944 -1.0 -0.59170018143314230214451073139795319 1.0 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 1.0 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 1.0 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 1.0 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 1.0 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 1.0 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 1.0 0.00256699976003030942752662278627562228 1.0 -0.59170018143314230214451073139795319 1.0 0.000435105475106510669342143720800699199 -1.0 -0.209299217902478868768657260345351255 1.0 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 1.0 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 1.0 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 1.0 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 1.0 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 1.0 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 1.0 0.00310381469846800922205853006209586046 1.0 -0.209299217902478868768657260345351255 1.0 0.000526095401350387604039608381890573711 -1.0 0.209299217902478868768657260345351255 1.0 0.000526095401350387604039608381890573711 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 1.0 0.00310381469846800922205853006209586046 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 1.0 0.00502496623473135417192440335506227171 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 1.0 0.00607579490326110191508649289388735803 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 1.0 0.00607579490326110191508649289388735803 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 1.0 0.00502496623473135417192440335506227171 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 1.0 0.00310381469846800922205853006209586046 1.0 0.209299217902478868768657260345351255 1.0 0.000526095401350387604039608381890573711 -1.0 0.59170018143314230214451073139795319 1.0 0.000435105475106510669342143720800699199 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 1.0 0.00256699976003030942752662278627562228 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 1.0 0.00415588183311412447278685432028098437 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 1.0 0.00502496623473135417192440335506227171 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 1.0 0.00502496623473135417192440335506227171 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 1.0 0.00415588183311412447278685432028098437 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 1.0 0.00256699976003030942752662278627562228 1.0 0.59170018143314230214451073139795319 1.0 0.000435105475106510669342143720800699199 -1.0 0.871740148509606615337445761220663438 1.0 0.000268755391764676070641571512469076944 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 1.0 0.00158558111914793525773727798829359476 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 1.0 0.00256699976003030942752662278627562228 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 1.0 0.00310381469846800922205853006209586046 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 1.0 0.00310381469846800922205853006209586046 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 1.0 0.00256699976003030942752662278627562228 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 1.0 0.00158558111914793525773727798829359476 1.0 0.871740148509606615337445761220663438 1.0 0.000268755391764676070641571512469076944 -1.0 1.0 1.0 0.0000455539358600583090379008746355685131 -0.871740148509606615337445761220663438 1.0 1.0 0.000268755391764676070641571512469076944 -0.59170018143314230214451073139795319 1.0 1.0 0.000435105475106510669342143720800699199 -0.209299217902478868768657260345351255 1.0 1.0 0.000526095401350387604039608381890573711 0.209299217902478868768657260345351255 1.0 1.0 0.000526095401350387604039608381890573711 0.59170018143314230214451073139795319 1.0 1.0 0.000435105475106510669342143720800699199 0.871740148509606615337445761220663438 1.0 1.0 0.000268755391764676070641571512469076944 1.0 1.0 1.0 0.0000455539358600583090379008746355685131 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n64-d5-spu.txt000066400000000000000000000151501277740313300251070ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.00462962962962962962962962962962962963 -0.447213595499957939281834733746255247 -1.0 -1.0 0.0231481481481481481481481481481481481 0.447213595499957939281834733746255247 -1.0 -1.0 0.0231481481481481481481481481481481481 1.0 -1.0 -1.0 0.00462962962962962962962962962962962963 -1.0 -0.447213595499957939281834733746255247 -1.0 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 -1.0 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 -1.0 0.115740740740740740740740740740740741 1.0 -0.447213595499957939281834733746255247 -1.0 0.0231481481481481481481481481481481481 -1.0 0.447213595499957939281834733746255247 -1.0 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 -1.0 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 -1.0 0.115740740740740740740740740740740741 1.0 0.447213595499957939281834733746255247 -1.0 0.0231481481481481481481481481481481481 -1.0 1.0 -1.0 0.00462962962962962962962962962962962963 -0.447213595499957939281834733746255247 1.0 -1.0 0.0231481481481481481481481481481481481 0.447213595499957939281834733746255247 1.0 -1.0 0.0231481481481481481481481481481481481 1.0 1.0 -1.0 0.00462962962962962962962962962962962963 -1.0 -1.0 -0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 -1.0 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 -1.0 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 1.0 -1.0 -0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -1.0 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 1.0 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -1.0 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 1.0 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -1.0 1.0 -0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 1.0 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 1.0 -0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 1.0 1.0 -0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -1.0 -1.0 0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 -1.0 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 -1.0 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 1.0 -1.0 0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -1.0 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 1.0 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -1.0 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.578703703703703703703703703703703704 1.0 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 -1.0 1.0 0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 1.0 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 1.0 0.447213595499957939281834733746255247 0.115740740740740740740740740740740741 1.0 1.0 0.447213595499957939281834733746255247 0.0231481481481481481481481481481481481 -1.0 -1.0 1.0 0.00462962962962962962962962962962962963 -0.447213595499957939281834733746255247 -1.0 1.0 0.0231481481481481481481481481481481481 0.447213595499957939281834733746255247 -1.0 1.0 0.0231481481481481481481481481481481481 1.0 -1.0 1.0 0.00462962962962962962962962962962962963 -1.0 -0.447213595499957939281834733746255247 1.0 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 1.0 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 1.0 0.115740740740740740740740740740740741 1.0 -0.447213595499957939281834733746255247 1.0 0.0231481481481481481481481481481481481 -1.0 0.447213595499957939281834733746255247 1.0 0.0231481481481481481481481481481481481 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 1.0 0.115740740740740740740740740740740741 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 1.0 0.115740740740740740740740740740740741 1.0 0.447213595499957939281834733746255247 1.0 0.0231481481481481481481481481481481481 -1.0 1.0 1.0 0.00462962962962962962962962962962962963 -0.447213595499957939281834733746255247 1.0 1.0 0.0231481481481481481481481481481481481 0.447213595499957939281834733746255247 1.0 1.0 0.0231481481481481481481481481481481481 1.0 1.0 1.0 0.00462962962962962962962962962962962963 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n729-d15-spu.txt000066400000000000000000002604361277740313300252710ustar00rootroot00000000000000-1.0 -1.0 -1.0 0.0000214334705075445816186556927297668038 -0.899757995411460157312345244418337958 -1.0 -1.0 0.000127697038241362287844397932121302705 -0.677186279510737753445885427091342451 -1.0 -1.0 0.000211835426311853190803013594582849326 -0.363117463826178158710752068708659213 -1.0 -1.0 0.000267305949824881439132045935292992506 0.0 -1.0 -1.0 0.000286666106771926877746983567089387195 0.363117463826178158710752068708659213 -1.0 -1.0 0.000267305949824881439132045935292992506 0.677186279510737753445885427091342451 -1.0 -1.0 0.000211835426311853190803013594582849326 0.899757995411460157312345244418337958 -1.0 -1.0 0.000127697038241362287844397932121302705 1.0 -1.0 -1.0 0.0000214334705075445816186556927297668038 -1.0 -0.899757995411460157312345244418337958 -1.0 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -1.0 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -1.0 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -1.0 0.00159256421329043858727278322511652194 0.0 -0.899757995411460157312345244418337958 -1.0 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -1.0 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -1.0 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -1.0 0.000760797630503937415310552897562396813 1.0 -0.899757995411460157312345244418337958 -1.0 0.000127697038241362287844397932121302705 -1.0 -0.677186279510737753445885427091342451 -1.0 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -1.0 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -1.0 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -1.0 0.00264188992710800820842237583940660586 0.0 -0.677186279510737753445885427091342451 -1.0 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -1.0 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -1.0 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -1.0 0.00126208009687923071521850345263793163 1.0 -0.677186279510737753445885427091342451 -1.0 0.000211835426311853190803013594582849326 -1.0 -0.363117463826178158710752068708659213 -1.0 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -1.0 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -1.0 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -1.0 0.00333368647819450255403279944467430819 0.0 -0.363117463826178158710752068708659213 -1.0 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -1.0 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -1.0 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -1.0 0.00159256421329043858727278322511652194 1.0 -0.363117463826178158710752068708659213 -1.0 0.000267305949824881439132045935292992506 -1.0 0.0 -1.0 0.000286666106771926877746983567089387195 -0.899757995411460157312345244418337958 0.0 -1.0 0.00170790879554814671350417609785748859 -0.677186279510737753445885427091342451 0.0 -1.0 0.00283323397934155320662577529277175784 -0.363117463826178158710752068708659213 0.0 -1.0 0.00357513525055580203978729845211460345 0.0 0.0 -1.0 0.00383407142314387752245435001076940392 0.363117463826178158710752068708659213 0.0 -1.0 0.00357513525055580203978729845211460345 0.677186279510737753445885427091342451 0.0 -1.0 0.00283323397934155320662577529277175784 0.899757995411460157312345244418337958 0.0 -1.0 0.00170790879554814671350417609785748859 1.0 0.0 -1.0 0.000286666106771926877746983567089387195 -1.0 0.363117463826178158710752068708659213 -1.0 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -1.0 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -1.0 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -1.0 0.00333368647819450255403279944467430819 0.0 0.363117463826178158710752068708659213 -1.0 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -1.0 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -1.0 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -1.0 0.00159256421329043858727278322511652194 1.0 0.363117463826178158710752068708659213 -1.0 0.000267305949824881439132045935292992506 -1.0 0.677186279510737753445885427091342451 -1.0 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -1.0 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -1.0 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -1.0 0.00264188992710800820842237583940660586 0.0 0.677186279510737753445885427091342451 -1.0 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -1.0 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -1.0 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -1.0 0.00126208009687923071521850345263793163 1.0 0.677186279510737753445885427091342451 -1.0 0.000211835426311853190803013594582849326 -1.0 0.899757995411460157312345244418337958 -1.0 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -1.0 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -1.0 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -1.0 0.00159256421329043858727278322511652194 0.0 0.899757995411460157312345244418337958 -1.0 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -1.0 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -1.0 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -1.0 0.000760797630503937415310552897562396813 1.0 0.899757995411460157312345244418337958 -1.0 0.000127697038241362287844397932121302705 -1.0 1.0 -1.0 0.0000214334705075445816186556927297668038 -0.899757995411460157312345244418337958 1.0 -1.0 0.000127697038241362287844397932121302705 -0.677186279510737753445885427091342451 1.0 -1.0 0.000211835426311853190803013594582849326 -0.363117463826178158710752068708659213 1.0 -1.0 0.000267305949824881439132045935292992506 0.0 1.0 -1.0 0.000286666106771926877746983567089387195 0.363117463826178158710752068708659213 1.0 -1.0 0.000267305949824881439132045935292992506 0.677186279510737753445885427091342451 1.0 -1.0 0.000211835426311853190803013594582849326 0.899757995411460157312345244418337958 1.0 -1.0 0.000127697038241362287844397932121302705 1.0 1.0 -1.0 0.0000214334705075445816186556927297668038 -1.0 -1.0 -0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 -1.0 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 -1.0 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 -1.0 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.0 -1.0 -0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 -1.0 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 -1.0 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 -1.0 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 1.0 -1.0 -0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -1.0 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.0 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 1.0 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -1.0 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.0 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 1.0 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -1.0 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.0 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 1.0 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -1.0 0.0 -0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 -0.899757995411460157312345244418337958 0.0 -0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 -0.677186279510737753445885427091342451 0.0 -0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 -0.363117463826178158710752068708659213 0.0 -0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.0 0.0 -0.899757995411460157312345244418337958 0.022842757311233335309430547907997627 0.363117463826178158710752068708659213 0.0 -0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.677186279510737753445885427091342451 0.0 -0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 0.899757995411460157312345244418337958 0.0 -0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 1.0 0.0 -0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 -1.0 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.0 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 1.0 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -1.0 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.0 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 1.0 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -1.0 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.0 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 1.0 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -1.0 1.0 -0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 1.0 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 1.0 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 1.0 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.0 1.0 -0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 1.0 -0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 1.0 -0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 1.0 -0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 1.0 1.0 -0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -1.0 -1.0 -0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 -1.0 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 -1.0 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 -1.0 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.0 -1.0 -0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 -1.0 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 -1.0 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 -1.0 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 1.0 -1.0 -0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -1.0 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.0 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 1.0 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -1.0 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.0 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 1.0 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -1.0 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.0 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 1.0 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -1.0 0.0 -0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 -0.899757995411460157312345244418337958 0.0 -0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 -0.677186279510737753445885427091342451 0.0 -0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 -0.363117463826178158710752068708659213 0.0 -0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.0 0.0 -0.677186279510737753445885427091342451 0.0378936371571689859080462876708346779 0.363117463826178158710752068708659213 0.0 -0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.677186279510737753445885427091342451 0.0 -0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 0.899757995411460157312345244418337958 0.0 -0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 1.0 0.0 -0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 -1.0 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.0 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 1.0 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -1.0 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.0 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 1.0 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -1.0 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.0 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 1.0 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -1.0 1.0 -0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 1.0 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 1.0 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 1.0 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.0 1.0 -0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 1.0 -0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 1.0 -0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 1.0 -0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 1.0 1.0 -0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -1.0 -1.0 -0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 -1.0 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 -1.0 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 -1.0 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.0 -1.0 -0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 -1.0 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 -1.0 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 -1.0 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 1.0 -1.0 -0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -1.0 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.0 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 1.0 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -1.0 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.0 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 1.0 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -1.0 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.0 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 1.0 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -1.0 0.0 -0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 -0.899757995411460157312345244418337958 0.0 -0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 -0.677186279510737753445885427091342451 0.0 -0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 -0.363117463826178158710752068708659213 0.0 -0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.0 0.0 -0.363117463826178158710752068708659213 0.0478163395470255188733674268077107452 0.363117463826178158710752068708659213 0.0 -0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.677186279510737753445885427091342451 0.0 -0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 0.899757995411460157312345244418337958 0.0 -0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 1.0 0.0 -0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 -1.0 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.0 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 1.0 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -1.0 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.0 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 1.0 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -1.0 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.0 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 1.0 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -1.0 1.0 -0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 1.0 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 1.0 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 1.0 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.0 1.0 -0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 1.0 -0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 1.0 -0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 1.0 -0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 1.0 1.0 -0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -1.0 -1.0 0.0 0.000286666106771926877746983567089387195 -0.899757995411460157312345244418337958 -1.0 0.0 0.00170790879554814671350417609785748859 -0.677186279510737753445885427091342451 -1.0 0.0 0.00283323397934155320662577529277175784 -0.363117463826178158710752068708659213 -1.0 0.0 0.00357513525055580203978729845211460345 0.0 -1.0 0.0 0.00383407142314387752245435001076940392 0.363117463826178158710752068708659213 -1.0 0.0 0.00357513525055580203978729845211460345 0.677186279510737753445885427091342451 -1.0 0.0 0.00283323397934155320662577529277175784 0.899757995411460157312345244418337958 -1.0 0.0 0.00170790879554814671350417609785748859 1.0 -1.0 0.0 0.000286666106771926877746983567089387195 -1.0 -0.899757995411460157312345244418337958 0.0 0.00170790879554814671350417609785748859 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0 0.0101754354107563351938351825907447424 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0 0.0168799349447096457454203759738937729 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0 0.0213000588331024863786753309063747718 0.0 -0.899757995411460157312345244418337958 0.0 0.022842757311233335309430547907997627 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0 0.0213000588331024863786753309063747718 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0 0.0168799349447096457454203759738937729 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0 0.0101754354107563351938351825907447424 1.0 -0.899757995411460157312345244418337958 0.0 0.00170790879554814671350417609785748859 -1.0 -0.677186279510737753445885427091342451 0.0 0.00283323397934155320662577529277175784 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0 0.0168799349447096457454203759738937729 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0 0.0280019667204050345636486515578327957 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0 0.0353344690332551889688099638798676167 0.0 -0.677186279510737753445885427091342451 0.0 0.0378936371571689859080462876708346779 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0 0.0353344690332551889688099638798676167 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0 0.0280019667204050345636486515578327957 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0 0.0168799349447096457454203759738937729 1.0 -0.677186279510737753445885427091342451 0.0 0.00283323397934155320662577529277175784 -1.0 -0.363117463826178158710752068708659213 0.0 0.00357513525055580203978729845211460345 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0 0.0213000588331024863786753309063747718 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0 0.0353344690332551889688099638798676167 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0 0.0445870361295826366083864376339133595 0.0 -0.363117463826178158710752068708659213 0.0 0.0478163395470255188733674268077107452 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.0 0.0445870361295826366083864376339133595 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0 0.0353344690332551889688099638798676167 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0 0.0213000588331024863786753309063747718 1.0 -0.363117463826178158710752068708659213 0.0 0.00357513525055580203978729845211460345 -1.0 0.0 0.0 0.00383407142314387752245435001076940392 -0.899757995411460157312345244418337958 0.0 0.0 0.022842757311233335309430547907997627 -0.677186279510737753445885427091342451 0.0 0.0 0.0378936371571689859080462876708346779 -0.363117463826178158710752068708659213 0.0 0.0 0.0478163395470255188733674268077107452 0.0 0.0 0.0 0.0512795315892157463901159759807721746 0.363117463826178158710752068708659213 0.0 0.0 0.0478163395470255188733674268077107452 0.677186279510737753445885427091342451 0.0 0.0 0.0378936371571689859080462876708346779 0.899757995411460157312345244418337958 0.0 0.0 0.022842757311233335309430547907997627 1.0 0.0 0.0 0.00383407142314387752245435001076940392 -1.0 0.363117463826178158710752068708659213 0.0 0.00357513525055580203978729845211460345 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0 0.0213000588331024863786753309063747718 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0 0.0353344690332551889688099638798676167 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0 0.0445870361295826366083864376339133595 0.0 0.363117463826178158710752068708659213 0.0 0.0478163395470255188733674268077107452 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0 0.0445870361295826366083864376339133595 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0 0.0353344690332551889688099638798676167 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0 0.0213000588331024863786753309063747718 1.0 0.363117463826178158710752068708659213 0.0 0.00357513525055580203978729845211460345 -1.0 0.677186279510737753445885427091342451 0.0 0.00283323397934155320662577529277175784 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0 0.0168799349447096457454203759738937729 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0 0.0280019667204050345636486515578327957 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0 0.0353344690332551889688099638798676167 0.0 0.677186279510737753445885427091342451 0.0 0.0378936371571689859080462876708346779 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0 0.0353344690332551889688099638798676167 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0 0.0280019667204050345636486515578327957 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0 0.0168799349447096457454203759738937729 1.0 0.677186279510737753445885427091342451 0.0 0.00283323397934155320662577529277175784 -1.0 0.899757995411460157312345244418337958 0.0 0.00170790879554814671350417609785748859 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0 0.0101754354107563351938351825907447424 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0 0.0168799349447096457454203759738937729 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0 0.0213000588331024863786753309063747718 0.0 0.899757995411460157312345244418337958 0.0 0.022842757311233335309430547907997627 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0 0.0213000588331024863786753309063747718 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0 0.0168799349447096457454203759738937729 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0 0.0101754354107563351938351825907447424 1.0 0.899757995411460157312345244418337958 0.0 0.00170790879554814671350417609785748859 -1.0 1.0 0.0 0.000286666106771926877746983567089387195 -0.899757995411460157312345244418337958 1.0 0.0 0.00170790879554814671350417609785748859 -0.677186279510737753445885427091342451 1.0 0.0 0.00283323397934155320662577529277175784 -0.363117463826178158710752068708659213 1.0 0.0 0.00357513525055580203978729845211460345 0.0 1.0 0.0 0.00383407142314387752245435001076940392 0.363117463826178158710752068708659213 1.0 0.0 0.00357513525055580203978729845211460345 0.677186279510737753445885427091342451 1.0 0.0 0.00283323397934155320662577529277175784 0.899757995411460157312345244418337958 1.0 0.0 0.00170790879554814671350417609785748859 1.0 1.0 0.0 0.000286666106771926877746983567089387195 -1.0 -1.0 0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 -1.0 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 -1.0 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 -1.0 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.0 -1.0 0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 -1.0 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 -1.0 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 -1.0 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 1.0 -1.0 0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -1.0 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.0 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 1.0 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -1.0 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.0 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 1.0 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -1.0 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.0 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 1.0 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -1.0 0.0 0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 -0.899757995411460157312345244418337958 0.0 0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 -0.677186279510737753445885427091342451 0.0 0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 -0.363117463826178158710752068708659213 0.0 0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.0 0.0 0.363117463826178158710752068708659213 0.0478163395470255188733674268077107452 0.363117463826178158710752068708659213 0.0 0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.677186279510737753445885427091342451 0.0 0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 0.899757995411460157312345244418337958 0.0 0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 1.0 0.0 0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 -1.0 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.0 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0445870361295826366083864376339133595 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0415758255369084163206602115822044341 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 1.0 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 -1.0 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.0 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 1.0 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -1.0 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.0 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0094882316503428338995222068421292359 1.0 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -1.0 1.0 0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 1.0 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 1.0 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 1.0 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.0 1.0 0.363117463826178158710752068708659213 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 1.0 0.363117463826178158710752068708659213 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 1.0 0.363117463826178158710752068708659213 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 1.0 0.363117463826178158710752068708659213 0.00159256421329043858727278322511652194 1.0 1.0 0.363117463826178158710752068708659213 0.000267305949824881439132045935292992506 -1.0 -1.0 0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 -1.0 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 -1.0 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 -1.0 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.0 -1.0 0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 -1.0 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 -1.0 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 -1.0 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 1.0 -1.0 0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -1.0 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.0 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 1.0 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -1.0 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.0 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 1.0 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -1.0 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.0 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 1.0 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -1.0 0.0 0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 -0.899757995411460157312345244418337958 0.0 0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 -0.677186279510737753445885427091342451 0.0 0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 -0.363117463826178158710752068708659213 0.0 0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.0 0.0 0.677186279510737753445885427091342451 0.0378936371571689859080462876708346779 0.363117463826178158710752068708659213 0.0 0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.677186279510737753445885427091342451 0.0 0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 0.899757995411460157312345244418337958 0.0 0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 1.0 0.0 0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 -1.0 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.0 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0353344690332551889688099638798676167 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0329481357696978202972966231869643596 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 1.0 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 -1.0 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.0 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0280019667204050345636486515578327957 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0261108381295936335163919356460467043 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0206923958488985424007833311875046388 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 1.0 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -1.0 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.0 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00751926247026209107193760134263627905 1.0 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -1.0 1.0 0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 1.0 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 1.0 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 1.0 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.0 1.0 0.677186279510737753445885427091342451 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 1.0 0.677186279510737753445885427091342451 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 1.0 0.677186279510737753445885427091342451 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 1.0 0.677186279510737753445885427091342451 0.00126208009687923071521850345263793163 1.0 1.0 0.677186279510737753445885427091342451 0.000211835426311853190803013594582849326 -1.0 -1.0 0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 -1.0 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 -1.0 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 -1.0 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.0 -1.0 0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 -1.0 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 -1.0 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 -1.0 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 1.0 -1.0 0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -1.0 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.0 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 1.0 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -1.0 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.0 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 1.0 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -1.0 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.0 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 1.0 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -1.0 0.0 0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 -0.899757995411460157312345244418337958 0.0 0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 -0.677186279510737753445885427091342451 0.0 0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 -0.363117463826178158710752068708659213 0.0 0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.0 0.0 0.899757995411460157312345244418337958 0.022842757311233335309430547907997627 0.363117463826178158710752068708659213 0.0 0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.677186279510737753445885427091342451 0.0 0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 0.899757995411460157312345244418337958 0.0 0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 1.0 0.0 0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 -1.0 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.0 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0213000588331024863786753309063747718 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0198615473654100344689979269774753131 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 1.0 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 -1.0 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.0 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0168799349447096457454203759738937729 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.015739939032861238996689613606286333 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0124736344152949220913102179064581085 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 1.0 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -1.0 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.0 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0101754354107563351938351825907447424 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0094882316503428338995222068421292359 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00751926247026209107193760134263627905 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.00453270524165471696749195193454600234 1.0 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -1.0 1.0 0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 1.0 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 1.0 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 1.0 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.0 1.0 0.899757995411460157312345244418337958 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 1.0 0.899757995411460157312345244418337958 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 1.0 0.899757995411460157312345244418337958 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 1.0 0.899757995411460157312345244418337958 0.000760797630503937415310552897562396813 1.0 1.0 0.899757995411460157312345244418337958 0.000127697038241362287844397932121302705 -1.0 -1.0 1.0 0.0000214334705075445816186556927297668038 -0.899757995411460157312345244418337958 -1.0 1.0 0.000127697038241362287844397932121302705 -0.677186279510737753445885427091342451 -1.0 1.0 0.000211835426311853190803013594582849326 -0.363117463826178158710752068708659213 -1.0 1.0 0.000267305949824881439132045935292992506 0.0 -1.0 1.0 0.000286666106771926877746983567089387195 0.363117463826178158710752068708659213 -1.0 1.0 0.000267305949824881439132045935292992506 0.677186279510737753445885427091342451 -1.0 1.0 0.000211835426311853190803013594582849326 0.899757995411460157312345244418337958 -1.0 1.0 0.000127697038241362287844397932121302705 1.0 -1.0 1.0 0.0000214334705075445816186556927297668038 -1.0 -0.899757995411460157312345244418337958 1.0 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 1.0 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 1.0 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 1.0 0.00159256421329043858727278322511652194 0.0 -0.899757995411460157312345244418337958 1.0 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 1.0 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 1.0 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 1.0 0.000760797630503937415310552897562396813 1.0 -0.899757995411460157312345244418337958 1.0 0.000127697038241362287844397932121302705 -1.0 -0.677186279510737753445885427091342451 1.0 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 1.0 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 1.0 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 1.0 0.00264188992710800820842237583940660586 0.0 -0.677186279510737753445885427091342451 1.0 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 1.0 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 1.0 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 1.0 0.00126208009687923071521850345263793163 1.0 -0.677186279510737753445885427091342451 1.0 0.000211835426311853190803013594582849326 -1.0 -0.363117463826178158710752068708659213 1.0 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 1.0 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 1.0 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 1.0 0.00333368647819450255403279944467430819 0.0 -0.363117463826178158710752068708659213 1.0 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 1.0 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 1.0 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 1.0 0.00159256421329043858727278322511652194 1.0 -0.363117463826178158710752068708659213 1.0 0.000267305949824881439132045935292992506 -1.0 0.0 1.0 0.000286666106771926877746983567089387195 -0.899757995411460157312345244418337958 0.0 1.0 0.00170790879554814671350417609785748859 -0.677186279510737753445885427091342451 0.0 1.0 0.00283323397934155320662577529277175784 -0.363117463826178158710752068708659213 0.0 1.0 0.00357513525055580203978729845211460345 0.0 0.0 1.0 0.00383407142314387752245435001076940392 0.363117463826178158710752068708659213 0.0 1.0 0.00357513525055580203978729845211460345 0.677186279510737753445885427091342451 0.0 1.0 0.00283323397934155320662577529277175784 0.899757995411460157312345244418337958 0.0 1.0 0.00170790879554814671350417609785748859 1.0 0.0 1.0 0.000286666106771926877746983567089387195 -1.0 0.363117463826178158710752068708659213 1.0 0.000267305949824881439132045935292992506 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 1.0 0.00159256421329043858727278322511652194 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 1.0 0.00264188992710800820842237583940660586 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 1.0 0.00333368647819450255403279944467430819 0.0 0.363117463826178158710752068708659213 1.0 0.00357513525055580203978729845211460345 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 1.0 0.00333368647819450255403279944467430819 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 1.0 0.00264188992710800820842237583940660586 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 1.0 0.00159256421329043858727278322511652194 1.0 0.363117463826178158710752068708659213 1.0 0.000267305949824881439132045935292992506 -1.0 0.677186279510737753445885427091342451 1.0 0.000211835426311853190803013594582849326 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 1.0 0.00126208009687923071521850345263793163 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 1.0 0.00209365290725684615115170887196930998 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 1.0 0.00264188992710800820842237583940660586 0.0 0.677186279510737753445885427091342451 1.0 0.00283323397934155320662577529277175784 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 1.0 0.00264188992710800820842237583940660586 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 1.0 0.00209365290725684615115170887196930998 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 1.0 0.00126208009687923071521850345263793163 1.0 0.677186279510737753445885427091342451 1.0 0.000211835426311853190803013594582849326 -1.0 0.899757995411460157312345244418337958 1.0 0.000127697038241362287844397932121302705 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 1.0 0.000760797630503937415310552897562396813 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 1.0 0.00126208009687923071521850345263793163 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 1.0 0.00159256421329043858727278322511652194 0.0 0.899757995411460157312345244418337958 1.0 0.00170790879554814671350417609785748859 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 1.0 0.00159256421329043858727278322511652194 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 1.0 0.00126208009687923071521850345263793163 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 1.0 0.000760797630503937415310552897562396813 1.0 0.899757995411460157312345244418337958 1.0 0.000127697038241362287844397932121302705 -1.0 1.0 1.0 0.0000214334705075445816186556927297668038 -0.899757995411460157312345244418337958 1.0 1.0 0.000127697038241362287844397932121302705 -0.677186279510737753445885427091342451 1.0 1.0 0.000211835426311853190803013594582849326 -0.363117463826178158710752068708659213 1.0 1.0 0.000267305949824881439132045935292992506 0.0 1.0 1.0 0.000286666106771926877746983567089387195 0.363117463826178158710752068708659213 1.0 1.0 0.000267305949824881439132045935292992506 0.677186279510737753445885427091342451 1.0 1.0 0.000211835426311853190803013594582849326 0.899757995411460157312345244418337958 1.0 1.0 0.000127697038241362287844397932121302705 1.0 1.0 1.0 0.0000214334705075445816186556927297668038 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-lobatto-n8-d1-spu.txt000066400000000000000000000002141277740313300250140ustar00rootroot00000000000000-1.0 -1.0 -1.0 1.0 1.0 -1.0 -1.0 1.0 -1.0 1.0 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 1.0 1.0 -1.0 1.0 1.0 -1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n1-d1-spu.txt000066400000000000000000000000201277740313300233360ustar00rootroot000000000000000.0 0.0 0.0 8.0 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n125-d9-spu.txt000066400000000000000000000377731277740313300235460ustar00rootroot00000000000000-0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.0 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.0 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.064512 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 0.0 -0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 -0.538469310105683091036314420700208805 0.0 -0.906179845938663992797626878299392965 0.064512 0.0 0.0 -0.906179845938663992797626878299392965 0.0766777300693452248856039909759037248 0.538469310105683091036314420700208805 0.0 -0.906179845938663992797626878299392965 0.064512 0.906179845938663992797626878299392965 0.0 -0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.0 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.064512 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.0 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.0 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.064512 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.0 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.906179845938663992797626878299392965 0.0 -0.538469310105683091036314420700208805 0.064512 -0.538469310105683091036314420700208805 0.0 -0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.0 0.0 -0.538469310105683091036314420700208805 0.154900782962204843701501633166757455 0.538469310105683091036314420700208805 0.0 -0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.906179845938663992797626878299392965 0.0 -0.538469310105683091036314420700208805 0.064512 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.0 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.0 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.064512 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0 0.0319342073528482906764237698993789039 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0 0.064512 0.0 -0.906179845938663992797626878299392965 0.0 0.0766777300693452248856039909759037248 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.0 0.064512 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0 0.0319342073528482906764237698993789039 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0 0.064512 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.0 0.130324141069648279968295022967562111 0.0 -0.538469310105683091036314420700208805 0.0 0.154900782962204843701501633166757455 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.0 0.130324141069648279968295022967562111 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.0 0.064512 -0.906179845938663992797626878299392965 0.0 0.0 0.0766777300693452248856039909759037248 -0.538469310105683091036314420700208805 0.0 0.0 0.154900782962204843701501633166757455 0.0 0.0 0.0 0.184112109739368998628257887517146776 0.538469310105683091036314420700208805 0.0 0.0 0.154900782962204843701501633166757455 0.906179845938663992797626878299392965 0.0 0.0 0.0766777300693452248856039909759037248 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0 0.064512 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.0 0.130324141069648279968295022967562111 0.0 0.538469310105683091036314420700208805 0.0 0.154900782962204843701501633166757455 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.0 0.130324141069648279968295022967562111 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0 0.064512 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0 0.0319342073528482906764237698993789039 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0 0.064512 0.0 0.906179845938663992797626878299392965 0.0 0.0766777300693452248856039909759037248 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0 0.064512 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0 0.0319342073528482906764237698993789039 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.0 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.064512 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.0 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.906179845938663992797626878299392965 0.0 0.538469310105683091036314420700208805 0.064512 -0.538469310105683091036314420700208805 0.0 0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.0 0.0 0.538469310105683091036314420700208805 0.154900782962204843701501633166757455 0.538469310105683091036314420700208805 0.0 0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.906179845938663992797626878299392965 0.0 0.538469310105683091036314420700208805 0.064512 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.0 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.130324141069648279968295022967562111 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.109646842454538819671738625794025347 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.0 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.064512 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.0 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.0 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.064512 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 0.0 0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 -0.538469310105683091036314420700208805 0.0 0.906179845938663992797626878299392965 0.064512 0.0 0.0 0.906179845938663992797626878299392965 0.0766777300693452248856039909759037248 0.538469310105683091036314420700208805 0.0 0.906179845938663992797626878299392965 0.064512 0.906179845938663992797626878299392965 0.0 0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.0 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.064512 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0542764912346281574758824577823613711 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.0 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0319342073528482906764237698993789039 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0268675087653718425241175422176386289 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0132997364206326480923217308589238986 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n216-d11-spu.txt000066400000000000000000001025241277740313300236030ustar00rootroot00000000000000-0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.10244669121669966321785515260663821 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.078986383490940666762421115540255132 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0608984897694866697826570889702129662 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0469527264358119773658985844992250593 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0375103754596562682492480964257815 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0289204938271604938271604938271604938 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0222976963828688014316073436697478694 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0137342480309898567116986908263055671 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0105891031623540333586639608639932617 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.00502873049563650756439441104228487898 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n27-d5-spu.txt000066400000000000000000000063361277740313300234520ustar00rootroot00000000000000-0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 0.0 -0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 -0.774596669241483377035853079956479922 0.0 -0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 0.0 0.0 -0.774596669241483377035853079956479922 0.438957475994513031550068587105624143 0.774596669241483377035853079956479922 0.0 -0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 0.0 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 -0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.0 0.274348422496570644718792866941015089 0.0 -0.774596669241483377035853079956479922 0.0 0.438957475994513031550068587105624143 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.0 0.274348422496570644718792866941015089 -0.774596669241483377035853079956479922 0.0 0.0 0.438957475994513031550068587105624143 0.0 0.0 0.0 0.702331961591220850480109739368998628 0.774596669241483377035853079956479922 0.0 0.0 0.438957475994513031550068587105624143 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.0 0.274348422496570644718792866941015089 0.0 0.774596669241483377035853079956479922 0.0 0.438957475994513031550068587105624143 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.0 0.274348422496570644718792866941015089 -0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 0.0 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 -0.774596669241483377035853079956479922 0.0 0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 0.0 0.0 0.774596669241483377035853079956479922 0.438957475994513031550068587105624143 0.774596669241483377035853079956479922 0.0 0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 0.0 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.274348422496570644718792866941015089 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.171467764060356652949245541838134431 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n343-d13-spu.txt000066400000000000000000001400671277740313300236120ustar00rootroot00000000000000-0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.0 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.0 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.0 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 0.0 -0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 -0.741531185599394439863864773280788407 0.0 -0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 -0.405845151377397166906606412076961463 0.0 -0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.0 0.0 -0.949107912342758524526189684047851262 0.0226197131004562611396792425877386266 0.405845151377397166906606412076961463 0.0 -0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.741531185599394439863864773280788407 0.0 -0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 0.949107912342758524526189684047851262 0.0 -0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.0 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.0 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.0 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.0 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.0 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.0 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 0.0 -0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 -0.741531185599394439863864773280788407 0.0 -0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 -0.405845151377397166906606412076961463 0.0 -0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.0 0.0 -0.741531185599394439863864773280788407 0.0488617010556034604450561382571363764 0.405845151377397166906606412076961463 0.0 -0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.741531185599394439863864773280788407 0.0 -0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 0.949107912342758524526189684047851262 0.0 -0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.0 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.0 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.0 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.0 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.0 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.0 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.949107912342758524526189684047851262 0.0 -0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 -0.741531185599394439863864773280788407 0.0 -0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 -0.405845151377397166906606412076961463 0.0 -0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.0 0.0 -0.405845151377397166906606412076961463 0.0667018454041575348305337672141820225 0.405845151377397166906606412076961463 0.0 -0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.741531185599394439863864773280788407 0.0 -0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 0.949107912342758524526189684047851262 0.0 -0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.0 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.0 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.0 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0 0.00700765266076873832977473771086778464 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0 0.0151374965673229342823425196000504105 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0 0.0206644249796077747401272467272043228 0.0 -0.949107912342758524526189684047851262 0.0 0.0226197131004562611396792425877386266 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0 0.0206644249796077747401272467272043228 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0 0.0151374965673229342823425196000504105 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0 0.00700765266076873832977473771086778464 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0 0.0151374965673229342823425196000504105 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0 0.0326990810501410584636629337705480245 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0 0.0446380089506605251666105582918334961 0.0 -0.741531185599394439863864773280788407 0.0 0.0488617010556034604450561382571363764 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.0 0.0446380089506605251666105582918334961 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0 0.0326990810501410584636629337705480245 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0 0.0151374965673229342823425196000504105 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0 0.0206644249796077747401272467272043228 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0 0.0446380089506605251666105582918334961 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0 0.0609360195787720345674559848843652666 0.0 -0.405845151377397166906606412076961463 0.0 0.0667018454041575348305337672141820225 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.0 0.0609360195787720345674559848843652666 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.0 0.0446380089506605251666105582918334961 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0 0.0206644249796077747401272467272043228 -0.949107912342758524526189684047851262 0.0 0.0 0.0226197131004562611396792425877386266 -0.741531185599394439863864773280788407 0.0 0.0 0.0488617010556034604450561382571363764 -0.405845151377397166906606412076961463 0.0 0.0 0.0667018454041575348305337672141820225 0.0 0.0 0.0 0.0730132393135513264031143486132478814 0.405845151377397166906606412076961463 0.0 0.0 0.0667018454041575348305337672141820225 0.741531185599394439863864773280788407 0.0 0.0 0.0488617010556034604450561382571363764 0.949107912342758524526189684047851262 0.0 0.0 0.0226197131004562611396792425877386266 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0 0.0206644249796077747401272467272043228 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0 0.0446380089506605251666105582918334961 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0 0.0609360195787720345674559848843652666 0.0 0.405845151377397166906606412076961463 0.0 0.0667018454041575348305337672141820225 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0 0.0609360195787720345674559848843652666 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0 0.0446380089506605251666105582918334961 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0 0.0206644249796077747401272467272043228 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0 0.0151374965673229342823425196000504105 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0 0.0326990810501410584636629337705480245 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0 0.0446380089506605251666105582918334961 0.0 0.741531185599394439863864773280788407 0.0 0.0488617010556034604450561382571363764 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0 0.0446380089506605251666105582918334961 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0 0.0326990810501410584636629337705480245 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0 0.0151374965673229342823425196000504105 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0 0.00700765266076873832977473771086778464 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0 0.0151374965673229342823425196000504105 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0 0.0206644249796077747401272467272043228 0.0 0.949107912342758524526189684047851262 0.0 0.0226197131004562611396792425877386266 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0 0.0206644249796077747401272467272043228 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0 0.0151374965673229342823425196000504105 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0 0.00700765266076873832977473771086778464 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.0 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.0 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.0 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.949107912342758524526189684047851262 0.0 0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 -0.741531185599394439863864773280788407 0.0 0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 -0.405845151377397166906606412076961463 0.0 0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.0 0.0 0.405845151377397166906606412076961463 0.0667018454041575348305337672141820225 0.405845151377397166906606412076961463 0.0 0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.741531185599394439863864773280788407 0.0 0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 0.949107912342758524526189684047851262 0.0 0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.0 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0609360195787720345674559848843652666 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0556686019645424168951804105957335352 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.0 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.0 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.0 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.0 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.0 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 0.0 0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 -0.741531185599394439863864773280788407 0.0 0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 -0.405845151377397166906606412076961463 0.0 0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.0 0.0 0.741531185599394439863864773280788407 0.0488617010556034604450561382571363764 0.405845151377397166906606412076961463 0.0 0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.741531185599394439863864773280788407 0.0 0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 0.949107912342758524526189684047851262 0.0 0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.0 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0446380089506605251666105582918334961 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0407794202828053873202423228125181211 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.0 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0326990810501410584636629337705480245 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0298725144860093052185172792070689978 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0218827809598142258953565184861841572 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.0 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.0 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.0 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.0 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 0.0 0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 -0.741531185599394439863864773280788407 0.0 0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 -0.405845151377397166906606412076961463 0.0 0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.0 0.0 0.949107912342758524526189684047851262 0.0226197131004562611396792425877386266 0.405845151377397166906606412076961463 0.0 0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.741531185599394439863864773280788407 0.0 0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 0.949107912342758524526189684047851262 0.0 0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.0 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0206644249796077747401272467272043228 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0188781554320078627686883004842287017 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.0 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0151374965673229342823425196000504105 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0138289845147596216925795209975743219 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0101302700572754642988007781342098054 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.0 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00700765266076873832977473771086778464 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00640189873534176109182456539058172015 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.00468964029854288924219372722065502863 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0021709910994843095127624121579641952 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n512-d15-spu.txt000066400000000000000000002356601277740313300236160ustar00rootroot00000000000000-0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.0477072532166552173692812729909101784 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.041264823729466053745197378983069887 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0356923855936740511448685273917746355 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0308724544110392393963315875707413725 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.029251896024755698941425084425152606 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0253016942252463924221483437652842421 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0218849311554399713111342794582844967 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0179359188246954372035301238322019912 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0155138365515598967759966037376836962 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.010997481456033270916744354844993998 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.013315553754765629737618697970193968 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.011517409649541688710829555007461818 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00996208850780091511623790189286337154 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00816448585244619069516575591136215892 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00706194649297673666552484176100907857 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00500608765226431840699018593570680501 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00371649927089396874270089293725944736 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.003214619936462586678949733141751073 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00227878661876758503634056581131383978 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.00103731073336788283266187937088321442 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n64-d7-spu.txt000066400000000000000000000235201277740313300234470ustar00rootroot00000000000000-0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.277352966953912989901381113332991199 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.147940336056781300873703085593157542 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.07891151579507055097814876625869431 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.0420914774905314545430633311114532454 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n729-d17-spu.txt000066400000000000000000003204201277740313300236170ustar00rootroot00000000000000-0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.0 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.0 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.0 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.0 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 0.0 -0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 -0.836031107326635794299429788069734877 0.0 -0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 -0.613371432700590397308702039341474185 0.0 -0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 -0.324253423403808929038538014643336609 0.0 -0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.0 0.0 -0.96816023950762608983557620290367287 0.00886362481352845658640829975579982032 0.324253423403808929038538014643336609 0.0 -0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.613371432700590397308702039341474185 0.0 -0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 0.836031107326635794299429788069734877 0.0 -0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 0.96816023950762608983557620290367287 0.0 -0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.0 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.0 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.0 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.0 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.0 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.0 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.0 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.0 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 0.0 -0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 -0.836031107326635794299429788069734877 0.0 -0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 -0.613371432700590397308702039341474185 0.0 -0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 -0.324253423403808929038538014643336609 0.0 -0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.0 0.0 -0.836031107326635794299429788069734877 0.0197011328160328762526510424527554089 0.324253423403808929038538014643336609 0.0 -0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.613371432700590397308702039341474185 0.0 -0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 0.836031107326635794299429788069734877 0.0 -0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 0.96816023950762608983557620290367287 0.0 -0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.0 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.0 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.0 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.0 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.0 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.0 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.0 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.0 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 0.0 -0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 -0.836031107326635794299429788069734877 0.0 -0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 -0.613371432700590397308702039341474185 0.0 -0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 -0.324253423403808929038538014643336609 0.0 -0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.0 0.0 -0.613371432700590397308702039341474185 0.0284216895614327401447293864813409142 0.324253423403808929038538014643336609 0.0 -0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.613371432700590397308702039341474185 0.0 -0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 0.836031107326635794299429788069734877 0.0 -0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 0.96816023950762608983557620290367287 0.0 -0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.0 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.0 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.0 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.0 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.0 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.0 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.0 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.0 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.96816023950762608983557620290367287 0.0 -0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 -0.836031107326635794299429788069734877 0.0 -0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 -0.613371432700590397308702039341474185 0.0 -0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 -0.324253423403808929038538014643336609 0.0 -0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.0 0.0 -0.324253423403808929038538014643336609 0.0340639573953875638197005881444477291 0.324253423403808929038538014643336609 0.0 -0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.613371432700590397308702039341474185 0.0 -0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 0.836031107326635794299429788069734877 0.0 -0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 0.96816023950762608983557620290367287 0.0 -0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.0 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.0 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.0 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.0 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.0 0.0021814047129036189712509894169503546 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.0 0.00484859692039764925852412497080565849 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.0 0.00699479150599472999868787853774178316 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.0 0.00838339604458800055311201806297305685 0.0 -0.96816023950762608983557620290367287 0.0 0.00886362481352845658640829975579982032 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.0 0.00838339604458800055311201806297305685 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.0 0.00699479150599472999868787853774178316 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.0 0.00484859692039764925852412497080565849 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.0 0.0021814047129036189712509894169503546 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.0 0.00484859692039764925852412497080565849 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0 0.0107769511807817671942384073066518065 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.0 0.0155472867341733604081815226449209959 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0 0.0186337308266644198445571965372379585 0.0 -0.836031107326635794299429788069734877 0.0 0.0197011328160328762526510424527554089 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0 0.0186337308266644198445571965372379585 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.0 0.0155472867341733604081815226449209959 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0 0.0107769511807817671942384073066518065 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.0 0.00484859692039764925852412497080565849 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.0 0.00699479150599472999868787853774178316 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.0 0.0155472867341733604081815226449209959 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0 0.0224291750737121332527197103993235427 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0 0.0268818101919379412064242888544383203 0.0 -0.613371432700590397308702039341474185 0.0 0.0284216895614327401447293864813409142 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.0 0.0268818101919379412064242888544383203 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0 0.0224291750737121332527197103993235427 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.0 0.0155472867341733604081815226449209959 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.0 0.00699479150599472999868787853774178316 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.0 0.00838339604458800055311201806297305685 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0 0.0186337308266644198445571965372379585 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0 0.0268818101919379412064242888544383203 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0 0.0322183814973351869306909332663648954 0.0 -0.324253423403808929038538014643336609 0.0 0.0340639573953875638197005881444477291 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0 0.0322183814973351869306909332663648954 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.0 0.0268818101919379412064242888544383203 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0 0.0186337308266644198445571965372379585 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.0 0.00838339604458800055311201806297305685 -0.96816023950762608983557620290367287 0.0 0.0 0.00886362481352845658640829975579982032 -0.836031107326635794299429788069734877 0.0 0.0 0.0197011328160328762526510424527554089 -0.613371432700590397308702039341474185 0.0 0.0 0.0284216895614327401447293864813409142 -0.324253423403808929038538014643336609 0.0 0.0 0.0340639573953875638197005881444477291 0.0 0.0 0.0 0.0360152540105328698926466113884161226 0.324253423403808929038538014643336609 0.0 0.0 0.0340639573953875638197005881444477291 0.613371432700590397308702039341474185 0.0 0.0 0.0284216895614327401447293864813409142 0.836031107326635794299429788069734877 0.0 0.0 0.0197011328160328762526510424527554089 0.96816023950762608983557620290367287 0.0 0.0 0.00886362481352845658640829975579982032 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.0 0.00838339604458800055311201806297305685 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0 0.0186337308266644198445571965372379585 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0 0.0268818101919379412064242888544383203 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0 0.0322183814973351869306909332663648954 0.0 0.324253423403808929038538014643336609 0.0 0.0340639573953875638197005881444477291 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0 0.0322183814973351869306909332663648954 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0 0.0268818101919379412064242888544383203 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0 0.0186337308266644198445571965372379585 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.0 0.00838339604458800055311201806297305685 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.0 0.00699479150599472999868787853774178316 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.0 0.0155472867341733604081815226449209959 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0 0.0224291750737121332527197103993235427 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0 0.0268818101919379412064242888544383203 0.0 0.613371432700590397308702039341474185 0.0 0.0284216895614327401447293864813409142 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0 0.0268818101919379412064242888544383203 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0 0.0224291750737121332527197103993235427 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.0 0.0155472867341733604081815226449209959 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.0 0.00699479150599472999868787853774178316 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.0 0.00484859692039764925852412497080565849 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0 0.0107769511807817671942384073066518065 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.0 0.0155472867341733604081815226449209959 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0 0.0186337308266644198445571965372379585 0.0 0.836031107326635794299429788069734877 0.0 0.0197011328160328762526510424527554089 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0 0.0186337308266644198445571965372379585 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.0 0.0155472867341733604081815226449209959 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0 0.0107769511807817671942384073066518065 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.0 0.00484859692039764925852412497080565849 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.0 0.0021814047129036189712509894169503546 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.0 0.00484859692039764925852412497080565849 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.0 0.00699479150599472999868787853774178316 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.0 0.00838339604458800055311201806297305685 0.0 0.96816023950762608983557620290367287 0.0 0.00886362481352845658640829975579982032 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.0 0.00838339604458800055311201806297305685 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.0 0.00699479150599472999868787853774178316 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.0 0.00484859692039764925852412497080565849 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.0 0.0021814047129036189712509894169503546 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.0 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.0 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.0 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.0 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.96816023950762608983557620290367287 0.0 0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 -0.836031107326635794299429788069734877 0.0 0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 -0.613371432700590397308702039341474185 0.0 0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 -0.324253423403808929038538014643336609 0.0 0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.0 0.0 0.324253423403808929038538014643336609 0.0340639573953875638197005881444477291 0.324253423403808929038538014643336609 0.0 0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.613371432700590397308702039341474185 0.0 0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 0.836031107326635794299429788069734877 0.0 0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 0.96816023950762608983557620290367287 0.0 0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.0 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0322183814973351869306909332663648954 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.030472798396829376015519443144929547 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.0 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.0 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.0 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.0 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.0 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.0 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.0 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 0.0 0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 -0.836031107326635794299429788069734877 0.0 0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 -0.613371432700590397308702039341474185 0.0 0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 -0.324253423403808929038538014643336609 0.0 0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.0 0.0 0.613371432700590397308702039341474185 0.0284216895614327401447293864813409142 0.324253423403808929038538014643336609 0.0 0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.613371432700590397308702039341474185 0.0 0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 0.836031107326635794299429788069734877 0.0 0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 0.96816023950762608983557620290367287 0.0 0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.0 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0268818101919379412064242888544383203 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0254253610656547694679593557841511045 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.0 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0224291750737121332527197103993235427 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0212139685007129162064161876704687405 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0177001403593499096846244057425529003 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.0 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.0 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.0 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.0 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.0 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.0 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 0.0 0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 -0.836031107326635794299429788069734877 0.0 0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 -0.613371432700590397308702039341474185 0.0 0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 -0.324253423403808929038538014643336609 0.0 0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.0 0.0 0.836031107326635794299429788069734877 0.0197011328160328762526510424527554089 0.324253423403808929038538014643336609 0.0 0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.613371432700590397308702039341474185 0.0 0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 0.836031107326635794299429788069734877 0.0 0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 0.96816023950762608983557620290367287 0.0 0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.0 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0186337308266644198445571965372379585 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0176241603852352033706891126809070669 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.0 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.0155472867341733604081815226449209959 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.014704938989792225154434948654072222 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.012269250050326628270581145065163974 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.0 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0107769511807817671942384073066518065 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0101930589123974983913574930494273065 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00850470638883503167931486043736346889 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00589522835247504445618094995964773251 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.0 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.0 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.0 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.0 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.0 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 0.0 0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 -0.836031107326635794299429788069734877 0.0 0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 -0.613371432700590397308702039341474185 0.0 0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 -0.324253423403808929038538014643336609 0.0 0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.0 0.0 0.96816023950762608983557620290367287 0.00886362481352845658640829975579982032 0.324253423403808929038538014643336609 0.0 0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.613371432700590397308702039341474185 0.0 0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 0.836031107326635794299429788069734877 0.0 0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 0.96816023950762608983557620290367287 0.0 0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.0 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00838339604458800055311201806297305685 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00792918593904652701635722275033132143 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.0 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00699479150599472999868787853774178316 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00661581561468759245126136192544260385 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00551998863237747793031409920462571335 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.0 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00484859692039764925852412497080565849 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00458590126493430173168014966653730466 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00382630416655561653062282750318732926 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00265228871833656536993331458610367664 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.0 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.0021814047129036189712509894169503546 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00206321680198937158086339603960866151 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00172147078401448849738736035188433947 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00119327615909263447766962367100614853 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.000536860101999718188140997326709356525 pyfr-1.5.0/pyfr/quadrules/hex/gauss-legendre-n8-d3-spu.txt000066400000000000000000000017241277740313300233630ustar00rootroot00000000000000-0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 1.0 0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 1.0 -0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 1.0 0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 1.0 -0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 1.0 0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 1.0 -0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 1.0 0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 1.0 pyfr-1.5.0/pyfr/quadrules/hex/witherden-vincent-n1-d1-sp.txt000066400000000000000000000000131277740313300237030ustar00rootroot000000000000000 0 0 8 pyfr-1.5.0/pyfr/quadrules/hex/witherden-vincent-n14-d5-sp.txt000066400000000000000000000045321277740313300240050ustar00rootroot00000000000000-0.79582242575422146326454882047613584616 0 0 0.88642659279778393351800554016620498615 0 0 0.79582242575422146326454882047613584616 0.88642659279778393351800554016620498615 0 0.79582242575422146326454882047613584616 0 0.88642659279778393351800554016620498615 0 0 -0.79582242575422146326454882047613584616 0.88642659279778393351800554016620498615 0.79582242575422146326454882047613584616 0 0 0.88642659279778393351800554016620498615 0 -0.79582242575422146326454882047613584616 0 0.88642659279778393351800554016620498615 0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 -0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 -0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 -0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 -0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 0.75878691063932814626903427811226742764 -0.75878691063932814626903427811226742764 0.75878691063932814626903427811226742764 0.33518005540166204986149584487534626039 pyfr-1.5.0/pyfr/quadrules/hex/witherden-vincent-n34-d7-sp.txt000066400000000000000000000132661277740313300240150ustar00rootroot00000000000000-0.98808616118867654860459729594655654482 0 0 0.20012989098356700695575850638756794678 0 0 0.98808616118867654860459729594655654482 0.20012989098356700695575850638756794678 0 0.98808616118867654860459729594655654482 0 0.20012989098356700695575850638756794678 0 0 -0.98808616118867654860459729594655654482 0.20012989098356700695575850638756794678 0.98808616118867654860459729594655654482 0 0 0.20012989098356700695575850638756794678 0 -0.98808616118867654860459729594655654482 0 0.20012989098356700695575850638756794678 0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 -0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 -0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 -0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 -0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 0.40795516735831936633080916251520586856 -0.40795516735831936633080916251520586856 0.40795516735831936633080916251520586856 0.45715385606985274296912190785204854361 0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 -0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 -0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 -0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 -0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 0.78110282100411850665136814715928740203 -0.78110282100411850665136814715928740203 0.78110282100411850665136814715928740203 0.15379614006595869408326783499527494637 -0.84805227568403872779622085759407839383 -0.84805227568403872779622085759407839383 0 0.15930172375100887182052758490800036662 0.84805227568403872779622085759407839383 0 -0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 0 0.84805227568403872779622085759407839383 -0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 0.84805227568403872779622085759407839383 0.84805227568403872779622085759407839383 0 0.15930172375100887182052758490800036662 0.84805227568403872779622085759407839383 0 0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 0 -0.84805227568403872779622085759407839383 0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 0 -0.84805227568403872779622085759407839383 -0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 -0.84805227568403872779622085759407839383 0 0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 -0.84805227568403872779622085759407839383 0.84805227568403872779622085759407839383 0 0.15930172375100887182052758490800036662 0.84805227568403872779622085759407839383 -0.84805227568403872779622085759407839383 0 0.15930172375100887182052758490800036662 0 0.84805227568403872779622085759407839383 0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 -0.84805227568403872779622085759407839383 0 -0.84805227568403872779622085759407839383 0.15930172375100887182052758490800036662 pyfr-1.5.0/pyfr/quadrules/hex/witherden-vincent-n58-d9-sp.txt000066400000000000000000000232761277740313300240270ustar00rootroot00000000000000-0.61368146959170899383488488974055688452 0 0 0.43327499574965454300983079319432200813 0 0 0.61368146959170899383488488974055688452 0.43327499574965454300983079319432200813 0 0.61368146959170899383488488974055688452 0 0.43327499574965454300983079319432200813 0 0 -0.61368146959170899383488488974055688452 0.43327499574965454300983079319432200813 0.61368146959170899383488488974055688452 0 0 0.43327499574965454300983079319432200813 0 -0.61368146959170899383488488974055688452 0 0.43327499574965454300983079319432200813 0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 -0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 -0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 -0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 -0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 0.87009978466197591761506380886392483306 -0.87009978466197591761506380886392483306 0.87009978466197591761506380886392483306 0.050148795299349029867451487724661687604 0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 -0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 -0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 -0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 -0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 0.56411080702003005426661899866307283066 -0.56411080702003005426661899866307283066 0.56411080702003005426661899866307283066 0.19885983814402350032086871858560920797 -0.87768712325767828648677575899433236264 -0.87768712325767828648677575899433236264 0 0.091789806136177642171244588919646331302 0.87768712325767828648677575899433236264 0 -0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 0 0.87768712325767828648677575899433236264 -0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 0.87768712325767828648677575899433236264 0.87768712325767828648677575899433236264 0 0.091789806136177642171244588919646331302 0.87768712325767828648677575899433236264 0 0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 0 -0.87768712325767828648677575899433236264 0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 0 -0.87768712325767828648677575899433236264 -0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 -0.87768712325767828648677575899433236264 0 0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 -0.87768712325767828648677575899433236264 0.87768712325767828648677575899433236264 0 0.091789806136177642171244588919646331302 0.87768712325767828648677575899433236264 -0.87768712325767828648677575899433236264 0 0.091789806136177642171244588919646331302 0 0.87768712325767828648677575899433236264 0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 -0.87768712325767828648677575899433236264 0 -0.87768712325767828648677575899433236264 0.091789806136177642171244588919646331302 0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 -0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 -0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 -0.43226790263086216441602486151694383909 0.93853042186467174532897686960307879508 0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 -0.93853042186467174532897686960307879508 0.09611680351337336643247993847150603379 -0.93853042186467174532897686960307879508 -0.43226790263086216441602486151694383909 -0.43226790263086216441602486151694383909 0.09611680351337336643247993847150603379 pyfr-1.5.0/pyfr/quadrules/hex/witherden-vincent-n6-d3-sp.txt000066400000000000000000000017221277740313300237220ustar00rootroot00000000000000 -1 0 0 1.3333333333333333333333333333333333333 0 0 1 1.3333333333333333333333333333333333333 0 1 0 1.3333333333333333333333333333333333333 0 0 -1 1.3333333333333333333333333333333333333 1 0 0 1.3333333333333333333333333333333333333 0 -1 0 1.3333333333333333333333333333333333333 pyfr-1.5.0/pyfr/quadrules/hex/witherden-vincent-n90-d11-sp.txt000066400000000000000000000360361277740313300240720ustar00rootroot00000000000000-0.81261433409962649639237559737974432611 0 0 0.2024770736128001905853371309670196589 0 0 0.81261433409962649639237559737974432611 0.2024770736128001905853371309670196589 0 0.81261433409962649639237559737974432611 0 0.2024770736128001905853371309670196589 0 0 -0.81261433409962649639237559737974432611 0.2024770736128001905853371309670196589 0.81261433409962649639237559737974432611 0 0 0.2024770736128001905853371309670196589 0 -0.81261433409962649639237559737974432611 0 0.2024770736128001905853371309670196589 0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 -0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 -0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 -0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 -0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 0.60167526419826270163441300578531749659 -0.60167526419826270163441300578531749659 0.60167526419826270163441300578531749659 0.11753834795645628038993180401068212711 0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 -0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 -0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 -0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 -0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 0.85545576101775998467509147069034657598 -0.85545576101775998467509147069034657598 0.85545576101775998467509147069034657598 0.044643912078829241641001154282130043664 0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 -0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 -0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 -0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 -0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 0.31339340451605472104577323055795129941 -0.31339340451605472104577323055795129941 0.31339340451605472104577323055795129941 0.21599204525496912931346666638444131361 -0.73466828699700801734638476986754918792 -0.73466828699700801734638476986754918792 0 0.14519934586011569829250580079425982305 0.73466828699700801734638476986754918792 0 -0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 0 0.73466828699700801734638476986754918792 -0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 0.73466828699700801734638476986754918792 0.73466828699700801734638476986754918792 0 0.14519934586011569829250580079425982305 0.73466828699700801734638476986754918792 0 0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 0 -0.73466828699700801734638476986754918792 0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 0 -0.73466828699700801734638476986754918792 -0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 -0.73466828699700801734638476986754918792 0 0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 -0.73466828699700801734638476986754918792 0.73466828699700801734638476986754918792 0 0.14519934586011569829250580079425982305 0.73466828699700801734638476986754918792 -0.73466828699700801734638476986754918792 0 0.14519934586011569829250580079425982305 0 0.73466828699700801734638476986754918792 0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 -0.73466828699700801734638476986754918792 0 -0.73466828699700801734638476986754918792 0.14519934586011569829250580079425982305 0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 -0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 -0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 -0.45079993511450943037788434573026952398 0.96509966551271026293028182312534456821 0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 -0.96509966551271026293028182312534456821 0.061441994097835335202750044633046200824 -0.96509966551271026293028182312534456821 -0.45079993511450943037788434573026952398 -0.45079993511450943037788434573026952398 0.061441994097835335202750044633046200824 0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 -0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 -0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 -0.94124485721060326391115015763113464139 0.35390281459663013491031287081289167626 0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 -0.35390281459663013491031287081289167626 0.022614296138821884223196230668984478131 -0.35390281459663013491031287081289167626 -0.94124485721060326391115015763113464139 -0.94124485721060326391115015763113464139 0.022614296138821884223196230668984478131 pyfr-1.5.0/pyfr/quadrules/line/000077500000000000000000000000001277740313300164205ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n10-d17-spu.txt000066400000000000000000000011371277740313300253240ustar00rootroot00000000000000-1.0 0.0222222222222222222222222222222 -0.919533908166458813828932660822 0.133305990851070111126227170755 -0.73877386510550507500310617486 0.224889342063126452119457821731 -0.477924949810444495661175092731 0.292042683679683757875582257374 -0.165278957666387024626219765958 0.327539761183897456656510527917 0.165278957666387024626219765958 0.327539761183897456656510527917 0.477924949810444495661175092731 0.292042683679683757875582257374 0.73877386510550507500310617486 0.224889342063126452119457821731 0.919533908166458813828932660822 0.133305990851070111126227170755 1.0 0.0222222222222222222222222222222 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n11-d19-spu.txt000066400000000000000000000012031277740313300253210ustar00rootroot00000000000000-1.0 0.0181818181818181818181818181818 -0.934001430408059134332274136099 0.10961227326699486446140344958 -0.784483473663144418622417816108 0.187169881780305204108141521899 -0.565235326996205006470963969478 0.248048104264028314040084866422 -0.295758135586939391431911515559 0.286879124779008088679222403332 0.0 0.30021759545569069378593188117 0.295758135586939391431911515559 0.286879124779008088679222403332 0.565235326996205006470963969478 0.248048104264028314040084866422 0.784483473663144418622417816108 0.187169881780305204108141521899 0.934001430408059134332274136099 0.10961227326699486446140344958 1.0 0.0181818181818181818181818181818 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n12-d21-spu.txt000066400000000000000000000013361277740313300253220ustar00rootroot00000000000000-1.0 0.0151515151515151515151515151515 -0.944899272222882223407580138303 0.0916845174131961306683425941341 -0.819279321644006678348641581717 0.1579747055643701151646710627 -0.632876153031860677662404854444 0.212508417761021145358302077367 -0.399530940965348932264349791567 0.251275603199201280293244412148 -0.13655293285492755486406185574 0.2714052409106961770002883385 0.13655293285492755486406185574 0.2714052409106961770002883385 0.399530940965348932264349791567 0.251275603199201280293244412148 0.632876153031860677662404854444 0.212508417761021145358302077367 0.819279321644006678348641581717 0.1579747055643701151646710627 0.944899272222882223407580138303 0.0916845174131961306683425941341 1.0 0.0151515151515151515151515151515 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n13-d23-spu.txt000066400000000000000000000014131277740313300253210ustar00rootroot00000000000000-1.0 0.0128205128205128205128205128205 -0.953309846642163911896905464755 0.0778016867468189277935889883331 -0.846347564651872316865925607099 0.134981926689608349119914762589 -0.686188469081757426072759039566 0.183646865203550092007494258747 -0.482909821091336201746937233637 0.220767793566110086085534008379 -0.249286930106239992568673700374 0.24401579030667635645857814836 0.0 0.251930849333446736044138641541 0.249286930106239992568673700374 0.24401579030667635645857814836 0.482909821091336201746937233637 0.220767793566110086085534008379 0.686188469081757426072759039566 0.183646865203550092007494258747 0.846347564651872316865925607099 0.134981926689608349119914762589 0.953309846642163911896905464755 0.0778016867468189277935889883331 1.0 0.0128205128205128205128205128205 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n14-d25-spu.txt000066400000000000000000000015531277740313300253310ustar00rootroot00000000000000-1.0 0.010989010989010989010989010989 -0.959935045267260901355100162015 0.0668372844976812846340706607461 -0.867801053830347251000220202908 0.116586655898711651540996670655 -0.728868599091326140584672400521 0.160021851762952142412820997988 -0.550639402928647055316622705859 0.194826149373416118640331778376 -0.342724013342712845043903403642 0.219126253009770754871162523954 -0.116331868883703867658776709736 0.231612794468457058889628357293 0.116331868883703867658776709736 0.231612794468457058889628357293 0.342724013342712845043903403642 0.219126253009770754871162523954 0.550639402928647055316622705859 0.194826149373416118640331778376 0.728868599091326140584672400521 0.160021851762952142412820997988 0.867801053830347251000220202908 0.116586655898711651540996670655 0.959935045267260901355100162015 0.0668372844976812846340706607461 1.0 0.010989010989010989010989010989 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n15-d27-spu.txt000066400000000000000000000016221277740313300253310ustar00rootroot00000000000000-1.0 0.00952380952380952380952380952381 -0.96524592650383857279585139207 0.0580298930286012490968805840253 -0.885082044222976298825401631482 0.101660070325718067603666170789 -0.763519689951815200704118475976 0.140511699802428109460446805644 -0.606253205469845711123529938637 0.172789647253600949052077099408 -0.420638054713672480921896938739 0.196987235964613356092500346507 -0.215353955363794238225679446273 0.211973585926820920127430076977 0.0 0.217048116348815649514950214251 0.215353955363794238225679446273 0.211973585926820920127430076977 0.420638054713672480921896938739 0.196987235964613356092500346507 0.606253205469845711123529938637 0.172789647253600949052077099408 0.763519689951815200704118475976 0.140511699802428109460446805644 0.885082044222976298825401631482 0.101660070325718067603666170789 0.96524592650383857279585139207 0.0580298930286012490968805840253 1.0 0.00952380952380952380952380952381 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n16-d29-spu.txt000066400000000000000000000017641277740313300253430ustar00rootroot00000000000000-1.0 0.00833333333333333333333333333333 -0.969568046270217932952242738367 0.0508503610059199054032449195655 -0.89920053309347209299462826152 0.0893936973259308009910520801661 -0.792008291861815063931088270963 0.124255382132514098349536332657 -0.652388702882493089467883219641 0.154026980807164280815644940485 -0.486059421887137611781890785847 0.177491913391704125301075669528 -0.299830468900763208098353454722 0.193690023825203584316913598854 -0.101326273521949447843033005046 0.201958308178229871489199125411 0.101326273521949447843033005046 0.201958308178229871489199125411 0.299830468900763208098353454722 0.193690023825203584316913598854 0.486059421887137611781890785847 0.177491913391704125301075669528 0.652388702882493089467883219641 0.154026980807164280815644940485 0.792008291861815063931088270963 0.124255382132514098349536332657 0.89920053309347209299462826152 0.0893936973259308009910520801661 0.969568046270217932952242738367 0.0508503610059199054032449195655 1.0 0.00833333333333333333333333333333 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n17-d31-spu.txt000066400000000000000000000020311277740313300253210ustar00rootroot00000000000000-1.0 0.00735294117647058823529411764706 -0.973132176631418314156979501874 0.0449219405432542096474009546232 -0.910879995915573595623802506398 0.0791982705036871191902644299528 -0.815696251221770307106750553238 0.11059290900702816137577270522 -0.691028980627684705394919357372 0.137987746201926559056201574954 -0.541385399330101539123733407504 0.160394661997621539516328365865 -0.372174433565477041907234680735 0.177004253515657870436945745363 -0.189511973518317388304263014753 0.187216339677619235892088482861 0.0 0.190661874753469433299407247028 0.189511973518317388304263014753 0.187216339677619235892088482861 0.372174433565477041907234680735 0.177004253515657870436945745363 0.541385399330101539123733407504 0.160394661997621539516328365865 0.691028980627684705394919357372 0.137987746201926559056201574954 0.815696251221770307106750553238 0.11059290900702816137577270522 0.910879995915573595623802506398 0.0791982705036871191902644299528 0.973132176631418314156979501874 0.0449219405432542096474009546232 1.0 0.00735294117647058823529411764706 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n18-d33-spu.txt000066400000000000000000000021731277740313300253330ustar00rootroot00000000000000-1.0 0.00653594771241830065359477124183 -0.976105557412198542864518924342 0.0399706288109140661375991764101 -0.920649185347533873837854625431 0.0706371668856336649992229601678 -0.835593535218090213713646362328 0.0990162717175028023944236053187 -0.723679329283242681306210365302 0.124210533132967100263396358897 -0.588504834318661761173535893194 0.145411961573802267983003210494 -0.434415036912123975342287136741 0.1619395172376024892643267067 -0.266362652878280984167665332026 0.173262109489456226010614403827 -0.0897490934846521110226450100886 0.179015863439703082293818806944 0.0897490934846521110226450100886 0.179015863439703082293818806944 0.266362652878280984167665332026 0.173262109489456226010614403827 0.434415036912123975342287136741 0.1619395172376024892643267067 0.588504834318661761173535893194 0.145411961573802267983003210494 0.723679329283242681306210365302 0.124210533132967100263396358897 0.835593535218090213713646362328 0.0990162717175028023944236053187 0.920649185347533873837854625431 0.0706371668856336649992229601678 0.976105557412198542864518924342 0.0399706288109140661375991764101 1.0 0.00653594771241830065359477124183 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n19-d35-spu.txt000066400000000000000000000022341277740313300253340ustar00rootroot00000000000000-1.0 0.00584795321637426900584795321637 -0.97861176622208009515263406311 0.0357933651861764771154255690351 -0.928901528152586243717940258797 0.0633818917626297368516956904183 -0.852460577796646093085955970041 0.0891317570992070844480087905562 -0.751494202552613014163637489634 0.112315341477305044070910015464 -0.628908137265220497766832306229 0.13226728044875077692604673391 -0.488229285680713502777909637625 0.148413942595938885009680643668 -0.333504847824498610298500103845 0.160290924044061241979910968184 -0.169186023409281571375154153445 0.16755658452714286727013727774 0.0 0.170001919284827234644672715617 0.169186023409281571375154153445 0.16755658452714286727013727774 0.333504847824498610298500103845 0.160290924044061241979910968184 0.488229285680713502777909637625 0.148413942595938885009680643668 0.628908137265220497766832306229 0.13226728044875077692604673391 0.751494202552613014163637489634 0.112315341477305044070910015464 0.852460577796646093085955970041 0.0891317570992070844480087905562 0.928901528152586243717940258797 0.0633818917626297368516956904183 0.97861176622208009515263406311 0.0357933651861764771154255690351 1.0 0.00584795321637426900584795321637 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n2-d1-spu.txt000066400000000000000000000000211277740313300251450ustar00rootroot00000000000000-1.0 1.0 1.0 1.0 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n20-d37-spu.txt000066400000000000000000000024041277740313300253250ustar00rootroot00000000000000-1.0 0.00526315789473684210526315789474 -0.980743704893914171925446438584 0.0322371231884889414916050281173 -0.935934498812665435716181584931 0.0571818021275668260047536271732 -0.866877978089950141309847214616 0.0806317639961196031447768461137 -0.775368260952055870414317527595 0.101991499699450815683781205733 -0.663776402290311289846403322971 0.120709227628674725099429705002 -0.534992864031886261648135961829 0.136300482358724184489780792989 -0.392353183713909299386474703816 0.148361554070916825814713013734 -0.239551705922986495182401356927 0.156580102647475487158169896794 -0.0805459372388218379759445181596 0.160743286387845749007726726449 0.0805459372388218379759445181596 0.160743286387845749007726726449 0.239551705922986495182401356927 0.156580102647475487158169896794 0.392353183713909299386474703816 0.148361554070916825814713013734 0.534992864031886261648135961829 0.136300482358724184489780792989 0.663776402290311289846403322971 0.120709227628674725099429705002 0.775368260952055870414317527595 0.101991499699450815683781205733 0.866877978089950141309847214616 0.0806317639961196031447768461137 0.935934498812665435716181584931 0.0571818021275668260047536271732 0.980743704893914171925446438584 0.0322371231884889414916050281173 1.0 0.00526315789473684210526315789474 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n3-d3-spu.txt000066400000000000000000000001571277740313300251620ustar00rootroot00000000000000-1.0 0.333333333333333333333333333333 0.0 1.33333333333333333333333333333 1.0 0.333333333333333333333333333333 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n4-d5-spu.txt000066400000000000000000000003201277740313300251550ustar00rootroot00000000000000-1.0 0.166666666666666666666666666667 -0.447213595499957939281834733746 0.833333333333333333333333333333 0.447213595499957939281834733746 0.833333333333333333333333333333 1.0 0.166666666666666666666666666667 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n5-d7-spu.txt000066400000000000000000000002731277740313300251670ustar00rootroot00000000000000-1.0 0.1 -0.654653670707977143798292456247 0.544444444444444444444444444444 0.0 0.711111111111111111111111111111 0.654653670707977143798292456247 0.544444444444444444444444444444 1.0 0.1 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n6-d9-spu.txt000066400000000000000000000005271277740313300251740ustar00rootroot00000000000000-1.0 0.0666666666666666666666666666667 -0.765055323929464692851002973959 0.378474956297846980316612808212 -0.285231516480645096314150994041 0.554858377035486353016720525121 0.285231516480645096314150994041 0.554858377035486353016720525121 0.765055323929464692851002973959 0.378474956297846980316612808212 1.0 0.0666666666666666666666666666667 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n7-d11-spu.txt000066400000000000000000000005701277740313300252440ustar00rootroot00000000000000-1.0 0.047619047619047619047619047619 -0.830223896278566929872032213967 0.27682604736156594801070040629 -0.468848793470714213803771881909 0.431745381209862623417871022281 0.0 0.487619047619047619047619047619 0.468848793470714213803771881909 0.431745381209862623417871022281 0.830223896278566929872032213967 0.27682604736156594801070040629 1.0 0.047619047619047619047619047619 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n8-d13-spu.txt000066400000000000000000000007341277740313300252510ustar00rootroot00000000000000-1.0 0.0357142857142857142857142857143 -0.871740148509606615337445761221 0.210704227143506039382992065776 -0.591700181433142302144510731398 0.341122692483504364764240677108 -0.209299217902478868768657260345 0.412458794658703881567052971402 0.209299217902478868768657260345 0.412458794658703881567052971402 0.591700181433142302144510731398 0.341122692483504364764240677108 0.871740148509606615337445761221 0.210704227143506039382992065776 1.0 0.0357142857142857142857142857143 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-lobatto-n9-d15-spu.txt000066400000000000000000000007771277740313300252630ustar00rootroot00000000000000-1.0 0.0277777777777777777777777777778 -0.899757995411460157312345244418 0.165495361560805525046339720029 -0.677186279510737753445885427091 0.274538712500161735280705618579 -0.363117463826178158710752068709 0.34642851097304634511513153214 0.0 0.371519274376417233560090702948 0.363117463826178158710752068709 0.34642851097304634511513153214 0.677186279510737753445885427091 0.274538712500161735280705618579 0.899757995411460157312345244418 0.165495361560805525046339720029 1.0 0.0277777777777777777777777777778 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n1-d1-spu.txt000066400000000000000000000000101277740313300235000ustar00rootroot000000000000000.0 2.0 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n10-d19-spu.txt000066400000000000000000000012311277740313300236570ustar00rootroot00000000000000-0.973906528517171720077964012084 0.0666713443086881375935688098933 -0.865063366688984510732096688423 0.149451349150580593145776339658 -0.679409568299024406234327365115 0.219086362515982043995534934228 -0.433395394129247190799265943166 0.269266719309996355091226921569 -0.14887433898163121088482600113 0.295524224714752870173892994651 0.14887433898163121088482600113 0.295524224714752870173892994651 0.433395394129247190799265943166 0.269266719309996355091226921569 0.679409568299024406234327365115 0.219086362515982043995534934228 0.865063366688984510732096688423 0.149451349150580593145776339658 0.973906528517171720077964012084 0.0666713443086881375935688098933 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n11-d21-spu.txt000066400000000000000000000013001277740313300236460ustar00rootroot00000000000000-0.978228658146056992803938001123 0.0556685671161736664827537204425 -0.887062599768095299075157769304 0.125580369464904624634694299224 -0.730152005574049324093416252031 0.186290210927734251426097641432 -0.519096129206811815925725669459 0.233193764591990479918523704843 -0.269543155952344972331531985401 0.262804544510246662180688869891 0.0 0.272925086777900630714483528336 0.269543155952344972331531985401 0.262804544510246662180688869891 0.519096129206811815925725669459 0.233193764591990479918523704843 0.730152005574049324093416252031 0.186290210927734251426097641432 0.887062599768095299075157769304 0.125580369464904624634694299224 0.978228658146056992803938001123 0.0556685671161736664827537204425 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n12-d23-spu.txt000066400000000000000000000014341277740313300236610ustar00rootroot00000000000000-0.981560634246719250690549090149 0.047175336386511827194615961485 -0.904117256370474856678465866119 0.106939325995318430960254718194 -0.769902674194304687036893833213 0.160078328543346226334652529543 -0.587317954286617447296702418941 0.20316742672306592174906445581 -0.367831498998180193752691536644 0.233492536538354808760849898925 -0.125233408511468915472441369464 0.249147045813402785000562436043 0.125233408511468915472441369464 0.249147045813402785000562436043 0.367831498998180193752691536644 0.233492536538354808760849898925 0.587317954286617447296702418941 0.20316742672306592174906445581 0.769902674194304687036893833213 0.160078328543346226334652529543 0.904117256370474856678465866119 0.106939325995318430960254718194 0.981560634246719250690549090149 0.047175336386511827194615961485 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n13-d25-spu.txt000066400000000000000000000015031277740313300236610ustar00rootroot00000000000000-0.984183054718588149472829448807 0.040484004765315879520021592201 -0.917598399222977965206547836501 0.0921214998377284479144217759538 -0.801578090733309912794206489583 0.138873510219787238463601776869 -0.642349339440340220643984606996 0.178145980761945738280046691996 -0.448492751036446852877912852128 0.207816047536888502312523219306 -0.230458315955134794065528121098 0.22628318026289723841209018604 0.0 0.232551553230873910194589515269 0.230458315955134794065528121098 0.22628318026289723841209018604 0.448492751036446852877912852128 0.207816047536888502312523219306 0.642349339440340220643984606996 0.178145980761945738280046691996 0.801578090733309912794206489583 0.138873510219787238463601776869 0.917598399222977965206547836501 0.0921214998377284479144217759538 0.984183054718588149472829448807 0.040484004765315879520021592201 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n14-d27-spu.txt000066400000000000000000000016431277740313300236710ustar00rootroot00000000000000-0.986283808696812338841597266704 0.0351194603317518630318328761382 -0.928434883663573517336391139378 0.0801580871597602098056332770629 -0.82720131506976499318979474265 0.121518570687903184689414809072 -0.687292904811685470148019803019 0.157203167158193534569601938624 -0.515248636358154091965290718551 0.185538397477937813741716590125 -0.319112368927889760435671824168 0.205198463721295603965924065661 -0.10805494870734366206624465022 0.215263853463157790195876443316 0.10805494870734366206624465022 0.215263853463157790195876443316 0.319112368927889760435671824168 0.205198463721295603965924065661 0.515248636358154091965290718551 0.185538397477937813741716590125 0.687292904811685470148019803019 0.157203167158193534569601938624 0.82720131506976499318979474265 0.121518570687903184689414809072 0.928434883663573517336391139378 0.0801580871597602098056332770629 0.986283808696812338841597266704 0.0351194603317518630318328761382 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n15-d29-spu.txt000066400000000000000000000017121277740313300236710ustar00rootroot00000000000000-0.987992518020485428489565718587 0.0307532419961172683546283935772 -0.93727339240070590430775894771 0.0703660474881081247092674164507 -0.848206583410427216200648320774 0.107159220467171935011869546686 -0.724417731360170047416186054614 0.139570677926154314447804794511 -0.570972172608538847537226737254 0.166269205816993933553200860481 -0.394151347077563369897207370981 0.186161000015562211026800561866 -0.201194093997434522300628303395 0.198431485327111576456118326444 0.0 0.202578241925561272880620199968 0.201194093997434522300628303395 0.198431485327111576456118326444 0.394151347077563369897207370981 0.186161000015562211026800561866 0.570972172608538847537226737254 0.166269205816993933553200860481 0.724417731360170047416186054614 0.139570677926154314447804794511 0.848206583410427216200648320774 0.107159220467171935011869546686 0.93727339240070590430775894771 0.0703660474881081247092674164507 0.987992518020485428489565718587 0.0307532419961172683546283935772 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n16-d31-spu.txt000066400000000000000000000020461277740313300236640ustar00rootroot00000000000000-0.98940093499164993259615417345 0.027152459411754094851780572456 -0.944575023073232576077988415535 0.0622535239386478928628438369944 -0.865631202387831743880467897712 0.0951585116824927848099251076022 -0.755404408355003033895101194847 0.124628971255533872052476282192 -0.617876244402643748446671764049 0.149595988816576732081501730547 -0.458016777657227386342419442984 0.16915651939500253818931207903 -0.28160355077925891323046050146 0.182603415044923588866763667969 -0.095012509837637440185319335425 0.189450610455068496285396723208 0.095012509837637440185319335425 0.189450610455068496285396723208 0.28160355077925891323046050146 0.182603415044923588866763667969 0.458016777657227386342419442984 0.16915651939500253818931207903 0.617876244402643748446671764049 0.149595988816576732081501730547 0.755404408355003033895101194847 0.124628971255533872052476282192 0.865631202387831743880467897712 0.0951585116824927848099251076022 0.944575023073232576077988415535 0.0622535239386478928628438369944 0.98940093499164993259615417345 0.027152459411754094851780572456 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n17-d33-spu.txt000066400000000000000000000021171277740313300236660ustar00rootroot00000000000000-0.990575475314417335675434019941 0.0241483028685479319601100262876 -0.950675521768767761222716957896 0.0554595293739872011294401653582 -0.880239153726985902122955694488 0.0850361483171791808835353701911 -0.78151400389680140692523005552 0.111883847193403971094788385626 -0.657671159216690765850302216643 0.135136368468525473286319981702 -0.51269053708647696788624656863 0.154045761076810288081431594802 -0.351231763453876315297185517095 0.168004102156450044509970663788 -0.178484181495847855850677493654 0.176562705366992646325270990113 0.0 0.179446470356206525458265644262 0.178484181495847855850677493654 0.176562705366992646325270990113 0.351231763453876315297185517095 0.168004102156450044509970663788 0.51269053708647696788624656863 0.154045761076810288081431594802 0.657671159216690765850302216643 0.135136368468525473286319981702 0.78151400389680140692523005552 0.111883847193403971094788385626 0.880239153726985902122955694488 0.0850361483171791808835353701911 0.950675521768767761222716957896 0.0554595293739872011294401653582 0.990575475314417335675434019941 0.0241483028685479319601100262876 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n18-d35-spu.txt000066400000000000000000000022571277740313300236760ustar00rootroot00000000000000-0.991565168420930946730016004706 0.0216160135264833103133427102665 -0.95582394957139775518119589293 0.0497145488949697964533349462026 -0.892602466497555739206060591127 0.0764257302548890565291296776166 -0.803704958972523115682417455015 0.100942044106287165562813984925 -0.691687043060353207874891081289 0.1225552067114784601845191268 -0.559770831073947534607871548525 0.140642914670650651204731303752 -0.411751161462842646035931793833 0.154684675126265244925418003836 -0.251886225691505509588972854878 0.164276483745832722986053776466 -0.0847750130417353012422618529358 0.169142382963143591840656470135 0.0847750130417353012422618529358 0.169142382963143591840656470135 0.251886225691505509588972854878 0.164276483745832722986053776466 0.411751161462842646035931793833 0.154684675126265244925418003836 0.559770831073947534607871548525 0.140642914670650651204731303752 0.691687043060353207874891081289 0.1225552067114784601845191268 0.803704958972523115682417455015 0.100942044106287165562813984925 0.892602466497555739206060591127 0.0764257302548890565291296776166 0.95582394957139775518119589293 0.0497145488949697964533349462026 0.991565168420930946730016004706 0.0216160135264833103133427102665 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n19-d37-spu.txt000066400000000000000000000023241277740313300236740ustar00rootroot00000000000000-0.992406843843584403189017670253 0.0194617882297264770363120414644 -0.960208152134830030852778840688 0.044814226765699600332838157402 -0.903155903614817901642660928532 0.069044542737641226580708258006 -0.822714656537142824978922486713 0.0914900216224499994644620941238 -0.720966177335229378617095860824 0.111566645547333994716023901682 -0.600545304661681023469638164946 0.128753962539336227675515784857 -0.464570741375960945717267148104 0.142606702173606611775746109442 -0.31656409996362983199011732885 0.152766042065859666778855400898 -0.160358645640225375868096115741 0.158968843393954347649956439465 0.0 0.161054449848783695979163625321 0.160358645640225375868096115741 0.158968843393954347649956439465 0.31656409996362983199011732885 0.152766042065859666778855400898 0.464570741375960945717267148104 0.142606702173606611775746109442 0.600545304661681023469638164946 0.128753962539336227675515784857 0.720966177335229378617095860824 0.111566645547333994716023901682 0.822714656537142824978922486713 0.0914900216224499994644620941238 0.903155903614817901642660928532 0.069044542737641226580708258006 0.960208152134830030852778840688 0.044814226765699600332838157402 0.992406843843584403189017670253 0.0194617882297264770363120414644 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n2-d3-spu.txt000066400000000000000000000001131277740313300235070ustar00rootroot00000000000000-0.577350269189625764509148780502 1.0 0.577350269189625764509148780502 1.0 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n20-d39-spu.txt000066400000000000000000000024661277740313300236750ustar00rootroot00000000000000-0.993128599185094924786122388471 0.0176140071391521183118619623519 -0.963971927277913791267666131197 0.0406014298003869413310399522749 -0.912234428251325905867752441203 0.062672048334109063569506535187 -0.839116971822218823394529061702 0.083276741576704748724758143222 -0.746331906460150792614305070356 0.10193011981724043503675013548 -0.636053680726515025452836696226 0.118194531961518417312377377711 -0.510867001950827098004364050955 0.131688638449176626898494499748 -0.373706088715419560672548177025 0.142096109318382051329298325067 -0.227785851141645078080496195369 0.149172986472603746787828737002 -0.0765265211334973337546404093988 0.152753387130725850698084331955 0.0765265211334973337546404093988 0.152753387130725850698084331955 0.227785851141645078080496195369 0.149172986472603746787828737002 0.373706088715419560672548177025 0.142096109318382051329298325067 0.510867001950827098004364050955 0.131688638449176626898494499748 0.636053680726515025452836696226 0.118194531961518417312377377711 0.746331906460150792614305070356 0.10193011981724043503675013548 0.839116971822218823394529061702 0.083276741576704748724758143222 0.912234428251325905867752441203 0.062672048334109063569506535187 0.963971927277913791267666131197 0.0406014298003869413310399522749 0.993128599185094924786122388471 0.0176140071391521183118619623519 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n3-d5-spu.txt000066400000000000000000000002521277740313300235160ustar00rootroot00000000000000-0.774596669241483377035853079956 0.555555555555555555555555555556 0.0 0.888888888888888888888888888889 0.774596669241483377035853079956 0.555555555555555555555555555556 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n4-d7-spu.txt000066400000000000000000000004121277740313300235170ustar00rootroot00000000000000-0.861136311594052575223946488893 0.347854845137453857373063949222 -0.339981043584856264802665759103 0.652145154862546142626936050778 0.339981043584856264802665759103 0.652145154862546142626936050778 0.861136311594052575223946488893 0.347854845137453857373063949222 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n5-d9-spu.txt000066400000000000000000000004511277740313300235250ustar00rootroot00000000000000-0.906179845938663992797626878299 0.23692688505618908751426404072 -0.5384693101056830910363144207 0.478628670499366468041291514836 0.0 0.568888888888888888888888888889 0.5384693101056830910363144207 0.478628670499366468041291514836 0.906179845938663992797626878299 0.23692688505618908751426404072 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n6-d11-spu.txt000066400000000000000000000006131277740313300235770ustar00rootroot00000000000000-0.932469514203152027812301554494 0.171324492379170345040296142173 -0.66120938646626451366139959502 0.360761573048138607569833513838 -0.238619186083196908630501721681 0.46791393457269104738987034399 0.238619186083196908630501721681 0.46791393457269104738987034399 0.66120938646626451366139959502 0.360761573048138607569833513838 0.932469514203152027812301554494 0.171324492379170345040296142173 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n7-d13-spu.txt000066400000000000000000000006641277740313300236100ustar00rootroot00000000000000-0.949107912342758524526189684048 0.129484966168869693270611432679 -0.741531185599394439863864773281 0.279705391489276667901467771424 -0.405845151377397166906606412077 0.381830050505118944950369775489 0.0 0.417959183673469387755102040816 0.405845151377397166906606412077 0.381830050505118944950369775489 0.741531185599394439863864773281 0.279705391489276667901467771424 0.949107912342758524526189684048 0.129484966168869693270611432679 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n8-d15-spu.txt000066400000000000000000000010201277740313300235760ustar00rootroot00000000000000-0.960289856497536231683560868569 0.10122853629037625915253135431 -0.796666477413626739591553936476 0.222381034453374470544355994426 -0.525532409916328985817739049189 0.313706645877887287337962201987 -0.18343464249564980493947614236 0.362683783378361982965150449277 0.18343464249564980493947614236 0.362683783378361982965150449277 0.525532409916328985817739049189 0.313706645877887287337962201987 0.796666477413626739591553936476 0.222381034453374470544355994426 0.960289856497536231683560868569 0.10122853629037625915253135431 pyfr-1.5.0/pyfr/quadrules/line/gauss-legendre-n9-d17-spu.txt000066400000000000000000000010711277740313300236070ustar00rootroot00000000000000-0.968160239507626089835576202904 0.0812743883615744119718921581105 -0.83603110732663579429942978807 0.180648160694857404058472031243 -0.613371432700590397308702039341 0.260610696402935462318742869419 -0.324253423403808929038538014643 0.312347077040002840068630406584 0.0 0.330239355001259763164525069287 0.324253423403808929038538014643 0.312347077040002840068630406584 0.613371432700590397308702039341 0.260610696402935462318742869419 0.83603110732663579429942978807 0.180648160694857404058472031243 0.968160239507626089835576202904 0.0812743883615744119718921581105 pyfr-1.5.0/pyfr/quadrules/pri/000077500000000000000000000000001277740313300162635ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n126-su.txt000066400000000000000000000126311277740313300265130ustar00rootroot00000000000000-1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -0.6844725145019088 0.3689450290038176 -1.0 0.3689450290038176 -0.6844725145019088 -1.0 -0.6844725145019088 -0.6844725145019088 -1.0 -0.1712454773320746 -0.6575090453358508 -1.0 -0.6575090453358508 -0.1712454773320746 -1.0 -0.1712454773320746 -0.1712454773320746 -1.0 0.765055323929465 -0.765055323929465 -1.0 -1.0 -0.765055323929465 -1.0 -0.765055323929465 -1.0 -1.0 0.765055323929465 -1.0 -1.0 -1.0 0.765055323929465 -1.0 -0.765055323929465 0.765055323929465 -1.0 0.2852315164806452 -0.2852315164806452 -1.0 -1.0 -0.2852315164806452 -1.0 -0.2852315164806452 -1.0 -1.0 0.2852315164806452 -1.0 -1.0 -1.0 0.2852315164806452 -1.0 -0.2852315164806452 0.2852315164806452 -1.0 -1.0 1.0 -0.76505532392946469 1.0 -1.0 -0.76505532392946469 -1.0 -1.0 -0.76505532392946469 -0.6844725145019088 0.3689450290038176 -0.76505532392946469 0.3689450290038176 -0.6844725145019088 -0.76505532392946469 -0.6844725145019088 -0.6844725145019088 -0.76505532392946469 -0.1712454773320746 -0.6575090453358508 -0.76505532392946469 -0.6575090453358508 -0.1712454773320746 -0.76505532392946469 -0.1712454773320746 -0.1712454773320746 -0.76505532392946469 0.765055323929465 -0.765055323929465 -0.76505532392946469 -1.0 -0.765055323929465 -0.76505532392946469 -0.765055323929465 -1.0 -0.76505532392946469 0.765055323929465 -1.0 -0.76505532392946469 -1.0 0.765055323929465 -0.76505532392946469 -0.765055323929465 0.765055323929465 -0.76505532392946469 0.2852315164806452 -0.2852315164806452 -0.76505532392946469 -1.0 -0.2852315164806452 -0.76505532392946469 -0.2852315164806452 -1.0 -0.76505532392946469 0.2852315164806452 -1.0 -0.76505532392946469 -1.0 0.2852315164806452 -0.76505532392946469 -0.2852315164806452 0.2852315164806452 -0.76505532392946469 -1.0 1.0 -0.2852315164806451 1.0 -1.0 -0.2852315164806451 -1.0 -1.0 -0.2852315164806451 -0.6844725145019088 0.3689450290038176 -0.2852315164806451 0.3689450290038176 -0.6844725145019088 -0.2852315164806451 -0.6844725145019088 -0.6844725145019088 -0.2852315164806451 -0.1712454773320746 -0.6575090453358508 -0.2852315164806451 -0.6575090453358508 -0.1712454773320746 -0.2852315164806451 -0.1712454773320746 -0.1712454773320746 -0.2852315164806451 0.765055323929465 -0.765055323929465 -0.2852315164806451 -1.0 -0.765055323929465 -0.2852315164806451 -0.765055323929465 -1.0 -0.2852315164806451 0.765055323929465 -1.0 -0.2852315164806451 -1.0 0.765055323929465 -0.2852315164806451 -0.765055323929465 0.765055323929465 -0.2852315164806451 0.2852315164806452 -0.2852315164806452 -0.2852315164806451 -1.0 -0.2852315164806452 -0.2852315164806451 -0.2852315164806452 -1.0 -0.2852315164806451 0.2852315164806452 -1.0 -0.2852315164806451 -1.0 0.2852315164806452 -0.2852315164806451 -0.2852315164806452 0.2852315164806452 -0.2852315164806451 -1.0 1.0 0.2852315164806451 1.0 -1.0 0.2852315164806451 -1.0 -1.0 0.2852315164806451 -0.6844725145019088 0.3689450290038176 0.2852315164806451 0.3689450290038176 -0.6844725145019088 0.2852315164806451 -0.6844725145019088 -0.6844725145019088 0.2852315164806451 -0.1712454773320746 -0.6575090453358508 0.2852315164806451 -0.6575090453358508 -0.1712454773320746 0.2852315164806451 -0.1712454773320746 -0.1712454773320746 0.2852315164806451 0.765055323929465 -0.765055323929465 0.2852315164806451 -1.0 -0.765055323929465 0.2852315164806451 -0.765055323929465 -1.0 0.2852315164806451 0.765055323929465 -1.0 0.2852315164806451 -1.0 0.765055323929465 0.2852315164806451 -0.765055323929465 0.765055323929465 0.2852315164806451 0.2852315164806452 -0.2852315164806452 0.2852315164806451 -1.0 -0.2852315164806452 0.2852315164806451 -0.2852315164806452 -1.0 0.2852315164806451 0.2852315164806452 -1.0 0.2852315164806451 -1.0 0.2852315164806452 0.2852315164806451 -0.2852315164806452 0.2852315164806452 0.2852315164806451 -1.0 1.0 0.76505532392946469 1.0 -1.0 0.76505532392946469 -1.0 -1.0 0.76505532392946469 -0.6844725145019088 0.3689450290038176 0.76505532392946469 0.3689450290038176 -0.6844725145019088 0.76505532392946469 -0.6844725145019088 -0.6844725145019088 0.76505532392946469 -0.1712454773320746 -0.6575090453358508 0.76505532392946469 -0.6575090453358508 -0.1712454773320746 0.76505532392946469 -0.1712454773320746 -0.1712454773320746 0.76505532392946469 0.765055323929465 -0.765055323929465 0.76505532392946469 -1.0 -0.765055323929465 0.76505532392946469 -0.765055323929465 -1.0 0.76505532392946469 0.765055323929465 -1.0 0.76505532392946469 -1.0 0.765055323929465 0.76505532392946469 -0.765055323929465 0.765055323929465 0.76505532392946469 0.2852315164806452 -0.2852315164806452 0.76505532392946469 -1.0 -0.2852315164806452 0.76505532392946469 -0.2852315164806452 -1.0 0.76505532392946469 0.2852315164806452 -1.0 0.76505532392946469 -1.0 0.2852315164806452 0.76505532392946469 -0.2852315164806452 0.2852315164806452 0.76505532392946469 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 -0.6844725145019088 0.3689450290038176 1.0 0.3689450290038176 -0.6844725145019088 1.0 -0.6844725145019088 -0.6844725145019088 1.0 -0.1712454773320746 -0.6575090453358508 1.0 -0.6575090453358508 -0.1712454773320746 1.0 -0.1712454773320746 -0.1712454773320746 1.0 0.765055323929465 -0.765055323929465 1.0 -1.0 -0.765055323929465 1.0 -0.765055323929465 -1.0 1.0 0.765055323929465 -1.0 1.0 -1.0 0.765055323929465 1.0 -0.765055323929465 0.765055323929465 1.0 0.2852315164806452 -0.2852315164806452 1.0 -1.0 -0.2852315164806452 1.0 -0.2852315164806452 -1.0 1.0 0.2852315164806452 -1.0 1.0 -1.0 0.2852315164806452 1.0 -0.2852315164806452 0.2852315164806452 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n18-su.txt000066400000000000000000000003601277740313300264270ustar00rootroot00000000000000-1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 0.0 -1.0 -1.0 -1.0 0.0 -1.0 0.0 0.0 -1.0 -1.0 1.0 0.0 1.0 -1.0 0.0 -1.0 -1.0 0.0 0.0 -1.0 0.0 -1.0 0.0 0.0 0.0 0.0 0.0 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 0.0 -1.0 1.0 -1.0 0.0 1.0 0.0 0.0 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n196-su.txt000066400000000000000000000200501277740313300265140ustar00rootroot00000000000000-0.3333333333333333 -0.3333333333333333 -1.0 -1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -0.7695164961934418 0.5390329923868836 -1.0 0.5390329923868836 -0.7695164961934418 -1.0 -0.7695164961934418 -0.7695164961934418 -1.0 0.0 -1.0 -1.0 -1.0 0.0 -1.0 0.0 0.0 -1.0 0.8302238962785673 -0.8302238962785673 -1.0 -1.0 -0.8302238962785673 -1.0 -0.8302238962785673 -1.0 -1.0 0.8302238962785673 -1.0 -1.0 -1.0 0.8302238962785673 -1.0 -0.8302238962785673 0.8302238962785673 -1.0 0.4688487934707144 -0.4688487934707144 -1.0 -1.0 -0.4688487934707144 -1.0 -0.4688487934707144 -1.0 -1.0 0.4688487934707144 -1.0 -1.0 -1.0 0.4688487934707144 -1.0 -0.4688487934707144 0.4688487934707144 -1.0 0.1088646525710102 -0.3647692565366892 -1.0 -0.744095396034321 -0.3647692565366892 -1.0 -0.3647692565366892 -0.744095396034321 -1.0 0.1088646525710102 -0.744095396034321 -1.0 -0.744095396034321 0.1088646525710102 -1.0 -0.3647692565366892 0.1088646525710102 -1.0 -0.3333333333333333 -0.3333333333333333 -0.83022389627856693 -1.0 1.0 -0.83022389627856693 1.0 -1.0 -0.83022389627856693 -1.0 -1.0 -0.83022389627856693 -0.7695164961934418 0.5390329923868836 -0.83022389627856693 0.5390329923868836 -0.7695164961934418 -0.83022389627856693 -0.7695164961934418 -0.7695164961934418 -0.83022389627856693 0.0 -1.0 -0.83022389627856693 -1.0 0.0 -0.83022389627856693 0.0 0.0 -0.83022389627856693 0.8302238962785673 -0.8302238962785673 -0.83022389627856693 -1.0 -0.8302238962785673 -0.83022389627856693 -0.8302238962785673 -1.0 -0.83022389627856693 0.8302238962785673 -1.0 -0.83022389627856693 -1.0 0.8302238962785673 -0.83022389627856693 -0.8302238962785673 0.8302238962785673 -0.83022389627856693 0.4688487934707144 -0.4688487934707144 -0.83022389627856693 -1.0 -0.4688487934707144 -0.83022389627856693 -0.4688487934707144 -1.0 -0.83022389627856693 0.4688487934707144 -1.0 -0.83022389627856693 -1.0 0.4688487934707144 -0.83022389627856693 -0.4688487934707144 0.4688487934707144 -0.83022389627856693 0.1088646525710102 -0.3647692565366892 -0.83022389627856693 -0.744095396034321 -0.3647692565366892 -0.83022389627856693 -0.3647692565366892 -0.744095396034321 -0.83022389627856693 0.1088646525710102 -0.744095396034321 -0.83022389627856693 -0.744095396034321 0.1088646525710102 -0.83022389627856693 -0.3647692565366892 0.1088646525710102 -0.83022389627856693 -0.3333333333333333 -0.3333333333333333 -0.46884879347071421 -1.0 1.0 -0.46884879347071421 1.0 -1.0 -0.46884879347071421 -1.0 -1.0 -0.46884879347071421 -0.7695164961934418 0.5390329923868836 -0.46884879347071421 0.5390329923868836 -0.7695164961934418 -0.46884879347071421 -0.7695164961934418 -0.7695164961934418 -0.46884879347071421 0.0 -1.0 -0.46884879347071421 -1.0 0.0 -0.46884879347071421 0.0 0.0 -0.46884879347071421 0.8302238962785673 -0.8302238962785673 -0.46884879347071421 -1.0 -0.8302238962785673 -0.46884879347071421 -0.8302238962785673 -1.0 -0.46884879347071421 0.8302238962785673 -1.0 -0.46884879347071421 -1.0 0.8302238962785673 -0.46884879347071421 -0.8302238962785673 0.8302238962785673 -0.46884879347071421 0.4688487934707144 -0.4688487934707144 -0.46884879347071421 -1.0 -0.4688487934707144 -0.46884879347071421 -0.4688487934707144 -1.0 -0.46884879347071421 0.4688487934707144 -1.0 -0.46884879347071421 -1.0 0.4688487934707144 -0.46884879347071421 -0.4688487934707144 0.4688487934707144 -0.46884879347071421 0.1088646525710102 -0.3647692565366892 -0.46884879347071421 -0.744095396034321 -0.3647692565366892 -0.46884879347071421 -0.3647692565366892 -0.744095396034321 -0.46884879347071421 0.1088646525710102 -0.744095396034321 -0.46884879347071421 -0.744095396034321 0.1088646525710102 -0.46884879347071421 -0.3647692565366892 0.1088646525710102 -0.46884879347071421 -0.3333333333333333 -0.3333333333333333 0.0 -1.0 1.0 0.0 1.0 -1.0 0.0 -1.0 -1.0 0.0 -0.7695164961934418 0.5390329923868836 0.0 0.5390329923868836 -0.7695164961934418 0.0 -0.7695164961934418 -0.7695164961934418 0.0 0.0 -1.0 0.0 -1.0 0.0 0.0 0.0 0.0 0.0 0.8302238962785673 -0.8302238962785673 0.0 -1.0 -0.8302238962785673 0.0 -0.8302238962785673 -1.0 0.0 0.8302238962785673 -1.0 0.0 -1.0 0.8302238962785673 0.0 -0.8302238962785673 0.8302238962785673 0.0 0.4688487934707144 -0.4688487934707144 0.0 -1.0 -0.4688487934707144 0.0 -0.4688487934707144 -1.0 0.0 0.4688487934707144 -1.0 0.0 -1.0 0.4688487934707144 0.0 -0.4688487934707144 0.4688487934707144 0.0 0.1088646525710102 -0.3647692565366892 0.0 -0.744095396034321 -0.3647692565366892 0.0 -0.3647692565366892 -0.744095396034321 0.0 0.1088646525710102 -0.744095396034321 0.0 -0.744095396034321 0.1088646525710102 0.0 -0.3647692565366892 0.1088646525710102 0.0 -0.3333333333333333 -0.3333333333333333 0.46884879347071421 -1.0 1.0 0.46884879347071421 1.0 -1.0 0.46884879347071421 -1.0 -1.0 0.46884879347071421 -0.7695164961934418 0.5390329923868836 0.46884879347071421 0.5390329923868836 -0.7695164961934418 0.46884879347071421 -0.7695164961934418 -0.7695164961934418 0.46884879347071421 0.0 -1.0 0.46884879347071421 -1.0 0.0 0.46884879347071421 0.0 0.0 0.46884879347071421 0.8302238962785673 -0.8302238962785673 0.46884879347071421 -1.0 -0.8302238962785673 0.46884879347071421 -0.8302238962785673 -1.0 0.46884879347071421 0.8302238962785673 -1.0 0.46884879347071421 -1.0 0.8302238962785673 0.46884879347071421 -0.8302238962785673 0.8302238962785673 0.46884879347071421 0.4688487934707144 -0.4688487934707144 0.46884879347071421 -1.0 -0.4688487934707144 0.46884879347071421 -0.4688487934707144 -1.0 0.46884879347071421 0.4688487934707144 -1.0 0.46884879347071421 -1.0 0.4688487934707144 0.46884879347071421 -0.4688487934707144 0.4688487934707144 0.46884879347071421 0.1088646525710102 -0.3647692565366892 0.46884879347071421 -0.744095396034321 -0.3647692565366892 0.46884879347071421 -0.3647692565366892 -0.744095396034321 0.46884879347071421 0.1088646525710102 -0.744095396034321 0.46884879347071421 -0.744095396034321 0.1088646525710102 0.46884879347071421 -0.3647692565366892 0.1088646525710102 0.46884879347071421 -0.3333333333333333 -0.3333333333333333 0.83022389627856693 -1.0 1.0 0.83022389627856693 1.0 -1.0 0.83022389627856693 -1.0 -1.0 0.83022389627856693 -0.7695164961934418 0.5390329923868836 0.83022389627856693 0.5390329923868836 -0.7695164961934418 0.83022389627856693 -0.7695164961934418 -0.7695164961934418 0.83022389627856693 0.0 -1.0 0.83022389627856693 -1.0 0.0 0.83022389627856693 0.0 0.0 0.83022389627856693 0.8302238962785673 -0.8302238962785673 0.83022389627856693 -1.0 -0.8302238962785673 0.83022389627856693 -0.8302238962785673 -1.0 0.83022389627856693 0.8302238962785673 -1.0 0.83022389627856693 -1.0 0.8302238962785673 0.83022389627856693 -0.8302238962785673 0.8302238962785673 0.83022389627856693 0.4688487934707144 -0.4688487934707144 0.83022389627856693 -1.0 -0.4688487934707144 0.83022389627856693 -0.4688487934707144 -1.0 0.83022389627856693 0.4688487934707144 -1.0 0.83022389627856693 -1.0 0.4688487934707144 0.83022389627856693 -0.4688487934707144 0.4688487934707144 0.83022389627856693 0.1088646525710102 -0.3647692565366892 0.83022389627856693 -0.744095396034321 -0.3647692565366892 0.83022389627856693 -0.3647692565366892 -0.744095396034321 0.83022389627856693 0.1088646525710102 -0.744095396034321 0.83022389627856693 -0.744095396034321 0.1088646525710102 0.83022389627856693 -0.3647692565366892 0.1088646525710102 0.83022389627856693 -0.3333333333333333 -0.3333333333333333 1.0 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 -0.7695164961934418 0.5390329923868836 1.0 0.5390329923868836 -0.7695164961934418 1.0 -0.7695164961934418 -0.7695164961934418 1.0 0.0 -1.0 1.0 -1.0 0.0 1.0 0.0 0.0 1.0 0.8302238962785673 -0.8302238962785673 1.0 -1.0 -0.8302238962785673 1.0 -0.8302238962785673 -1.0 1.0 0.8302238962785673 -1.0 1.0 -1.0 0.8302238962785673 1.0 -0.8302238962785673 0.8302238962785673 1.0 0.4688487934707144 -0.4688487934707144 1.0 -1.0 -0.4688487934707144 1.0 -0.4688487934707144 -1.0 1.0 0.4688487934707144 -1.0 1.0 -1.0 0.4688487934707144 1.0 -0.4688487934707144 0.4688487934707144 1.0 0.1088646525710102 -0.3647692565366892 1.0 -0.744095396034321 -0.3647692565366892 1.0 -0.3647692565366892 -0.744095396034321 1.0 0.1088646525710102 -0.744095396034321 1.0 -0.744095396034321 0.1088646525710102 1.0 -0.3647692565366892 0.1088646525710102 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n288-su.txt000066400000000000000000000330701277740313300265240ustar00rootroot00000000000000-1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -0.82399615942763482 0.64799231885526964 -1.0 0.64799231885526964 -0.82399615942763482 -1.0 -0.82399615942763482 -0.82399615942763482 -1.0 -0.102529737209732 -0.794940525580536 -1.0 -0.794940525580536 -0.102529737209732 -1.0 -0.102529737209732 -0.102529737209732 -1.0 -0.4650732944293116 -0.0698534111413768 -1.0 -0.0698534111413768 -0.4650732944293116 -1.0 -0.4650732944293116 -0.4650732944293116 -1.0 0.87174014850960668 -0.87174014850960668 -1.0 -1.0 -0.87174014850960668 -1.0 -0.87174014850960668 -1.0 -1.0 0.87174014850960668 -1.0 -1.0 -1.0 0.87174014850960668 -1.0 -0.87174014850960668 0.87174014850960668 -1.0 0.5917001814331424 -0.5917001814331424 -1.0 -1.0 -0.5917001814331424 -1.0 -0.5917001814331424 -1.0 -1.0 0.5917001814331424 -1.0 -1.0 -1.0 0.5917001814331424 -1.0 -0.5917001814331424 0.5917001814331424 -1.0 0.3047134441526058 -0.5032840332609758 -1.0 -0.80142941089163 -0.5032840332609758 -1.0 -0.5032840332609758 -0.80142941089163 -1.0 0.3047134441526058 -0.80142941089163 -1.0 -0.80142941089163 0.3047134441526058 -1.0 -0.5032840332609758 0.3047134441526058 -1.0 0.2092992179024786 -0.2092992179024786 -1.0 -1.0 -0.2092992179024786 -1.0 -0.2092992179024786 -1.0 -1.0 0.2092992179024786 -1.0 -1.0 -1.0 0.2092992179024786 -1.0 -0.2092992179024786 0.2092992179024786 -1.0 -1.0 1.0 -0.87174014850960662 1.0 -1.0 -0.87174014850960662 -1.0 -1.0 -0.87174014850960662 -0.82399615942763482 0.64799231885526964 -0.87174014850960662 0.64799231885526964 -0.82399615942763482 -0.87174014850960662 -0.82399615942763482 -0.82399615942763482 -0.87174014850960662 -0.102529737209732 -0.794940525580536 -0.87174014850960662 -0.794940525580536 -0.102529737209732 -0.87174014850960662 -0.102529737209732 -0.102529737209732 -0.87174014850960662 -0.4650732944293116 -0.0698534111413768 -0.87174014850960662 -0.0698534111413768 -0.4650732944293116 -0.87174014850960662 -0.4650732944293116 -0.4650732944293116 -0.87174014850960662 0.87174014850960668 -0.87174014850960668 -0.87174014850960662 -1.0 -0.87174014850960668 -0.87174014850960662 -0.87174014850960668 -1.0 -0.87174014850960662 0.87174014850960668 -1.0 -0.87174014850960662 -1.0 0.87174014850960668 -0.87174014850960662 -0.87174014850960668 0.87174014850960668 -0.87174014850960662 0.5917001814331424 -0.5917001814331424 -0.87174014850960662 -1.0 -0.5917001814331424 -0.87174014850960662 -0.5917001814331424 -1.0 -0.87174014850960662 0.5917001814331424 -1.0 -0.87174014850960662 -1.0 0.5917001814331424 -0.87174014850960662 -0.5917001814331424 0.5917001814331424 -0.87174014850960662 0.3047134441526058 -0.5032840332609758 -0.87174014850960662 -0.80142941089163 -0.5032840332609758 -0.87174014850960662 -0.5032840332609758 -0.80142941089163 -0.87174014850960662 0.3047134441526058 -0.80142941089163 -0.87174014850960662 -0.80142941089163 0.3047134441526058 -0.87174014850960662 -0.5032840332609758 0.3047134441526058 -0.87174014850960662 0.2092992179024786 -0.2092992179024786 -0.87174014850960662 -1.0 -0.2092992179024786 -0.87174014850960662 -0.2092992179024786 -1.0 -0.87174014850960662 0.2092992179024786 -1.0 -0.87174014850960662 -1.0 0.2092992179024786 -0.87174014850960662 -0.2092992179024786 0.2092992179024786 -0.87174014850960662 -1.0 1.0 -0.5917001814331423 1.0 -1.0 -0.5917001814331423 -1.0 -1.0 -0.5917001814331423 -0.82399615942763482 0.64799231885526964 -0.5917001814331423 0.64799231885526964 -0.82399615942763482 -0.5917001814331423 -0.82399615942763482 -0.82399615942763482 -0.5917001814331423 -0.102529737209732 -0.794940525580536 -0.5917001814331423 -0.794940525580536 -0.102529737209732 -0.5917001814331423 -0.102529737209732 -0.102529737209732 -0.5917001814331423 -0.4650732944293116 -0.0698534111413768 -0.5917001814331423 -0.0698534111413768 -0.4650732944293116 -0.5917001814331423 -0.4650732944293116 -0.4650732944293116 -0.5917001814331423 0.87174014850960668 -0.87174014850960668 -0.5917001814331423 -1.0 -0.87174014850960668 -0.5917001814331423 -0.87174014850960668 -1.0 -0.5917001814331423 0.87174014850960668 -1.0 -0.5917001814331423 -1.0 0.87174014850960668 -0.5917001814331423 -0.87174014850960668 0.87174014850960668 -0.5917001814331423 0.5917001814331424 -0.5917001814331424 -0.5917001814331423 -1.0 -0.5917001814331424 -0.5917001814331423 -0.5917001814331424 -1.0 -0.5917001814331423 0.5917001814331424 -1.0 -0.5917001814331423 -1.0 0.5917001814331424 -0.5917001814331423 -0.5917001814331424 0.5917001814331424 -0.5917001814331423 0.3047134441526058 -0.5032840332609758 -0.5917001814331423 -0.80142941089163 -0.5032840332609758 -0.5917001814331423 -0.5032840332609758 -0.80142941089163 -0.5917001814331423 0.3047134441526058 -0.80142941089163 -0.5917001814331423 -0.80142941089163 0.3047134441526058 -0.5917001814331423 -0.5032840332609758 0.3047134441526058 -0.5917001814331423 0.2092992179024786 -0.2092992179024786 -0.5917001814331423 -1.0 -0.2092992179024786 -0.5917001814331423 -0.2092992179024786 -1.0 -0.5917001814331423 0.2092992179024786 -1.0 -0.5917001814331423 -1.0 0.2092992179024786 -0.5917001814331423 -0.2092992179024786 0.2092992179024786 -0.5917001814331423 -1.0 1.0 -0.20929921790247887 1.0 -1.0 -0.20929921790247887 -1.0 -1.0 -0.20929921790247887 -0.82399615942763482 0.64799231885526964 -0.20929921790247887 0.64799231885526964 -0.82399615942763482 -0.20929921790247887 -0.82399615942763482 -0.82399615942763482 -0.20929921790247887 -0.102529737209732 -0.794940525580536 -0.20929921790247887 -0.794940525580536 -0.102529737209732 -0.20929921790247887 -0.102529737209732 -0.102529737209732 -0.20929921790247887 -0.4650732944293116 -0.0698534111413768 -0.20929921790247887 -0.0698534111413768 -0.4650732944293116 -0.20929921790247887 -0.4650732944293116 -0.4650732944293116 -0.20929921790247887 0.87174014850960668 -0.87174014850960668 -0.20929921790247887 -1.0 -0.87174014850960668 -0.20929921790247887 -0.87174014850960668 -1.0 -0.20929921790247887 0.87174014850960668 -1.0 -0.20929921790247887 -1.0 0.87174014850960668 -0.20929921790247887 -0.87174014850960668 0.87174014850960668 -0.20929921790247887 0.5917001814331424 -0.5917001814331424 -0.20929921790247887 -1.0 -0.5917001814331424 -0.20929921790247887 -0.5917001814331424 -1.0 -0.20929921790247887 0.5917001814331424 -1.0 -0.20929921790247887 -1.0 0.5917001814331424 -0.20929921790247887 -0.5917001814331424 0.5917001814331424 -0.20929921790247887 0.3047134441526058 -0.5032840332609758 -0.20929921790247887 -0.80142941089163 -0.5032840332609758 -0.20929921790247887 -0.5032840332609758 -0.80142941089163 -0.20929921790247887 0.3047134441526058 -0.80142941089163 -0.20929921790247887 -0.80142941089163 0.3047134441526058 -0.20929921790247887 -0.5032840332609758 0.3047134441526058 -0.20929921790247887 0.2092992179024786 -0.2092992179024786 -0.20929921790247887 -1.0 -0.2092992179024786 -0.20929921790247887 -0.2092992179024786 -1.0 -0.20929921790247887 0.2092992179024786 -1.0 -0.20929921790247887 -1.0 0.2092992179024786 -0.20929921790247887 -0.2092992179024786 0.2092992179024786 -0.20929921790247887 -1.0 1.0 0.20929921790247887 1.0 -1.0 0.20929921790247887 -1.0 -1.0 0.20929921790247887 -0.82399615942763482 0.64799231885526964 0.20929921790247887 0.64799231885526964 -0.82399615942763482 0.20929921790247887 -0.82399615942763482 -0.82399615942763482 0.20929921790247887 -0.102529737209732 -0.794940525580536 0.20929921790247887 -0.794940525580536 -0.102529737209732 0.20929921790247887 -0.102529737209732 -0.102529737209732 0.20929921790247887 -0.4650732944293116 -0.0698534111413768 0.20929921790247887 -0.0698534111413768 -0.4650732944293116 0.20929921790247887 -0.4650732944293116 -0.4650732944293116 0.20929921790247887 0.87174014850960668 -0.87174014850960668 0.20929921790247887 -1.0 -0.87174014850960668 0.20929921790247887 -0.87174014850960668 -1.0 0.20929921790247887 0.87174014850960668 -1.0 0.20929921790247887 -1.0 0.87174014850960668 0.20929921790247887 -0.87174014850960668 0.87174014850960668 0.20929921790247887 0.5917001814331424 -0.5917001814331424 0.20929921790247887 -1.0 -0.5917001814331424 0.20929921790247887 -0.5917001814331424 -1.0 0.20929921790247887 0.5917001814331424 -1.0 0.20929921790247887 -1.0 0.5917001814331424 0.20929921790247887 -0.5917001814331424 0.5917001814331424 0.20929921790247887 0.3047134441526058 -0.5032840332609758 0.20929921790247887 -0.80142941089163 -0.5032840332609758 0.20929921790247887 -0.5032840332609758 -0.80142941089163 0.20929921790247887 0.3047134441526058 -0.80142941089163 0.20929921790247887 -0.80142941089163 0.3047134441526058 0.20929921790247887 -0.5032840332609758 0.3047134441526058 0.20929921790247887 0.2092992179024786 -0.2092992179024786 0.20929921790247887 -1.0 -0.2092992179024786 0.20929921790247887 -0.2092992179024786 -1.0 0.20929921790247887 0.2092992179024786 -1.0 0.20929921790247887 -1.0 0.2092992179024786 0.20929921790247887 -0.2092992179024786 0.2092992179024786 0.20929921790247887 -1.0 1.0 0.5917001814331423 1.0 -1.0 0.5917001814331423 -1.0 -1.0 0.5917001814331423 -0.82399615942763482 0.64799231885526964 0.5917001814331423 0.64799231885526964 -0.82399615942763482 0.5917001814331423 -0.82399615942763482 -0.82399615942763482 0.5917001814331423 -0.102529737209732 -0.794940525580536 0.5917001814331423 -0.794940525580536 -0.102529737209732 0.5917001814331423 -0.102529737209732 -0.102529737209732 0.5917001814331423 -0.4650732944293116 -0.0698534111413768 0.5917001814331423 -0.0698534111413768 -0.4650732944293116 0.5917001814331423 -0.4650732944293116 -0.4650732944293116 0.5917001814331423 0.87174014850960668 -0.87174014850960668 0.5917001814331423 -1.0 -0.87174014850960668 0.5917001814331423 -0.87174014850960668 -1.0 0.5917001814331423 0.87174014850960668 -1.0 0.5917001814331423 -1.0 0.87174014850960668 0.5917001814331423 -0.87174014850960668 0.87174014850960668 0.5917001814331423 0.5917001814331424 -0.5917001814331424 0.5917001814331423 -1.0 -0.5917001814331424 0.5917001814331423 -0.5917001814331424 -1.0 0.5917001814331423 0.5917001814331424 -1.0 0.5917001814331423 -1.0 0.5917001814331424 0.5917001814331423 -0.5917001814331424 0.5917001814331424 0.5917001814331423 0.3047134441526058 -0.5032840332609758 0.5917001814331423 -0.80142941089163 -0.5032840332609758 0.5917001814331423 -0.5032840332609758 -0.80142941089163 0.5917001814331423 0.3047134441526058 -0.80142941089163 0.5917001814331423 -0.80142941089163 0.3047134441526058 0.5917001814331423 -0.5032840332609758 0.3047134441526058 0.5917001814331423 0.2092992179024786 -0.2092992179024786 0.5917001814331423 -1.0 -0.2092992179024786 0.5917001814331423 -0.2092992179024786 -1.0 0.5917001814331423 0.2092992179024786 -1.0 0.5917001814331423 -1.0 0.2092992179024786 0.5917001814331423 -0.2092992179024786 0.2092992179024786 0.5917001814331423 -1.0 1.0 0.87174014850960662 1.0 -1.0 0.87174014850960662 -1.0 -1.0 0.87174014850960662 -0.82399615942763482 0.64799231885526964 0.87174014850960662 0.64799231885526964 -0.82399615942763482 0.87174014850960662 -0.82399615942763482 -0.82399615942763482 0.87174014850960662 -0.102529737209732 -0.794940525580536 0.87174014850960662 -0.794940525580536 -0.102529737209732 0.87174014850960662 -0.102529737209732 -0.102529737209732 0.87174014850960662 -0.4650732944293116 -0.0698534111413768 0.87174014850960662 -0.0698534111413768 -0.4650732944293116 0.87174014850960662 -0.4650732944293116 -0.4650732944293116 0.87174014850960662 0.87174014850960668 -0.87174014850960668 0.87174014850960662 -1.0 -0.87174014850960668 0.87174014850960662 -0.87174014850960668 -1.0 0.87174014850960662 0.87174014850960668 -1.0 0.87174014850960662 -1.0 0.87174014850960668 0.87174014850960662 -0.87174014850960668 0.87174014850960668 0.87174014850960662 0.5917001814331424 -0.5917001814331424 0.87174014850960662 -1.0 -0.5917001814331424 0.87174014850960662 -0.5917001814331424 -1.0 0.87174014850960662 0.5917001814331424 -1.0 0.87174014850960662 -1.0 0.5917001814331424 0.87174014850960662 -0.5917001814331424 0.5917001814331424 0.87174014850960662 0.3047134441526058 -0.5032840332609758 0.87174014850960662 -0.80142941089163 -0.5032840332609758 0.87174014850960662 -0.5032840332609758 -0.80142941089163 0.87174014850960662 0.3047134441526058 -0.80142941089163 0.87174014850960662 -0.80142941089163 0.3047134441526058 0.87174014850960662 -0.5032840332609758 0.3047134441526058 0.87174014850960662 0.2092992179024786 -0.2092992179024786 0.87174014850960662 -1.0 -0.2092992179024786 0.87174014850960662 -0.2092992179024786 -1.0 0.87174014850960662 0.2092992179024786 -1.0 0.87174014850960662 -1.0 0.2092992179024786 0.87174014850960662 -0.2092992179024786 0.2092992179024786 0.87174014850960662 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 -0.82399615942763482 0.64799231885526964 1.0 0.64799231885526964 -0.82399615942763482 1.0 -0.82399615942763482 -0.82399615942763482 1.0 -0.102529737209732 -0.794940525580536 1.0 -0.794940525580536 -0.102529737209732 1.0 -0.102529737209732 -0.102529737209732 1.0 -0.4650732944293116 -0.0698534111413768 1.0 -0.0698534111413768 -0.4650732944293116 1.0 -0.4650732944293116 -0.4650732944293116 1.0 0.87174014850960668 -0.87174014850960668 1.0 -1.0 -0.87174014850960668 1.0 -0.87174014850960668 -1.0 1.0 0.87174014850960668 -1.0 1.0 -1.0 0.87174014850960668 1.0 -0.87174014850960668 0.87174014850960668 1.0 0.5917001814331424 -0.5917001814331424 1.0 -1.0 -0.5917001814331424 1.0 -0.5917001814331424 -1.0 1.0 0.5917001814331424 -1.0 1.0 -1.0 0.5917001814331424 1.0 -0.5917001814331424 0.5917001814331424 1.0 0.3047134441526058 -0.5032840332609758 1.0 -0.80142941089163 -0.5032840332609758 1.0 -0.5032840332609758 -0.80142941089163 1.0 0.3047134441526058 -0.80142941089163 1.0 -0.80142941089163 0.3047134441526058 1.0 -0.5032840332609758 0.3047134441526058 1.0 0.2092992179024786 -0.2092992179024786 1.0 -1.0 -0.2092992179024786 1.0 -0.2092992179024786 -1.0 1.0 0.2092992179024786 -1.0 1.0 -1.0 0.2092992179024786 1.0 -0.2092992179024786 0.2092992179024786 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n40-su.txt000066400000000000000000000026441277740313300264310ustar00rootroot00000000000000-0.3333333333333333 -0.3333333333333333 -1.0 -1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 0.447213595499958 -0.447213595499958 -1.0 -1.0 -0.447213595499958 -1.0 -0.447213595499958 -1.0 -1.0 0.447213595499958 -1.0 -1.0 -1.0 0.447213595499958 -1.0 -0.447213595499958 0.447213595499958 -1.0 -0.3333333333333333 -0.3333333333333333 -0.44721359549995794 -1.0 1.0 -0.44721359549995794 1.0 -1.0 -0.44721359549995794 -1.0 -1.0 -0.44721359549995794 0.447213595499958 -0.447213595499958 -0.44721359549995794 -1.0 -0.447213595499958 -0.44721359549995794 -0.447213595499958 -1.0 -0.44721359549995794 0.447213595499958 -1.0 -0.44721359549995794 -1.0 0.447213595499958 -0.44721359549995794 -0.447213595499958 0.447213595499958 -0.44721359549995794 -0.3333333333333333 -0.3333333333333333 0.44721359549995794 -1.0 1.0 0.44721359549995794 1.0 -1.0 0.44721359549995794 -1.0 -1.0 0.44721359549995794 0.447213595499958 -0.447213595499958 0.44721359549995794 -1.0 -0.447213595499958 0.44721359549995794 -0.447213595499958 -1.0 0.44721359549995794 0.447213595499958 -1.0 0.44721359549995794 -1.0 0.447213595499958 0.44721359549995794 -0.447213595499958 0.447213595499958 0.44721359549995794 -0.3333333333333333 -0.3333333333333333 1.0 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 0.447213595499958 -0.447213595499958 1.0 -1.0 -0.447213595499958 1.0 -0.447213595499958 -1.0 1.0 0.447213595499958 -1.0 1.0 -1.0 0.447213595499958 1.0 -0.447213595499958 0.447213595499958 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n405-su.txt000066400000000000000000000452101277740313300265120ustar00rootroot00000000000000-1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -0.5665379630179386 0.1330759260358772 -1.0 0.1330759260358772 -0.5665379630179386 -1.0 -0.5665379630179386 -0.5665379630179386 -1.0 -0.2219883817461012 -0.5560232365077976 -1.0 -0.5560232365077976 -0.2219883817461012 -1.0 -0.2219883817461012 -0.2219883817461012 -1.0 0.0 -1.0 -1.0 -1.0 0.0 -1.0 0.0 0.0 -1.0 0.89975799541146028 -0.89975799541146028 -1.0 -1.0 -0.89975799541146028 -1.0 -0.89975799541146028 -1.0 -1.0 0.89975799541146028 -1.0 -1.0 -1.0 0.89975799541146028 -1.0 -0.89975799541146028 0.89975799541146028 -1.0 -0.86181986027653946 0.72363972055307892 -1.0 0.72363972055307892 -0.86181986027653946 -1.0 -0.86181986027653946 -0.86181986027653946 -1.0 0.6771862795107378 -0.6771862795107378 -1.0 -1.0 -0.6771862795107378 -1.0 -0.6771862795107378 -1.0 -1.0 0.6771862795107378 -1.0 -1.0 -1.0 0.6771862795107378 -1.0 -0.6771862795107378 0.6771862795107378 -1.0 0.44642711029554092 -0.6025435027169984 -1.0 -0.84388360757854252 -0.6025435027169984 -1.0 -0.6025435027169984 -0.84388360757854252 -1.0 0.44642711029554092 -0.84388360757854252 -1.0 -0.84388360757854252 0.44642711029554092 -1.0 -0.6025435027169984 0.44642711029554092 -1.0 0.3631174638261782 -0.3631174638261782 -1.0 -1.0 -0.3631174638261782 -1.0 -0.3631174638261782 -1.0 -1.0 0.3631174638261782 -1.0 -1.0 -1.0 0.3631174638261782 -1.0 -0.3631174638261782 0.3631174638261782 -1.0 0.10189156171389752 -0.2647237999285756 -1.0 -0.83716776178532192 -0.2647237999285756 -1.0 -0.2647237999285756 -0.83716776178532192 -1.0 0.10189156171389752 -0.83716776178532192 -1.0 -0.83716776178532192 0.10189156171389752 -1.0 -0.2647237999285756 0.10189156171389752 -1.0 -1.0 1.0 -0.89975799541146016 1.0 -1.0 -0.89975799541146016 -1.0 -1.0 -0.89975799541146016 -0.5665379630179386 0.1330759260358772 -0.89975799541146016 0.1330759260358772 -0.5665379630179386 -0.89975799541146016 -0.5665379630179386 -0.5665379630179386 -0.89975799541146016 -0.2219883817461012 -0.5560232365077976 -0.89975799541146016 -0.5560232365077976 -0.2219883817461012 -0.89975799541146016 -0.2219883817461012 -0.2219883817461012 -0.89975799541146016 0.0 -1.0 -0.89975799541146016 -1.0 0.0 -0.89975799541146016 0.0 0.0 -0.89975799541146016 0.89975799541146028 -0.89975799541146028 -0.89975799541146016 -1.0 -0.89975799541146028 -0.89975799541146016 -0.89975799541146028 -1.0 -0.89975799541146016 0.89975799541146028 -1.0 -0.89975799541146016 -1.0 0.89975799541146028 -0.89975799541146016 -0.89975799541146028 0.89975799541146028 -0.89975799541146016 -0.86181986027653946 0.72363972055307892 -0.89975799541146016 0.72363972055307892 -0.86181986027653946 -0.89975799541146016 -0.86181986027653946 -0.86181986027653946 -0.89975799541146016 0.6771862795107378 -0.6771862795107378 -0.89975799541146016 -1.0 -0.6771862795107378 -0.89975799541146016 -0.6771862795107378 -1.0 -0.89975799541146016 0.6771862795107378 -1.0 -0.89975799541146016 -1.0 0.6771862795107378 -0.89975799541146016 -0.6771862795107378 0.6771862795107378 -0.89975799541146016 0.44642711029554092 -0.6025435027169984 -0.89975799541146016 -0.84388360757854252 -0.6025435027169984 -0.89975799541146016 -0.6025435027169984 -0.84388360757854252 -0.89975799541146016 0.44642711029554092 -0.84388360757854252 -0.89975799541146016 -0.84388360757854252 0.44642711029554092 -0.89975799541146016 -0.6025435027169984 0.44642711029554092 -0.89975799541146016 0.3631174638261782 -0.3631174638261782 -0.89975799541146016 -1.0 -0.3631174638261782 -0.89975799541146016 -0.3631174638261782 -1.0 -0.89975799541146016 0.3631174638261782 -1.0 -0.89975799541146016 -1.0 0.3631174638261782 -0.89975799541146016 -0.3631174638261782 0.3631174638261782 -0.89975799541146016 0.10189156171389752 -0.2647237999285756 -0.89975799541146016 -0.83716776178532192 -0.2647237999285756 -0.89975799541146016 -0.2647237999285756 -0.83716776178532192 -0.89975799541146016 0.10189156171389752 -0.83716776178532192 -0.89975799541146016 -0.83716776178532192 0.10189156171389752 -0.89975799541146016 -0.2647237999285756 0.10189156171389752 -0.89975799541146016 -1.0 1.0 -0.67718627951073775 1.0 -1.0 -0.67718627951073775 -1.0 -1.0 -0.67718627951073775 -0.5665379630179386 0.1330759260358772 -0.67718627951073775 0.1330759260358772 -0.5665379630179386 -0.67718627951073775 -0.5665379630179386 -0.5665379630179386 -0.67718627951073775 -0.2219883817461012 -0.5560232365077976 -0.67718627951073775 -0.5560232365077976 -0.2219883817461012 -0.67718627951073775 -0.2219883817461012 -0.2219883817461012 -0.67718627951073775 0.0 -1.0 -0.67718627951073775 -1.0 0.0 -0.67718627951073775 0.0 0.0 -0.67718627951073775 0.89975799541146028 -0.89975799541146028 -0.67718627951073775 -1.0 -0.89975799541146028 -0.67718627951073775 -0.89975799541146028 -1.0 -0.67718627951073775 0.89975799541146028 -1.0 -0.67718627951073775 -1.0 0.89975799541146028 -0.67718627951073775 -0.89975799541146028 0.89975799541146028 -0.67718627951073775 -0.86181986027653946 0.72363972055307892 -0.67718627951073775 0.72363972055307892 -0.86181986027653946 -0.67718627951073775 -0.86181986027653946 -0.86181986027653946 -0.67718627951073775 0.6771862795107378 -0.6771862795107378 -0.67718627951073775 -1.0 -0.6771862795107378 -0.67718627951073775 -0.6771862795107378 -1.0 -0.67718627951073775 0.6771862795107378 -1.0 -0.67718627951073775 -1.0 0.6771862795107378 -0.67718627951073775 -0.6771862795107378 0.6771862795107378 -0.67718627951073775 0.44642711029554092 -0.6025435027169984 -0.67718627951073775 -0.84388360757854252 -0.6025435027169984 -0.67718627951073775 -0.6025435027169984 -0.84388360757854252 -0.67718627951073775 0.44642711029554092 -0.84388360757854252 -0.67718627951073775 -0.84388360757854252 0.44642711029554092 -0.67718627951073775 -0.6025435027169984 0.44642711029554092 -0.67718627951073775 0.3631174638261782 -0.3631174638261782 -0.67718627951073775 -1.0 -0.3631174638261782 -0.67718627951073775 -0.3631174638261782 -1.0 -0.67718627951073775 0.3631174638261782 -1.0 -0.67718627951073775 -1.0 0.3631174638261782 -0.67718627951073775 -0.3631174638261782 0.3631174638261782 -0.67718627951073775 0.10189156171389752 -0.2647237999285756 -0.67718627951073775 -0.83716776178532192 -0.2647237999285756 -0.67718627951073775 -0.2647237999285756 -0.83716776178532192 -0.67718627951073775 0.10189156171389752 -0.83716776178532192 -0.67718627951073775 -0.83716776178532192 0.10189156171389752 -0.67718627951073775 -0.2647237999285756 0.10189156171389752 -0.67718627951073775 -1.0 1.0 -0.36311746382617816 1.0 -1.0 -0.36311746382617816 -1.0 -1.0 -0.36311746382617816 -0.5665379630179386 0.1330759260358772 -0.36311746382617816 0.1330759260358772 -0.5665379630179386 -0.36311746382617816 -0.5665379630179386 -0.5665379630179386 -0.36311746382617816 -0.2219883817461012 -0.5560232365077976 -0.36311746382617816 -0.5560232365077976 -0.2219883817461012 -0.36311746382617816 -0.2219883817461012 -0.2219883817461012 -0.36311746382617816 0.0 -1.0 -0.36311746382617816 -1.0 0.0 -0.36311746382617816 0.0 0.0 -0.36311746382617816 0.89975799541146028 -0.89975799541146028 -0.36311746382617816 -1.0 -0.89975799541146028 -0.36311746382617816 -0.89975799541146028 -1.0 -0.36311746382617816 0.89975799541146028 -1.0 -0.36311746382617816 -1.0 0.89975799541146028 -0.36311746382617816 -0.89975799541146028 0.89975799541146028 -0.36311746382617816 -0.86181986027653946 0.72363972055307892 -0.36311746382617816 0.72363972055307892 -0.86181986027653946 -0.36311746382617816 -0.86181986027653946 -0.86181986027653946 -0.36311746382617816 0.6771862795107378 -0.6771862795107378 -0.36311746382617816 -1.0 -0.6771862795107378 -0.36311746382617816 -0.6771862795107378 -1.0 -0.36311746382617816 0.6771862795107378 -1.0 -0.36311746382617816 -1.0 0.6771862795107378 -0.36311746382617816 -0.6771862795107378 0.6771862795107378 -0.36311746382617816 0.44642711029554092 -0.6025435027169984 -0.36311746382617816 -0.84388360757854252 -0.6025435027169984 -0.36311746382617816 -0.6025435027169984 -0.84388360757854252 -0.36311746382617816 0.44642711029554092 -0.84388360757854252 -0.36311746382617816 -0.84388360757854252 0.44642711029554092 -0.36311746382617816 -0.6025435027169984 0.44642711029554092 -0.36311746382617816 0.3631174638261782 -0.3631174638261782 -0.36311746382617816 -1.0 -0.3631174638261782 -0.36311746382617816 -0.3631174638261782 -1.0 -0.36311746382617816 0.3631174638261782 -1.0 -0.36311746382617816 -1.0 0.3631174638261782 -0.36311746382617816 -0.3631174638261782 0.3631174638261782 -0.36311746382617816 0.10189156171389752 -0.2647237999285756 -0.36311746382617816 -0.83716776178532192 -0.2647237999285756 -0.36311746382617816 -0.2647237999285756 -0.83716776178532192 -0.36311746382617816 0.10189156171389752 -0.83716776178532192 -0.36311746382617816 -0.83716776178532192 0.10189156171389752 -0.36311746382617816 -0.2647237999285756 0.10189156171389752 -0.36311746382617816 -1.0 1.0 0.0 1.0 -1.0 0.0 -1.0 -1.0 0.0 -0.5665379630179386 0.1330759260358772 0.0 0.1330759260358772 -0.5665379630179386 0.0 -0.5665379630179386 -0.5665379630179386 0.0 -0.2219883817461012 -0.5560232365077976 0.0 -0.5560232365077976 -0.2219883817461012 0.0 -0.2219883817461012 -0.2219883817461012 0.0 0.0 -1.0 0.0 -1.0 0.0 0.0 0.0 0.0 0.0 0.89975799541146028 -0.89975799541146028 0.0 -1.0 -0.89975799541146028 0.0 -0.89975799541146028 -1.0 0.0 0.89975799541146028 -1.0 0.0 -1.0 0.89975799541146028 0.0 -0.89975799541146028 0.89975799541146028 0.0 -0.86181986027653946 0.72363972055307892 0.0 0.72363972055307892 -0.86181986027653946 0.0 -0.86181986027653946 -0.86181986027653946 0.0 0.6771862795107378 -0.6771862795107378 0.0 -1.0 -0.6771862795107378 0.0 -0.6771862795107378 -1.0 0.0 0.6771862795107378 -1.0 0.0 -1.0 0.6771862795107378 0.0 -0.6771862795107378 0.6771862795107378 0.0 0.44642711029554092 -0.6025435027169984 0.0 -0.84388360757854252 -0.6025435027169984 0.0 -0.6025435027169984 -0.84388360757854252 0.0 0.44642711029554092 -0.84388360757854252 0.0 -0.84388360757854252 0.44642711029554092 0.0 -0.6025435027169984 0.44642711029554092 0.0 0.3631174638261782 -0.3631174638261782 0.0 -1.0 -0.3631174638261782 0.0 -0.3631174638261782 -1.0 0.0 0.3631174638261782 -1.0 0.0 -1.0 0.3631174638261782 0.0 -0.3631174638261782 0.3631174638261782 0.0 0.10189156171389752 -0.2647237999285756 0.0 -0.83716776178532192 -0.2647237999285756 0.0 -0.2647237999285756 -0.83716776178532192 0.0 0.10189156171389752 -0.83716776178532192 0.0 -0.83716776178532192 0.10189156171389752 0.0 -0.2647237999285756 0.10189156171389752 0.0 -1.0 1.0 0.36311746382617816 1.0 -1.0 0.36311746382617816 -1.0 -1.0 0.36311746382617816 -0.5665379630179386 0.1330759260358772 0.36311746382617816 0.1330759260358772 -0.5665379630179386 0.36311746382617816 -0.5665379630179386 -0.5665379630179386 0.36311746382617816 -0.2219883817461012 -0.5560232365077976 0.36311746382617816 -0.5560232365077976 -0.2219883817461012 0.36311746382617816 -0.2219883817461012 -0.2219883817461012 0.36311746382617816 0.0 -1.0 0.36311746382617816 -1.0 0.0 0.36311746382617816 0.0 0.0 0.36311746382617816 0.89975799541146028 -0.89975799541146028 0.36311746382617816 -1.0 -0.89975799541146028 0.36311746382617816 -0.89975799541146028 -1.0 0.36311746382617816 0.89975799541146028 -1.0 0.36311746382617816 -1.0 0.89975799541146028 0.36311746382617816 -0.89975799541146028 0.89975799541146028 0.36311746382617816 -0.86181986027653946 0.72363972055307892 0.36311746382617816 0.72363972055307892 -0.86181986027653946 0.36311746382617816 -0.86181986027653946 -0.86181986027653946 0.36311746382617816 0.6771862795107378 -0.6771862795107378 0.36311746382617816 -1.0 -0.6771862795107378 0.36311746382617816 -0.6771862795107378 -1.0 0.36311746382617816 0.6771862795107378 -1.0 0.36311746382617816 -1.0 0.6771862795107378 0.36311746382617816 -0.6771862795107378 0.6771862795107378 0.36311746382617816 0.44642711029554092 -0.6025435027169984 0.36311746382617816 -0.84388360757854252 -0.6025435027169984 0.36311746382617816 -0.6025435027169984 -0.84388360757854252 0.36311746382617816 0.44642711029554092 -0.84388360757854252 0.36311746382617816 -0.84388360757854252 0.44642711029554092 0.36311746382617816 -0.6025435027169984 0.44642711029554092 0.36311746382617816 0.3631174638261782 -0.3631174638261782 0.36311746382617816 -1.0 -0.3631174638261782 0.36311746382617816 -0.3631174638261782 -1.0 0.36311746382617816 0.3631174638261782 -1.0 0.36311746382617816 -1.0 0.3631174638261782 0.36311746382617816 -0.3631174638261782 0.3631174638261782 0.36311746382617816 0.10189156171389752 -0.2647237999285756 0.36311746382617816 -0.83716776178532192 -0.2647237999285756 0.36311746382617816 -0.2647237999285756 -0.83716776178532192 0.36311746382617816 0.10189156171389752 -0.83716776178532192 0.36311746382617816 -0.83716776178532192 0.10189156171389752 0.36311746382617816 -0.2647237999285756 0.10189156171389752 0.36311746382617816 -1.0 1.0 0.67718627951073775 1.0 -1.0 0.67718627951073775 -1.0 -1.0 0.67718627951073775 -0.5665379630179386 0.1330759260358772 0.67718627951073775 0.1330759260358772 -0.5665379630179386 0.67718627951073775 -0.5665379630179386 -0.5665379630179386 0.67718627951073775 -0.2219883817461012 -0.5560232365077976 0.67718627951073775 -0.5560232365077976 -0.2219883817461012 0.67718627951073775 -0.2219883817461012 -0.2219883817461012 0.67718627951073775 0.0 -1.0 0.67718627951073775 -1.0 0.0 0.67718627951073775 0.0 0.0 0.67718627951073775 0.89975799541146028 -0.89975799541146028 0.67718627951073775 -1.0 -0.89975799541146028 0.67718627951073775 -0.89975799541146028 -1.0 0.67718627951073775 0.89975799541146028 -1.0 0.67718627951073775 -1.0 0.89975799541146028 0.67718627951073775 -0.89975799541146028 0.89975799541146028 0.67718627951073775 -0.86181986027653946 0.72363972055307892 0.67718627951073775 0.72363972055307892 -0.86181986027653946 0.67718627951073775 -0.86181986027653946 -0.86181986027653946 0.67718627951073775 0.6771862795107378 -0.6771862795107378 0.67718627951073775 -1.0 -0.6771862795107378 0.67718627951073775 -0.6771862795107378 -1.0 0.67718627951073775 0.6771862795107378 -1.0 0.67718627951073775 -1.0 0.6771862795107378 0.67718627951073775 -0.6771862795107378 0.6771862795107378 0.67718627951073775 0.44642711029554092 -0.6025435027169984 0.67718627951073775 -0.84388360757854252 -0.6025435027169984 0.67718627951073775 -0.6025435027169984 -0.84388360757854252 0.67718627951073775 0.44642711029554092 -0.84388360757854252 0.67718627951073775 -0.84388360757854252 0.44642711029554092 0.67718627951073775 -0.6025435027169984 0.44642711029554092 0.67718627951073775 0.3631174638261782 -0.3631174638261782 0.67718627951073775 -1.0 -0.3631174638261782 0.67718627951073775 -0.3631174638261782 -1.0 0.67718627951073775 0.3631174638261782 -1.0 0.67718627951073775 -1.0 0.3631174638261782 0.67718627951073775 -0.3631174638261782 0.3631174638261782 0.67718627951073775 0.10189156171389752 -0.2647237999285756 0.67718627951073775 -0.83716776178532192 -0.2647237999285756 0.67718627951073775 -0.2647237999285756 -0.83716776178532192 0.67718627951073775 0.10189156171389752 -0.83716776178532192 0.67718627951073775 -0.83716776178532192 0.10189156171389752 0.67718627951073775 -0.2647237999285756 0.10189156171389752 0.67718627951073775 -1.0 1.0 0.89975799541146016 1.0 -1.0 0.89975799541146016 -1.0 -1.0 0.89975799541146016 -0.5665379630179386 0.1330759260358772 0.89975799541146016 0.1330759260358772 -0.5665379630179386 0.89975799541146016 -0.5665379630179386 -0.5665379630179386 0.89975799541146016 -0.2219883817461012 -0.5560232365077976 0.89975799541146016 -0.5560232365077976 -0.2219883817461012 0.89975799541146016 -0.2219883817461012 -0.2219883817461012 0.89975799541146016 0.0 -1.0 0.89975799541146016 -1.0 0.0 0.89975799541146016 0.0 0.0 0.89975799541146016 0.89975799541146028 -0.89975799541146028 0.89975799541146016 -1.0 -0.89975799541146028 0.89975799541146016 -0.89975799541146028 -1.0 0.89975799541146016 0.89975799541146028 -1.0 0.89975799541146016 -1.0 0.89975799541146028 0.89975799541146016 -0.89975799541146028 0.89975799541146028 0.89975799541146016 -0.86181986027653946 0.72363972055307892 0.89975799541146016 0.72363972055307892 -0.86181986027653946 0.89975799541146016 -0.86181986027653946 -0.86181986027653946 0.89975799541146016 0.6771862795107378 -0.6771862795107378 0.89975799541146016 -1.0 -0.6771862795107378 0.89975799541146016 -0.6771862795107378 -1.0 0.89975799541146016 0.6771862795107378 -1.0 0.89975799541146016 -1.0 0.6771862795107378 0.89975799541146016 -0.6771862795107378 0.6771862795107378 0.89975799541146016 0.44642711029554092 -0.6025435027169984 0.89975799541146016 -0.84388360757854252 -0.6025435027169984 0.89975799541146016 -0.6025435027169984 -0.84388360757854252 0.89975799541146016 0.44642711029554092 -0.84388360757854252 0.89975799541146016 -0.84388360757854252 0.44642711029554092 0.89975799541146016 -0.6025435027169984 0.44642711029554092 0.89975799541146016 0.3631174638261782 -0.3631174638261782 0.89975799541146016 -1.0 -0.3631174638261782 0.89975799541146016 -0.3631174638261782 -1.0 0.89975799541146016 0.3631174638261782 -1.0 0.89975799541146016 -1.0 0.3631174638261782 0.89975799541146016 -0.3631174638261782 0.3631174638261782 0.89975799541146016 0.10189156171389752 -0.2647237999285756 0.89975799541146016 -0.83716776178532192 -0.2647237999285756 0.89975799541146016 -0.2647237999285756 -0.83716776178532192 0.89975799541146016 0.10189156171389752 -0.83716776178532192 0.89975799541146016 -0.83716776178532192 0.10189156171389752 0.89975799541146016 -0.2647237999285756 0.10189156171389752 0.89975799541146016 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 -0.5665379630179386 0.1330759260358772 1.0 0.1330759260358772 -0.5665379630179386 1.0 -0.5665379630179386 -0.5665379630179386 1.0 -0.2219883817461012 -0.5560232365077976 1.0 -0.5560232365077976 -0.2219883817461012 1.0 -0.2219883817461012 -0.2219883817461012 1.0 0.0 -1.0 1.0 -1.0 0.0 1.0 0.0 0.0 1.0 0.89975799541146028 -0.89975799541146028 1.0 -1.0 -0.89975799541146028 1.0 -0.89975799541146028 -1.0 1.0 0.89975799541146028 -1.0 1.0 -1.0 0.89975799541146028 1.0 -0.89975799541146028 0.89975799541146028 1.0 -0.86181986027653946 0.72363972055307892 1.0 0.72363972055307892 -0.86181986027653946 1.0 -0.86181986027653946 -0.86181986027653946 1.0 0.6771862795107378 -0.6771862795107378 1.0 -1.0 -0.6771862795107378 1.0 -0.6771862795107378 -1.0 1.0 0.6771862795107378 -1.0 1.0 -1.0 0.6771862795107378 1.0 -0.6771862795107378 0.6771862795107378 1.0 0.44642711029554092 -0.6025435027169984 1.0 -0.84388360757854252 -0.6025435027169984 1.0 -0.6025435027169984 -0.84388360757854252 1.0 0.44642711029554092 -0.84388360757854252 1.0 -0.84388360757854252 0.44642711029554092 1.0 -0.6025435027169984 0.44642711029554092 1.0 0.3631174638261782 -0.3631174638261782 1.0 -1.0 -0.3631174638261782 1.0 -0.3631174638261782 -1.0 1.0 0.3631174638261782 -1.0 1.0 -1.0 0.3631174638261782 1.0 -0.3631174638261782 0.3631174638261782 1.0 0.10189156171389752 -0.2647237999285756 1.0 -0.83716776178532192 -0.2647237999285756 1.0 -0.2647237999285756 -0.83716776178532192 1.0 0.10189156171389752 -0.83716776178532192 1.0 -0.83716776178532192 0.10189156171389752 1.0 -0.2647237999285756 0.10189156171389752 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n6-su.txt000066400000000000000000000001231277740313300263410ustar00rootroot00000000000000-1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 pyfr-1.5.0/pyfr/quadrules/pri/alpha-opt~gauss-legendre-lobatto-n75-su.txt000066400000000000000000000047161277740313300264430ustar00rootroot00000000000000-1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 -1.0 -0.5515835075553056 0.1031670151106112 -1.0 0.1031670151106112 -0.5515835075553056 -1.0 -0.5515835075553056 -0.5515835075553056 -1.0 0.0 -1.0 -1.0 -1.0 0.0 -1.0 0.0 0.0 -1.0 0.654653670707977 -0.654653670707977 -1.0 -1.0 -0.654653670707977 -1.0 -0.654653670707977 -1.0 -1.0 0.654653670707977 -1.0 -1.0 -1.0 0.654653670707977 -1.0 -0.654653670707977 0.654653670707977 -1.0 -1.0 1.0 -0.65465367070797714 1.0 -1.0 -0.65465367070797714 -1.0 -1.0 -0.65465367070797714 -0.5515835075553056 0.1031670151106112 -0.65465367070797714 0.1031670151106112 -0.5515835075553056 -0.65465367070797714 -0.5515835075553056 -0.5515835075553056 -0.65465367070797714 0.0 -1.0 -0.65465367070797714 -1.0 0.0 -0.65465367070797714 0.0 0.0 -0.65465367070797714 0.654653670707977 -0.654653670707977 -0.65465367070797714 -1.0 -0.654653670707977 -0.65465367070797714 -0.654653670707977 -1.0 -0.65465367070797714 0.654653670707977 -1.0 -0.65465367070797714 -1.0 0.654653670707977 -0.65465367070797714 -0.654653670707977 0.654653670707977 -0.65465367070797714 -1.0 1.0 0.0 1.0 -1.0 0.0 -1.0 -1.0 0.0 -0.5515835075553056 0.1031670151106112 0.0 0.1031670151106112 -0.5515835075553056 0.0 -0.5515835075553056 -0.5515835075553056 0.0 0.0 -1.0 0.0 -1.0 0.0 0.0 0.0 0.0 0.0 0.654653670707977 -0.654653670707977 0.0 -1.0 -0.654653670707977 0.0 -0.654653670707977 -1.0 0.0 0.654653670707977 -1.0 0.0 -1.0 0.654653670707977 0.0 -0.654653670707977 0.654653670707977 0.0 -1.0 1.0 0.65465367070797714 1.0 -1.0 0.65465367070797714 -1.0 -1.0 0.65465367070797714 -0.5515835075553056 0.1031670151106112 0.65465367070797714 0.1031670151106112 -0.5515835075553056 0.65465367070797714 -0.5515835075553056 -0.5515835075553056 0.65465367070797714 0.0 -1.0 0.65465367070797714 -1.0 0.0 0.65465367070797714 0.0 0.0 0.65465367070797714 0.654653670707977 -0.654653670707977 0.65465367070797714 -1.0 -0.654653670707977 0.65465367070797714 -0.654653670707977 -1.0 0.65465367070797714 0.654653670707977 -1.0 0.65465367070797714 -1.0 0.654653670707977 0.65465367070797714 -0.654653670707977 0.654653670707977 0.65465367070797714 -1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 1.0 -0.5515835075553056 0.1031670151106112 1.0 0.1031670151106112 -0.5515835075553056 1.0 -0.5515835075553056 -0.5515835075553056 1.0 0.0 -1.0 1.0 -1.0 0.0 1.0 0.0 0.0 1.0 0.654653670707977 -0.654653670707977 1.0 -1.0 -0.654653670707977 1.0 -0.654653670707977 -1.0 1.0 0.654653670707977 -1.0 1.0 -1.0 0.654653670707977 1.0 -0.654653670707977 0.654653670707977 1.0 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n126-d8-spu.txt000066400000000000000000000217751277740313300303020ustar00rootroot00000000000000-0.943774095634672 0.887548191269344 -1.0 0.0013812499595384 0.887548191269344 -0.943774095634672 -1.0 0.0013812499595384 -0.943774095634672 -0.943774095634672 -1.0 0.0013812499595384 -0.645721803061366 0.291443606122732 -1.0 0.010052651243565067 0.291443606122732 -0.645721803061366 -1.0 0.010052651243565067 -0.645721803061366 -0.645721803061366 -1.0 0.010052651243565067 -0.188982808265134 -0.622034383469732 -1.0 0.0130063736497656 -0.622034383469732 -0.188982808265134 -1.0 0.0130063736497656 -0.188982808265134 -0.188982808265134 -1.0 0.0130063736497656 0.635801960056998 -0.702868375458226 -1.0 0.0038625692496630667 -0.932933584598772 -0.702868375458226 -1.0 0.0038625692496630667 -0.702868375458226 -0.932933584598772 -1.0 0.0038625692496630667 0.635801960056998 -0.932933584598772 -1.0 0.0038625692496630667 -0.932933584598772 0.635801960056998 -1.0 0.0038625692496630667 -0.702868375458226 0.635801960056998 -1.0 0.0038625692496630667 0.209957823550266 -0.285607402768638 -1.0 0.0061395155461246667 -0.924350420781628 -0.285607402768638 -1.0 0.0061395155461246667 -0.285607402768638 -0.924350420781628 -1.0 0.0061395155461246667 0.209957823550266 -0.924350420781628 -1.0 0.0061395155461246667 -0.924350420781628 0.209957823550266 -1.0 0.0061395155461246667 -0.285607402768638 0.209957823550266 -1.0 0.0061395155461246667 -0.943774095634672 0.887548191269344 -0.76505532392946469 0.0078415277710904827 0.887548191269344 -0.943774095634672 -0.76505532392946469 0.0078415277710904827 -0.943774095634672 -0.943774095634672 -0.76505532392946469 0.0078415277710904827 -0.645721803061366 0.291443606122732 -0.76505532392946469 0.057070151101286786 0.291443606122732 -0.645721803061366 -0.76505532392946469 0.057070151101286786 -0.645721803061366 -0.645721803061366 -0.76505532392946469 0.057070151101286786 -0.188982808265134 -0.622034383469732 -0.76505532392946469 0.07383880048032756 -0.622034383469732 -0.188982808265134 -0.76505532392946469 0.07383880048032756 -0.188982808265134 -0.188982808265134 -0.76505532392946469 0.07383880048032756 0.635801960056998 -0.702868375458226 -0.76505532392946469 0.021928285919454551 -0.932933584598772 -0.702868375458226 -0.76505532392946469 0.021928285919454551 -0.702868375458226 -0.932933584598772 -0.76505532392946469 0.021928285919454551 0.635801960056998 -0.932933584598772 -0.76505532392946469 0.021928285919454551 -0.932933584598772 0.635801960056998 -0.76505532392946469 0.021928285919454551 -0.702868375458226 0.635801960056998 -0.76505532392946469 0.021928285919454551 0.209957823550266 -0.285607402768638 -0.76505532392946469 0.03485479317014228 -0.924350420781628 -0.285607402768638 -0.76505532392946469 0.03485479317014228 -0.285607402768638 -0.924350420781628 -0.76505532392946469 0.03485479317014228 0.209957823550266 -0.924350420781628 -0.76505532392946469 0.03485479317014228 -0.924350420781628 0.209957823550266 -0.76505532392946469 0.03485479317014228 -0.285607402768638 0.209957823550266 -0.76505532392946469 0.03485479317014228 -0.943774095634672 0.887548191269344 -0.2852315164806451 0.011495971662447117 0.887548191269344 -0.943774095634672 -0.2852315164806451 0.011495971662447117 -0.943774095634672 -0.943774095634672 -0.2852315164806451 0.011495971662447117 -0.645721803061366 0.291443606122732 -0.2852315164806451 0.083666966308624148 0.291443606122732 -0.645721803061366 -0.2852315164806451 0.083666966308624148 -0.645721803061366 -0.645721803061366 -0.2852315164806451 0.083666966308624148 -0.188982808265134 -0.622034383469732 -0.2852315164806451 0.10825043061639084 -0.622034383469732 -0.188982808265134 -0.2852315164806451 0.10825043061639084 -0.188982808265134 -0.188982808265134 -0.2852315164806451 0.10825043061639084 0.635801960056998 -0.702868375458226 -0.2852315164806451 0.032147683575828382 -0.932933584598772 -0.702868375458226 -0.2852315164806451 0.032147683575828382 -0.702868375458226 -0.932933584598772 -0.2852315164806451 0.032147683575828382 0.635801960056998 -0.932933584598772 -0.2852315164806451 0.032147683575828382 -0.932933584598772 0.635801960056998 -0.2852315164806451 0.032147683575828382 -0.702868375458226 0.635801960056998 -0.2852315164806451 0.032147683575828382 0.209957823550266 -0.285607402768638 -0.2852315164806451 0.051098424475603053 -0.924350420781628 -0.285607402768638 -0.2852315164806451 0.051098424475603053 -0.285607402768638 -0.924350420781628 -0.2852315164806451 0.051098424475603053 0.209957823550266 -0.924350420781628 -0.2852315164806451 0.051098424475603053 -0.924350420781628 0.209957823550266 -0.2852315164806451 0.051098424475603053 -0.285607402768638 0.209957823550266 -0.2852315164806451 0.051098424475603053 -0.943774095634672 0.887548191269344 0.2852315164806451 0.011495971662447117 0.887548191269344 -0.943774095634672 0.2852315164806451 0.011495971662447117 -0.943774095634672 -0.943774095634672 0.2852315164806451 0.011495971662447117 -0.645721803061366 0.291443606122732 0.2852315164806451 0.083666966308624148 0.291443606122732 -0.645721803061366 0.2852315164806451 0.083666966308624148 -0.645721803061366 -0.645721803061366 0.2852315164806451 0.083666966308624148 -0.188982808265134 -0.622034383469732 0.2852315164806451 0.10825043061639084 -0.622034383469732 -0.188982808265134 0.2852315164806451 0.10825043061639084 -0.188982808265134 -0.188982808265134 0.2852315164806451 0.10825043061639084 0.635801960056998 -0.702868375458226 0.2852315164806451 0.032147683575828382 -0.932933584598772 -0.702868375458226 0.2852315164806451 0.032147683575828382 -0.702868375458226 -0.932933584598772 0.2852315164806451 0.032147683575828382 0.635801960056998 -0.932933584598772 0.2852315164806451 0.032147683575828382 -0.932933584598772 0.635801960056998 0.2852315164806451 0.032147683575828382 -0.702868375458226 0.635801960056998 0.2852315164806451 0.032147683575828382 0.209957823550266 -0.285607402768638 0.2852315164806451 0.051098424475603053 -0.924350420781628 -0.285607402768638 0.2852315164806451 0.051098424475603053 -0.285607402768638 -0.924350420781628 0.2852315164806451 0.051098424475603053 0.209957823550266 -0.924350420781628 0.2852315164806451 0.051098424475603053 -0.924350420781628 0.209957823550266 0.2852315164806451 0.051098424475603053 -0.285607402768638 0.209957823550266 0.2852315164806451 0.051098424475603053 -0.943774095634672 0.887548191269344 0.76505532392946469 0.0078415277710904827 0.887548191269344 -0.943774095634672 0.76505532392946469 0.0078415277710904827 -0.943774095634672 -0.943774095634672 0.76505532392946469 0.0078415277710904827 -0.645721803061366 0.291443606122732 0.76505532392946469 0.057070151101286786 0.291443606122732 -0.645721803061366 0.76505532392946469 0.057070151101286786 -0.645721803061366 -0.645721803061366 0.76505532392946469 0.057070151101286786 -0.188982808265134 -0.622034383469732 0.76505532392946469 0.07383880048032756 -0.622034383469732 -0.188982808265134 0.76505532392946469 0.07383880048032756 -0.188982808265134 -0.188982808265134 0.76505532392946469 0.07383880048032756 0.635801960056998 -0.702868375458226 0.76505532392946469 0.021928285919454551 -0.932933584598772 -0.702868375458226 0.76505532392946469 0.021928285919454551 -0.702868375458226 -0.932933584598772 0.76505532392946469 0.021928285919454551 0.635801960056998 -0.932933584598772 0.76505532392946469 0.021928285919454551 -0.932933584598772 0.635801960056998 0.76505532392946469 0.021928285919454551 -0.702868375458226 0.635801960056998 0.76505532392946469 0.021928285919454551 0.209957823550266 -0.285607402768638 0.76505532392946469 0.03485479317014228 -0.924350420781628 -0.285607402768638 0.76505532392946469 0.03485479317014228 -0.285607402768638 -0.924350420781628 0.76505532392946469 0.03485479317014228 0.209957823550266 -0.924350420781628 0.76505532392946469 0.03485479317014228 -0.924350420781628 0.209957823550266 0.76505532392946469 0.03485479317014228 -0.285607402768638 0.209957823550266 0.76505532392946469 0.03485479317014228 -0.943774095634672 0.887548191269344 1.0 0.0013812499595384 0.887548191269344 -0.943774095634672 1.0 0.0013812499595384 -0.943774095634672 -0.943774095634672 1.0 0.0013812499595384 -0.645721803061366 0.291443606122732 1.0 0.010052651243565067 0.291443606122732 -0.645721803061366 1.0 0.010052651243565067 -0.645721803061366 -0.645721803061366 1.0 0.010052651243565067 -0.188982808265134 -0.622034383469732 1.0 0.0130063736497656 -0.622034383469732 -0.188982808265134 1.0 0.0130063736497656 -0.188982808265134 -0.188982808265134 1.0 0.0130063736497656 0.635801960056998 -0.702868375458226 1.0 0.0038625692496630667 -0.932933584598772 -0.702868375458226 1.0 0.0038625692496630667 -0.702868375458226 -0.932933584598772 1.0 0.0038625692496630667 0.635801960056998 -0.932933584598772 1.0 0.0038625692496630667 -0.932933584598772 0.635801960056998 1.0 0.0038625692496630667 -0.702868375458226 0.635801960056998 1.0 0.0038625692496630667 0.209957823550266 -0.285607402768638 1.0 0.0061395155461246667 -0.924350420781628 -0.285607402768638 1.0 0.0061395155461246667 -0.285607402768638 -0.924350420781628 1.0 0.0061395155461246667 0.209957823550266 -0.924350420781628 1.0 0.0061395155461246667 -0.924350420781628 0.209957823550266 1.0 0.0061395155461246667 -0.285607402768638 0.209957823550266 1.0 0.0061395155461246667 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n18-d3-spu.txt000066400000000000000000000021201277740313300301740ustar00rootroot00000000000000-0.81684757298044 0.63369514596088 -1.0 0.073301162436888667 0.63369514596088 -0.81684757298044 -1.0 0.073301162436888667 -0.81684757298044 -0.81684757298044 -1.0 0.073301162436888667 -0.108103018168072 -0.783793963663856 -1.0 0.14892105978533333 -0.783793963663856 -0.108103018168072 -1.0 0.14892105978533333 -0.108103018168072 -0.108103018168072 -1.0 0.14892105978533333 -0.81684757298044 0.63369514596088 0.0 0.29320464974755467 0.63369514596088 -0.81684757298044 0.0 0.29320464974755467 -0.81684757298044 -0.81684757298044 0.0 0.29320464974755467 -0.108103018168072 -0.783793963663856 0.0 0.59568423914133333 -0.783793963663856 -0.108103018168072 0.0 0.59568423914133333 -0.108103018168072 -0.108103018168072 0.0 0.59568423914133333 -0.81684757298044 0.63369514596088 1.0 0.073301162436888667 0.63369514596088 -0.81684757298044 1.0 0.073301162436888667 -0.81684757298044 -0.81684757298044 1.0 0.073301162436888667 -0.108103018168072 -0.783793963663856 1.0 0.14892105978533333 -0.783793963663856 -0.108103018168072 1.0 0.14892105978533333 -0.108103018168072 -0.108103018168072 1.0 0.14892105978533333 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n196-d10-spu.txt000066400000000000000000000333211277740313300303500ustar00rootroot00000000000000-0.333333333333333 -0.333333333333333 -1.0 0.0079626868776797143 -0.960045625755614 0.920091251511228 -1.0 0.0005021114552852381 0.920091251511228 -0.960045625755614 -1.0 0.0005021114552852381 -0.960045625755614 -0.960045625755614 -1.0 0.0005021114552852381 -0.736556464940004 0.473112929880008 -1.0 0.0042431368266194286 0.473112929880008 -0.736556464940004 -1.0 0.0042431368266194286 -0.736556464940004 -0.736556464940004 -1.0 0.0042431368266194286 -0.029729306413078 -0.940541387173844 -1.0 0.0032205440765902857 -0.940541387173844 -0.029729306413078 -1.0 0.0032205440765902857 -0.029729306413078 -0.029729306413078 -1.0 0.0032205440765902857 0.7358224202359 -0.784096036307978 -1.0 0.0014962344133507619 -0.951726383927922 -0.784096036307978 -1.0 0.0014962344133507619 -0.784096036307978 -0.951726383927922 -1.0 0.0014962344133507619 0.7358224202359 -0.951726383927922 -1.0 0.0014962344133507619 -0.951726383927922 0.7358224202359 -1.0 0.0014962344133507619 -0.784096036307978 0.7358224202359 -1.0 0.0014962344133507619 0.401745140761446 -0.458318454156866 -1.0 0.0026862034552967619 -0.94342668660458 -0.458318454156866 -1.0 0.0026862034552967619 -0.458318454156866 -0.94342668660458 -1.0 0.0026862034552967619 0.401745140761446 -0.94342668660458 -1.0 0.0026862034552967619 -0.94342668660458 0.401745140761446 -1.0 0.0026862034552967619 -0.458318454156866 0.401745140761446 -1.0 0.0026862034552967619 0.073309368412276 -0.366900802310766 -1.0 0.006380567345507619 -0.70640856610151 -0.366900802310766 -1.0 0.006380567345507619 -0.366900802310766 -0.70640856610151 -1.0 0.006380567345507619 0.073309368412276 -0.70640856610151 -1.0 0.006380567345507619 -0.70640856610151 0.073309368412276 -1.0 0.006380567345507619 -0.366900802310766 0.073309368412276 -1.0 0.006380567345507619 -0.333333333333333 -0.333333333333333 -0.83022389627856693 0.04628986182924357 -0.960045625755614 0.920091251511228 -0.83022389627856693 0.0029189481195330986 0.920091251511228 -0.960045625755614 -0.83022389627856693 0.0029189481195330986 -0.960045625755614 -0.960045625755614 -0.83022389627856693 0.0029189481195330986 -0.736556464940004 0.473112929880008 -0.83022389627856693 0.024666826718674446 0.473112929880008 -0.736556464940004 -0.83022389627856693 0.024666826718674446 -0.736556464940004 -0.736556464940004 -0.83022389627856693 0.024666826718674446 -0.029729306413078 -0.940541387173844 -0.83022389627856693 0.018722140228600055 -0.940541387173844 -0.029729306413078 -0.83022389627856693 0.018722140228600055 -0.029729306413078 -0.029729306413078 -0.83022389627856693 0.018722140228600055 0.7358224202359 -0.784096036307978 -0.83022389627856693 0.0086981298300591 -0.951726383927922 -0.784096036307978 -0.83022389627856693 0.0086981298300591 -0.784096036307978 -0.951726383927922 -0.83022389627856693 0.0086981298300591 0.7358224202359 -0.951726383927922 -0.83022389627856693 0.0086981298300591 -0.951726383927922 0.7358224202359 -0.83022389627856693 0.0086981298300591 -0.784096036307978 0.7358224202359 -0.83022389627856693 0.0086981298300591 0.401745140761446 -0.458318454156866 -0.83022389627856693 0.015615832783714454 -0.94342668660458 -0.458318454156866 -0.83022389627856693 0.015615832783714454 -0.458318454156866 -0.94342668660458 -0.83022389627856693 0.015615832783714454 0.401745140761446 -0.94342668660458 -0.83022389627856693 0.015615832783714454 -0.94342668660458 0.401745140761446 -0.83022389627856693 0.015615832783714454 -0.458318454156866 0.401745140761446 -0.83022389627856693 0.015615832783714454 0.073309368412276 -0.366900802310766 -0.83022389627856693 0.037092452001804219 -0.70640856610151 -0.366900802310766 -0.83022389627856693 0.037092452001804219 -0.366900802310766 -0.70640856610151 -0.83022389627856693 0.037092452001804219 0.073309368412276 -0.70640856610151 -0.83022389627856693 0.037092452001804219 -0.70640856610151 0.073309368412276 -0.83022389627856693 0.037092452001804219 -0.366900802310766 0.073309368412276 -0.83022389627856693 0.037092452001804219 -0.333333333333333 -0.333333333333333 -0.46884879347071421 0.072194918910630579 -0.960045625755614 0.920091251511228 -0.46884879347071421 0.0045524703351112443 0.920091251511228 -0.960045625755614 -0.46884879347071421 0.0045524703351112443 -0.960045625755614 -0.960045625755614 -0.46884879347071421 0.0045524703351112443 -0.736556464940004 0.473112929880008 -0.46884879347071421 0.038471049261422651 0.473112929880008 -0.736556464940004 -0.46884879347071421 0.038471049261422651 -0.736556464940004 -0.736556464940004 -0.46884879347071421 0.038471049261422651 -0.029729306413078 -0.940541387173844 -0.46884879347071421 0.029199555631063396 -0.940541387173844 -0.029729306413078 -0.46884879347071421 0.029199555631063396 -0.029729306413078 -0.029729306413078 -0.46884879347071421 0.029199555631063396 0.7358224202359 -0.784096036307978 -0.46884879347071421 0.013565838240600237 -0.951726383927922 -0.784096036307978 -0.46884879347071421 0.013565838240600237 -0.784096036307978 -0.951726383927922 -0.46884879347071421 0.013565838240600237 0.7358224202359 -0.951726383927922 -0.46884879347071421 0.013565838240600237 -0.951726383927922 0.7358224202359 -0.46884879347071421 0.013565838240600237 -0.784096036307978 0.7358224202359 -0.46884879347071421 0.013565838240600237 0.401745140761446 -0.458318454156866 -0.46884879347071421 0.024354874631101363 -0.94342668660458 -0.458318454156866 -0.46884879347071421 0.024354874631101363 -0.458318454156866 -0.94342668660458 -0.46884879347071421 0.024354874631101363 0.401745140761446 -0.94342668660458 -0.46884879347071421 0.024354874631101363 -0.94342668660458 0.401745140761446 -0.46884879347071421 0.024354874631101363 -0.458318454156866 0.401745140761446 -0.46884879347071421 0.024354874631101363 0.073309368412276 -0.366900802310766 -0.46884879347071421 0.057850390099349153 -0.70640856610151 -0.366900802310766 -0.46884879347071421 0.057850390099349153 -0.366900802310766 -0.70640856610151 -0.46884879347071421 0.057850390099349153 0.073309368412276 -0.70640856610151 -0.46884879347071421 0.057850390099349153 -0.70640856610151 0.073309368412276 -0.46884879347071421 0.057850390099349153 -0.366900802310766 0.073309368412276 -0.46884879347071421 0.057850390099349153 -0.333333333333333 -0.333333333333333 0.0 0.081537913627440274 -0.960045625755614 0.920091251511228 0.0 0.0051416213021208381 0.920091251511228 -0.960045625755614 0.0 0.0051416213021208381 -0.960045625755614 -0.960045625755614 0.0 0.0051416213021208381 -0.736556464940004 0.473112929880008 0.0 0.043449721104582949 0.473112929880008 -0.736556464940004 0.0 0.043449721104582949 -0.736556464940004 -0.736556464940004 0.0 0.043449721104582949 -0.029729306413078 -0.940541387173844 0.0 0.032978371344284526 -0.940541387173844 -0.029729306413078 0.0 0.032978371344284526 -0.029729306413078 -0.029729306413078 0.0 0.032978371344284526 0.7358224202359 -0.784096036307978 0.0 0.015321440392711802 -0.951726383927922 -0.784096036307978 0.0 0.015321440392711802 -0.784096036307978 -0.951726383927922 0.0 0.015321440392711802 0.7358224202359 -0.951726383927922 0.0 0.015321440392711802 -0.951726383927922 0.7358224202359 0.0 0.015321440392711802 -0.784096036307978 0.7358224202359 0.0 0.015321440392711802 0.401745140761446 -0.458318454156866 0.0 0.027506723382238842 -0.94342668660458 -0.458318454156866 0.0 0.027506723382238842 -0.458318454156866 -0.94342668660458 0.0 0.027506723382238842 0.401745140761446 -0.94342668660458 0.0 0.027506723382238842 -0.94342668660458 0.401745140761446 0.0 0.027506723382238842 -0.458318454156866 0.401745140761446 0.0 0.027506723382238842 0.073309368412276 -0.366900802310766 0.0 0.065337009617998019 -0.70640856610151 -0.366900802310766 0.0 0.065337009617998019 -0.366900802310766 -0.70640856610151 0.0 0.065337009617998019 0.073309368412276 -0.70640856610151 0.0 0.065337009617998019 -0.70640856610151 0.073309368412276 0.0 0.065337009617998019 -0.366900802310766 0.073309368412276 0.0 0.065337009617998019 -0.333333333333333 -0.333333333333333 0.46884879347071421 0.072194918910630579 -0.960045625755614 0.920091251511228 0.46884879347071421 0.0045524703351112443 0.920091251511228 -0.960045625755614 0.46884879347071421 0.0045524703351112443 -0.960045625755614 -0.960045625755614 0.46884879347071421 0.0045524703351112443 -0.736556464940004 0.473112929880008 0.46884879347071421 0.038471049261422651 0.473112929880008 -0.736556464940004 0.46884879347071421 0.038471049261422651 -0.736556464940004 -0.736556464940004 0.46884879347071421 0.038471049261422651 -0.029729306413078 -0.940541387173844 0.46884879347071421 0.029199555631063396 -0.940541387173844 -0.029729306413078 0.46884879347071421 0.029199555631063396 -0.029729306413078 -0.029729306413078 0.46884879347071421 0.029199555631063396 0.7358224202359 -0.784096036307978 0.46884879347071421 0.013565838240600237 -0.951726383927922 -0.784096036307978 0.46884879347071421 0.013565838240600237 -0.784096036307978 -0.951726383927922 0.46884879347071421 0.013565838240600237 0.7358224202359 -0.951726383927922 0.46884879347071421 0.013565838240600237 -0.951726383927922 0.7358224202359 0.46884879347071421 0.013565838240600237 -0.784096036307978 0.7358224202359 0.46884879347071421 0.013565838240600237 0.401745140761446 -0.458318454156866 0.46884879347071421 0.024354874631101363 -0.94342668660458 -0.458318454156866 0.46884879347071421 0.024354874631101363 -0.458318454156866 -0.94342668660458 0.46884879347071421 0.024354874631101363 0.401745140761446 -0.94342668660458 0.46884879347071421 0.024354874631101363 -0.94342668660458 0.401745140761446 0.46884879347071421 0.024354874631101363 -0.458318454156866 0.401745140761446 0.46884879347071421 0.024354874631101363 0.073309368412276 -0.366900802310766 0.46884879347071421 0.057850390099349153 -0.70640856610151 -0.366900802310766 0.46884879347071421 0.057850390099349153 -0.366900802310766 -0.70640856610151 0.46884879347071421 0.057850390099349153 0.073309368412276 -0.70640856610151 0.46884879347071421 0.057850390099349153 -0.70640856610151 0.073309368412276 0.46884879347071421 0.057850390099349153 -0.366900802310766 0.073309368412276 0.46884879347071421 0.057850390099349153 -0.333333333333333 -0.333333333333333 0.83022389627856693 0.04628986182924357 -0.960045625755614 0.920091251511228 0.83022389627856693 0.0029189481195330986 0.920091251511228 -0.960045625755614 0.83022389627856693 0.0029189481195330986 -0.960045625755614 -0.960045625755614 0.83022389627856693 0.0029189481195330986 -0.736556464940004 0.473112929880008 0.83022389627856693 0.024666826718674446 0.473112929880008 -0.736556464940004 0.83022389627856693 0.024666826718674446 -0.736556464940004 -0.736556464940004 0.83022389627856693 0.024666826718674446 -0.029729306413078 -0.940541387173844 0.83022389627856693 0.018722140228600055 -0.940541387173844 -0.029729306413078 0.83022389627856693 0.018722140228600055 -0.029729306413078 -0.029729306413078 0.83022389627856693 0.018722140228600055 0.7358224202359 -0.784096036307978 0.83022389627856693 0.0086981298300591 -0.951726383927922 -0.784096036307978 0.83022389627856693 0.0086981298300591 -0.784096036307978 -0.951726383927922 0.83022389627856693 0.0086981298300591 0.7358224202359 -0.951726383927922 0.83022389627856693 0.0086981298300591 -0.951726383927922 0.7358224202359 0.83022389627856693 0.0086981298300591 -0.784096036307978 0.7358224202359 0.83022389627856693 0.0086981298300591 0.401745140761446 -0.458318454156866 0.83022389627856693 0.015615832783714454 -0.94342668660458 -0.458318454156866 0.83022389627856693 0.015615832783714454 -0.458318454156866 -0.94342668660458 0.83022389627856693 0.015615832783714454 0.401745140761446 -0.94342668660458 0.83022389627856693 0.015615832783714454 -0.94342668660458 0.401745140761446 0.83022389627856693 0.015615832783714454 -0.458318454156866 0.401745140761446 0.83022389627856693 0.015615832783714454 0.073309368412276 -0.366900802310766 0.83022389627856693 0.037092452001804219 -0.70640856610151 -0.366900802310766 0.83022389627856693 0.037092452001804219 -0.366900802310766 -0.70640856610151 0.83022389627856693 0.037092452001804219 0.073309368412276 -0.70640856610151 0.83022389627856693 0.037092452001804219 -0.70640856610151 0.073309368412276 0.83022389627856693 0.037092452001804219 -0.366900802310766 0.073309368412276 0.83022389627856693 0.037092452001804219 -0.333333333333333 -0.333333333333333 1.0 0.0079626868776797143 -0.960045625755614 0.920091251511228 1.0 0.0005021114552852381 0.920091251511228 -0.960045625755614 1.0 0.0005021114552852381 -0.960045625755614 -0.960045625755614 1.0 0.0005021114552852381 -0.736556464940004 0.473112929880008 1.0 0.0042431368266194286 0.473112929880008 -0.736556464940004 1.0 0.0042431368266194286 -0.736556464940004 -0.736556464940004 1.0 0.0042431368266194286 -0.029729306413078 -0.940541387173844 1.0 0.0032205440765902857 -0.940541387173844 -0.029729306413078 1.0 0.0032205440765902857 -0.029729306413078 -0.029729306413078 1.0 0.0032205440765902857 0.7358224202359 -0.784096036307978 1.0 0.0014962344133507619 -0.951726383927922 -0.784096036307978 1.0 0.0014962344133507619 -0.784096036307978 -0.951726383927922 1.0 0.0014962344133507619 0.7358224202359 -0.951726383927922 1.0 0.0014962344133507619 -0.951726383927922 0.7358224202359 1.0 0.0014962344133507619 -0.784096036307978 0.7358224202359 1.0 0.0014962344133507619 0.401745140761446 -0.458318454156866 1.0 0.0026862034552967619 -0.94342668660458 -0.458318454156866 1.0 0.0026862034552967619 -0.458318454156866 -0.94342668660458 1.0 0.0026862034552967619 0.401745140761446 -0.94342668660458 1.0 0.0026862034552967619 -0.94342668660458 0.401745140761446 1.0 0.0026862034552967619 -0.458318454156866 0.401745140761446 1.0 0.0026862034552967619 0.073309368412276 -0.366900802310766 1.0 0.006380567345507619 -0.70640856610151 -0.366900802310766 1.0 0.006380567345507619 -0.366900802310766 -0.70640856610151 1.0 0.006380567345507619 0.073309368412276 -0.70640856610151 1.0 0.006380567345507619 -0.70640856610151 0.073309368412276 1.0 0.006380567345507619 -0.366900802310766 0.073309368412276 1.0 0.006380567345507619 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n288-d12-spu.txt000066400000000000000000000520361277740313300303600ustar00rootroot00000000000000-0.95765715444107 0.91531430888214 -1.0 0.00040279455620785714 0.91531430888214 -0.95765715444107 -1.0 0.00040279455620785714 -0.95765715444107 -0.95765715444107 -1.0 0.00040279455620785714 -0.798831205208224 0.597662410416448 -1.0 0.0019392120137341429 0.597662410416448 -0.798831205208224 -1.0 0.0019392120137341429 -0.798831205208224 -0.798831205208224 -1.0 0.0019392120137341429 -0.457923384576136 -0.084153230847728 -1.0 0.0045072080380970714 -0.084153230847728 -0.457923384576136 -1.0 0.0045072080380970714 -0.457923384576136 -0.457923384576136 -1.0 0.0045072080380970714 -0.119617483192336 -0.760765033615328 -1.0 0.0036966282628499286 -0.760765033615328 -0.119617483192336 -1.0 0.0036966282628499286 -0.119617483192336 -0.119617483192336 -1.0 0.0036966282628499286 0.759959282854462 -0.963486641850504 -1.0 0.00070476811247471429 -0.796472641003958 -0.963486641850504 -1.0 0.00070476811247471429 -0.963486641850504 -0.796472641003958 -1.0 0.00070476811247471429 0.759959282854462 -0.796472641003958 -1.0 0.00070476811247471429 -0.796472641003958 0.759959282854462 -1.0 0.00070476811247471429 -0.963486641850504 0.759959282854462 -1.0 0.00070476811247471429 0.165124045727344 -0.211933456660026 -1.0 0.0015720146285819286 -0.953190589067318 -0.211933456660026 -1.0 0.0015720146285819286 -0.211933456660026 -0.953190589067318 -1.0 0.0015720146285819286 0.165124045727344 -0.953190589067318 -1.0 0.0015720146285819286 -0.953190589067318 0.165124045727344 -1.0 0.0015720146285819286 -0.211933456660026 0.165124045727344 -1.0 0.0015720146285819286 0.503061229085564 -0.547508938181542 -1.0 0.001188897862624 -0.955552290904022 -0.547508938181542 -1.0 0.001188897862624 -0.547508938181542 -0.955552290904022 -1.0 0.001188897862624 0.503061229085564 -0.955552290904022 -1.0 0.001188897862624 -0.955552290904022 0.503061229085564 -1.0 0.001188897862624 -0.547508938181542 0.503061229085564 -1.0 0.001188897862624 0.27147436652621 -0.501841544757336 -1.0 0.0031661598656367143 -0.769632821768874 -0.501841544757336 -1.0 0.0031661598656367143 -0.501841544757336 -0.769632821768874 -1.0 0.0031661598656367143 0.27147436652621 -0.769632821768874 -1.0 0.0031661598656367143 -0.769632821768874 0.27147436652621 -1.0 0.0031661598656367143 -0.501841544757336 0.27147436652621 -1.0 0.0031661598656367143 -0.95765715444107 0.91531430888214 -0.87174014850960662 0.0023763744385748652 0.91531430888214 -0.95765715444107 -0.87174014850960662 0.0023763744385748652 -0.95765715444107 -0.95765715444107 -0.87174014850960662 0.0023763744385748652 -0.798831205208224 0.597662410416448 -0.87174014850960662 0.011440804721395129 0.597662410416448 -0.798831205208224 -0.87174014850960662 0.011440804721395129 -0.798831205208224 -0.798831205208224 -0.87174014850960662 0.011440804721395129 -0.457923384576136 -0.084153230847728 -0.87174014850960662 0.026591258014782764 -0.084153230847728 -0.457923384576136 -0.87174014850960662 0.026591258014782764 -0.457923384576136 -0.457923384576136 -0.87174014850960662 0.026591258014782764 -0.119617483192336 -0.760765033615328 -0.87174014850960662 0.021809065632497794 -0.760765033615328 -0.119617483192336 -0.87174014850960662 0.021809065632497794 -0.119617483192336 -0.119617483192336 -0.87174014850960662 0.021809065632497794 0.759959282854462 -0.963486641850504 -0.87174014850960662 0.0041579333727224219 -0.796472641003958 -0.963486641850504 -0.87174014850960662 0.0041579333727224219 -0.963486641850504 -0.796472641003958 -0.87174014850960662 0.0041579333727224219 0.759959282854462 -0.796472641003958 -0.87174014850960662 0.0041579333727224219 -0.796472641003958 0.759959282854462 -0.87174014850960662 0.0041579333727224219 -0.963486641850504 0.759959282854462 -0.87174014850960662 0.0041579333727224219 0.165124045727344 -0.211933456660026 -0.87174014850960662 0.0092744435664619469 -0.953190589067318 -0.211933456660026 -0.87174014850960662 0.0092744435664619469 -0.211933456660026 -0.953190589067318 -0.87174014850960662 0.0092744435664619469 0.165124045727344 -0.953190589067318 -0.87174014850960662 0.0092744435664619469 -0.953190589067318 0.165124045727344 -0.87174014850960662 0.0092744435664619469 -0.211933456660026 0.165124045727344 -0.87174014850960662 0.0092744435664619469 0.503061229085564 -0.547508938181542 -0.87174014850960662 0.0070141625483091718 -0.955552290904022 -0.547508938181542 -0.87174014850960662 0.0070141625483091718 -0.547508938181542 -0.955552290904022 -0.87174014850960662 0.0070141625483091718 0.503061229085564 -0.955552290904022 -0.87174014850960662 0.0070141625483091718 -0.955552290904022 0.503061229085564 -0.87174014850960662 0.0070141625483091718 -0.547508938181542 0.503061229085564 -0.87174014850960662 0.0070141625483091718 0.27147436652621 -0.501841544757336 -0.87174014850960662 0.018679451490049583 -0.769632821768874 -0.501841544757336 -0.87174014850960662 0.018679451490049583 -0.501841544757336 -0.769632821768874 -0.87174014850960662 0.018679451490049583 0.27147436652621 -0.769632821768874 -0.87174014850960662 0.018679451490049583 -0.769632821768874 0.27147436652621 -0.87174014850960662 0.018679451490049583 -0.501841544757336 0.27147436652621 -0.87174014850960662 0.018679451490049583 -0.95765715444107 0.91531430888214 -0.5917001814331423 0.0038472661788770291 0.91531430888214 -0.95765715444107 -0.5917001814331423 0.0038472661788770291 -0.95765715444107 -0.95765715444107 -0.5917001814331423 0.0038472661788770291 -0.798831205208224 0.597662410416448 -0.5917001814331423 0.018522258255797779 0.597662410416448 -0.798831205208224 -0.5917001814331423 0.018522258255797779 -0.798831205208224 -0.798831205208224 -0.5917001814331423 0.018522258255797779 -0.457923384576136 -0.084153230847728 -0.5917001814331423 0.043050306363091057 -0.084153230847728 -0.457923384576136 -0.5917001814331423 0.043050306363091057 -0.457923384576136 -0.457923384576136 -0.5917001814331423 0.043050306363091057 -0.119617483192336 -0.760765033615328 -0.5917001814331423 0.03530810601175164 -0.760765033615328 -0.119617483192336 -0.5917001814331423 0.03530810601175164 -0.119617483192336 -0.119617483192336 -0.5917001814331423 0.03530810601175164 0.759959282854462 -0.963486641850504 -0.5917001814331423 0.0067315470909089698 -0.796472641003958 -0.963486641850504 -0.5917001814331423 0.0067315470909089698 -0.963486641850504 -0.796472641003958 -0.5917001814331423 0.0067315470909089698 0.759959282854462 -0.796472641003958 -0.5917001814331423 0.0067315470909089698 -0.796472641003958 0.759959282854462 -0.5917001814331423 0.0067315470909089698 -0.963486641850504 0.759959282854462 -0.5917001814331423 0.0067315470909089698 0.165124045727344 -0.211933456660026 -0.5917001814331423 0.015014996156309059 -0.953190589067318 -0.211933456660026 -0.5917001814331423 0.015014996156309059 -0.211933456660026 -0.953190589067318 -0.5917001814331423 0.015014996156309059 0.165124045727344 -0.953190589067318 -0.5917001814331423 0.015014996156309059 -0.953190589067318 0.165124045727344 -0.5917001814331423 0.015014996156309059 -0.211933456660026 0.165124045727344 -0.5917001814331423 0.015014996156309059 0.503061229085564 -0.547508938181542 -0.5917001814331423 0.011355681119613106 -0.955552290904022 -0.547508938181542 -0.5917001814331423 0.011355681119613106 -0.547508938181542 -0.955552290904022 -0.5917001814331423 0.011355681119613106 0.503061229085564 -0.955552290904022 -0.5917001814331423 0.011355681119613106 -0.955552290904022 0.503061229085564 -0.5917001814331423 0.011355681119613106 -0.547508938181542 0.503061229085564 -0.5917001814331423 0.011355681119613106 0.27147436652621 -0.501841544757336 -0.5917001814331423 0.030241371389577779 -0.769632821768874 -0.501841544757336 -0.5917001814331423 0.030241371389577779 -0.501841544757336 -0.769632821768874 -0.5917001814331423 0.030241371389577779 0.27147436652621 -0.769632821768874 -0.5917001814331423 0.030241371389577779 -0.769632821768874 0.27147436652621 -0.5917001814331423 0.030241371389577779 -0.501841544757336 0.27147436652621 -0.5917001814331423 0.030241371389577779 -0.95765715444107 0.91531430888214 -0.20929921790247887 0.0046518124001602486 0.91531430888214 -0.95765715444107 -0.20929921790247887 0.0046518124001602486 -0.95765715444107 -0.95765715444107 -0.20929921790247887 0.0046518124001602486 -0.798831205208224 0.597662410416448 -0.20929921790247887 0.022395661393628949 0.597662410416448 -0.798831205208224 -0.20929921790247887 0.022395661393628949 -0.798831205208224 -0.798831205208224 -0.20929921790247887 0.022395661393628949 -0.457923384576136 -0.084153230847728 -0.20929921790247887 0.052053052650747108 -0.084153230847728 -0.457923384576136 -0.20929921790247887 0.052053052650747108 -0.457923384576136 -0.457923384576136 -0.20929921790247887 0.052053052650747108 -0.119617483192336 -0.760765033615328 -0.20929921790247887 0.042691791452698638 -0.760765033615328 -0.119617483192336 -0.20929921790247887 0.042691791452698638 -0.119617483192336 -0.119617483192336 -0.20929921790247887 0.042691791452698638 0.759959282854462 -0.963486641850504 -0.20929921790247887 0.008139258573185894 -0.796472641003958 -0.963486641850504 -0.20929921790247887 0.008139258573185894 -0.963486641850504 -0.796472641003958 -0.20929921790247887 0.008139258573185894 0.759959282854462 -0.796472641003958 -0.20929921790247887 0.008139258573185894 -0.796472641003958 0.759959282854462 -0.20929921790247887 0.008139258573185894 -0.963486641850504 0.759959282854462 -0.20929921790247887 0.008139258573185894 0.165124045727344 -0.211933456660026 -0.20929921790247887 0.018154955248941065 -0.953190589067318 -0.211933456660026 -0.20929921790247887 0.018154955248941065 -0.211933456660026 -0.953190589067318 -0.20929921790247887 0.018154955248941065 0.165124045727344 -0.953190589067318 -0.20929921790247887 0.018154955248941065 -0.953190589067318 0.165124045727344 -0.20929921790247887 0.018154955248941065 -0.211933456660026 0.165124045727344 -0.20929921790247887 0.018154955248941065 0.503061229085564 -0.547508938181542 -0.20929921790247887 0.013730398622925722 -0.955552290904022 -0.547508938181542 -0.20929921790247887 0.013730398622925722 -0.547508938181542 -0.955552290904022 -0.20929921790247887 0.013730398622925722 0.503061229085564 -0.955552290904022 -0.20929921790247887 0.013730398622925722 -0.955552290904022 0.503061229085564 -0.20929921790247887 0.013730398622925722 -0.547508938181542 0.503061229085564 -0.20929921790247887 0.013730398622925722 0.27147436652621 -0.501841544757336 -0.20929921790247887 0.036565493492563924 -0.769632821768874 -0.501841544757336 -0.20929921790247887 0.036565493492563924 -0.501841544757336 -0.769632821768874 -0.20929921790247887 0.036565493492563924 0.27147436652621 -0.769632821768874 -0.20929921790247887 0.036565493492563924 -0.769632821768874 0.27147436652621 -0.20929921790247887 0.036565493492563924 -0.501841544757336 0.27147436652621 -0.20929921790247887 0.036565493492563924 -0.95765715444107 0.91531430888214 0.20929921790247887 0.0046518124001602486 0.91531430888214 -0.95765715444107 0.20929921790247887 0.0046518124001602486 -0.95765715444107 -0.95765715444107 0.20929921790247887 0.0046518124001602486 -0.798831205208224 0.597662410416448 0.20929921790247887 0.022395661393628949 0.597662410416448 -0.798831205208224 0.20929921790247887 0.022395661393628949 -0.798831205208224 -0.798831205208224 0.20929921790247887 0.022395661393628949 -0.457923384576136 -0.084153230847728 0.20929921790247887 0.052053052650747108 -0.084153230847728 -0.457923384576136 0.20929921790247887 0.052053052650747108 -0.457923384576136 -0.457923384576136 0.20929921790247887 0.052053052650747108 -0.119617483192336 -0.760765033615328 0.20929921790247887 0.042691791452698638 -0.760765033615328 -0.119617483192336 0.20929921790247887 0.042691791452698638 -0.119617483192336 -0.119617483192336 0.20929921790247887 0.042691791452698638 0.759959282854462 -0.963486641850504 0.20929921790247887 0.008139258573185894 -0.796472641003958 -0.963486641850504 0.20929921790247887 0.008139258573185894 -0.963486641850504 -0.796472641003958 0.20929921790247887 0.008139258573185894 0.759959282854462 -0.796472641003958 0.20929921790247887 0.008139258573185894 -0.796472641003958 0.759959282854462 0.20929921790247887 0.008139258573185894 -0.963486641850504 0.759959282854462 0.20929921790247887 0.008139258573185894 0.165124045727344 -0.211933456660026 0.20929921790247887 0.018154955248941065 -0.953190589067318 -0.211933456660026 0.20929921790247887 0.018154955248941065 -0.211933456660026 -0.953190589067318 0.20929921790247887 0.018154955248941065 0.165124045727344 -0.953190589067318 0.20929921790247887 0.018154955248941065 -0.953190589067318 0.165124045727344 0.20929921790247887 0.018154955248941065 -0.211933456660026 0.165124045727344 0.20929921790247887 0.018154955248941065 0.503061229085564 -0.547508938181542 0.20929921790247887 0.013730398622925722 -0.955552290904022 -0.547508938181542 0.20929921790247887 0.013730398622925722 -0.547508938181542 -0.955552290904022 0.20929921790247887 0.013730398622925722 0.503061229085564 -0.955552290904022 0.20929921790247887 0.013730398622925722 -0.955552290904022 0.503061229085564 0.20929921790247887 0.013730398622925722 -0.547508938181542 0.503061229085564 0.20929921790247887 0.013730398622925722 0.27147436652621 -0.501841544757336 0.20929921790247887 0.036565493492563924 -0.769632821768874 -0.501841544757336 0.20929921790247887 0.036565493492563924 -0.501841544757336 -0.769632821768874 0.20929921790247887 0.036565493492563924 0.27147436652621 -0.769632821768874 0.20929921790247887 0.036565493492563924 -0.769632821768874 0.27147436652621 0.20929921790247887 0.036565493492563924 -0.501841544757336 0.27147436652621 0.20929921790247887 0.036565493492563924 -0.95765715444107 0.91531430888214 0.5917001814331423 0.0038472661788770291 0.91531430888214 -0.95765715444107 0.5917001814331423 0.0038472661788770291 -0.95765715444107 -0.95765715444107 0.5917001814331423 0.0038472661788770291 -0.798831205208224 0.597662410416448 0.5917001814331423 0.018522258255797779 0.597662410416448 -0.798831205208224 0.5917001814331423 0.018522258255797779 -0.798831205208224 -0.798831205208224 0.5917001814331423 0.018522258255797779 -0.457923384576136 -0.084153230847728 0.5917001814331423 0.043050306363091057 -0.084153230847728 -0.457923384576136 0.5917001814331423 0.043050306363091057 -0.457923384576136 -0.457923384576136 0.5917001814331423 0.043050306363091057 -0.119617483192336 -0.760765033615328 0.5917001814331423 0.03530810601175164 -0.760765033615328 -0.119617483192336 0.5917001814331423 0.03530810601175164 -0.119617483192336 -0.119617483192336 0.5917001814331423 0.03530810601175164 0.759959282854462 -0.963486641850504 0.5917001814331423 0.0067315470909089698 -0.796472641003958 -0.963486641850504 0.5917001814331423 0.0067315470909089698 -0.963486641850504 -0.796472641003958 0.5917001814331423 0.0067315470909089698 0.759959282854462 -0.796472641003958 0.5917001814331423 0.0067315470909089698 -0.796472641003958 0.759959282854462 0.5917001814331423 0.0067315470909089698 -0.963486641850504 0.759959282854462 0.5917001814331423 0.0067315470909089698 0.165124045727344 -0.211933456660026 0.5917001814331423 0.015014996156309059 -0.953190589067318 -0.211933456660026 0.5917001814331423 0.015014996156309059 -0.211933456660026 -0.953190589067318 0.5917001814331423 0.015014996156309059 0.165124045727344 -0.953190589067318 0.5917001814331423 0.015014996156309059 -0.953190589067318 0.165124045727344 0.5917001814331423 0.015014996156309059 -0.211933456660026 0.165124045727344 0.5917001814331423 0.015014996156309059 0.503061229085564 -0.547508938181542 0.5917001814331423 0.011355681119613106 -0.955552290904022 -0.547508938181542 0.5917001814331423 0.011355681119613106 -0.547508938181542 -0.955552290904022 0.5917001814331423 0.011355681119613106 0.503061229085564 -0.955552290904022 0.5917001814331423 0.011355681119613106 -0.955552290904022 0.503061229085564 0.5917001814331423 0.011355681119613106 -0.547508938181542 0.503061229085564 0.5917001814331423 0.011355681119613106 0.27147436652621 -0.501841544757336 0.5917001814331423 0.030241371389577779 -0.769632821768874 -0.501841544757336 0.5917001814331423 0.030241371389577779 -0.501841544757336 -0.769632821768874 0.5917001814331423 0.030241371389577779 0.27147436652621 -0.769632821768874 0.5917001814331423 0.030241371389577779 -0.769632821768874 0.27147436652621 0.5917001814331423 0.030241371389577779 -0.501841544757336 0.27147436652621 0.5917001814331423 0.030241371389577779 -0.95765715444107 0.91531430888214 0.87174014850960662 0.0023763744385748652 0.91531430888214 -0.95765715444107 0.87174014850960662 0.0023763744385748652 -0.95765715444107 -0.95765715444107 0.87174014850960662 0.0023763744385748652 -0.798831205208224 0.597662410416448 0.87174014850960662 0.011440804721395129 0.597662410416448 -0.798831205208224 0.87174014850960662 0.011440804721395129 -0.798831205208224 -0.798831205208224 0.87174014850960662 0.011440804721395129 -0.457923384576136 -0.084153230847728 0.87174014850960662 0.026591258014782764 -0.084153230847728 -0.457923384576136 0.87174014850960662 0.026591258014782764 -0.457923384576136 -0.457923384576136 0.87174014850960662 0.026591258014782764 -0.119617483192336 -0.760765033615328 0.87174014850960662 0.021809065632497794 -0.760765033615328 -0.119617483192336 0.87174014850960662 0.021809065632497794 -0.119617483192336 -0.119617483192336 0.87174014850960662 0.021809065632497794 0.759959282854462 -0.963486641850504 0.87174014850960662 0.0041579333727224219 -0.796472641003958 -0.963486641850504 0.87174014850960662 0.0041579333727224219 -0.963486641850504 -0.796472641003958 0.87174014850960662 0.0041579333727224219 0.759959282854462 -0.796472641003958 0.87174014850960662 0.0041579333727224219 -0.796472641003958 0.759959282854462 0.87174014850960662 0.0041579333727224219 -0.963486641850504 0.759959282854462 0.87174014850960662 0.0041579333727224219 0.165124045727344 -0.211933456660026 0.87174014850960662 0.0092744435664619469 -0.953190589067318 -0.211933456660026 0.87174014850960662 0.0092744435664619469 -0.211933456660026 -0.953190589067318 0.87174014850960662 0.0092744435664619469 0.165124045727344 -0.953190589067318 0.87174014850960662 0.0092744435664619469 -0.953190589067318 0.165124045727344 0.87174014850960662 0.0092744435664619469 -0.211933456660026 0.165124045727344 0.87174014850960662 0.0092744435664619469 0.503061229085564 -0.547508938181542 0.87174014850960662 0.0070141625483091718 -0.955552290904022 -0.547508938181542 0.87174014850960662 0.0070141625483091718 -0.547508938181542 -0.955552290904022 0.87174014850960662 0.0070141625483091718 0.503061229085564 -0.955552290904022 0.87174014850960662 0.0070141625483091718 -0.955552290904022 0.503061229085564 0.87174014850960662 0.0070141625483091718 -0.547508938181542 0.503061229085564 0.87174014850960662 0.0070141625483091718 0.27147436652621 -0.501841544757336 0.87174014850960662 0.018679451490049583 -0.769632821768874 -0.501841544757336 0.87174014850960662 0.018679451490049583 -0.501841544757336 -0.769632821768874 0.87174014850960662 0.018679451490049583 0.27147436652621 -0.769632821768874 0.87174014850960662 0.018679451490049583 -0.769632821768874 0.27147436652621 0.87174014850960662 0.018679451490049583 -0.501841544757336 0.27147436652621 0.87174014850960662 0.018679451490049583 -0.95765715444107 0.91531430888214 1.0 0.00040279455620785714 0.91531430888214 -0.95765715444107 1.0 0.00040279455620785714 -0.95765715444107 -0.95765715444107 1.0 0.00040279455620785714 -0.798831205208224 0.597662410416448 1.0 0.0019392120137341429 0.597662410416448 -0.798831205208224 1.0 0.0019392120137341429 -0.798831205208224 -0.798831205208224 1.0 0.0019392120137341429 -0.457923384576136 -0.084153230847728 1.0 0.0045072080380970714 -0.084153230847728 -0.457923384576136 1.0 0.0045072080380970714 -0.457923384576136 -0.457923384576136 1.0 0.0045072080380970714 -0.119617483192336 -0.760765033615328 1.0 0.0036966282628499286 -0.760765033615328 -0.119617483192336 1.0 0.0036966282628499286 -0.119617483192336 -0.119617483192336 1.0 0.0036966282628499286 0.759959282854462 -0.963486641850504 1.0 0.00070476811247471429 -0.796472641003958 -0.963486641850504 1.0 0.00070476811247471429 -0.963486641850504 -0.796472641003958 1.0 0.00070476811247471429 0.759959282854462 -0.796472641003958 1.0 0.00070476811247471429 -0.796472641003958 0.759959282854462 1.0 0.00070476811247471429 -0.963486641850504 0.759959282854462 1.0 0.00070476811247471429 0.165124045727344 -0.211933456660026 1.0 0.0015720146285819286 -0.953190589067318 -0.211933456660026 1.0 0.0015720146285819286 -0.211933456660026 -0.953190589067318 1.0 0.0015720146285819286 0.165124045727344 -0.953190589067318 1.0 0.0015720146285819286 -0.953190589067318 0.165124045727344 1.0 0.0015720146285819286 -0.211933456660026 0.165124045727344 1.0 0.0015720146285819286 0.503061229085564 -0.547508938181542 1.0 0.001188897862624 -0.955552290904022 -0.547508938181542 1.0 0.001188897862624 -0.547508938181542 -0.955552290904022 1.0 0.001188897862624 0.503061229085564 -0.955552290904022 1.0 0.001188897862624 -0.955552290904022 0.503061229085564 1.0 0.001188897862624 -0.547508938181542 0.503061229085564 1.0 0.001188897862624 0.27147436652621 -0.501841544757336 1.0 0.0031661598656367143 -0.769632821768874 -0.501841544757336 1.0 0.0031661598656367143 -0.501841544757336 -0.769632821768874 1.0 0.0031661598656367143 0.27147436652621 -0.769632821768874 1.0 0.0031661598656367143 -0.769632821768874 0.27147436652621 1.0 0.0031661598656367143 -0.501841544757336 0.27147436652621 1.0 0.0031661598656367143 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n40-d5-spu.txt000066400000000000000000000053241277740313300302020ustar00rootroot00000000000000-0.333333333333333 -0.333333333333333 -1.0 0.06718099619491 -0.888871894660414 0.777743789320828 -1.0 0.013985170998883 0.777743789320828 -0.888871894660414 -1.0 0.013985170998883 -0.888871894660414 -0.888871894660414 -1.0 0.013985170998883 0.268421495491446 -0.408932576528214 -1.0 0.037366137356962333 -0.859488918963232 -0.408932576528214 -1.0 0.037366137356962333 -0.408932576528214 -0.859488918963232 -1.0 0.037366137356962333 0.268421495491446 -0.859488918963232 -1.0 0.037366137356962333 -0.859488918963232 0.268421495491446 -1.0 0.037366137356962333 -0.408932576528214 0.268421495491446 -1.0 0.037366137356962333 -0.333333333333333 -0.333333333333333 -0.44721359549995794 0.33590498097455 -0.888871894660414 0.777743789320828 -0.44721359549995794 0.069925854994415 0.777743789320828 -0.888871894660414 -0.44721359549995794 0.069925854994415 -0.888871894660414 -0.888871894660414 -0.44721359549995794 0.069925854994415 0.268421495491446 -0.408932576528214 -0.44721359549995794 0.18683068678481167 -0.859488918963232 -0.408932576528214 -0.44721359549995794 0.18683068678481167 -0.408932576528214 -0.859488918963232 -0.44721359549995794 0.18683068678481167 0.268421495491446 -0.859488918963232 -0.44721359549995794 0.18683068678481167 -0.859488918963232 0.268421495491446 -0.44721359549995794 0.18683068678481167 -0.408932576528214 0.268421495491446 -0.44721359549995794 0.18683068678481167 -0.333333333333333 -0.333333333333333 0.44721359549995794 0.33590498097455 -0.888871894660414 0.777743789320828 0.44721359549995794 0.069925854994415 0.777743789320828 -0.888871894660414 0.44721359549995794 0.069925854994415 -0.888871894660414 -0.888871894660414 0.44721359549995794 0.069925854994415 0.268421495491446 -0.408932576528214 0.44721359549995794 0.18683068678481167 -0.859488918963232 -0.408932576528214 0.44721359549995794 0.18683068678481167 -0.408932576528214 -0.859488918963232 0.44721359549995794 0.18683068678481167 0.268421495491446 -0.859488918963232 0.44721359549995794 0.18683068678481167 -0.859488918963232 0.268421495491446 0.44721359549995794 0.18683068678481167 -0.408932576528214 0.268421495491446 0.44721359549995794 0.18683068678481167 -0.333333333333333 -0.333333333333333 1.0 0.06718099619491 -0.888871894660414 0.777743789320828 1.0 0.013985170998883 0.777743789320828 -0.888871894660414 1.0 0.013985170998883 -0.888871894660414 -0.888871894660414 1.0 0.013985170998883 0.268421495491446 -0.408932576528214 1.0 0.037366137356962333 -0.859488918963232 -0.408932576528214 1.0 0.037366137356962333 -0.408932576528214 -0.859488918963232 1.0 0.037366137356962333 0.268421495491446 -0.859488918963232 1.0 0.037366137356962333 -0.859488918963232 0.268421495491446 1.0 0.037366137356962333 -0.408932576528214 0.268421495491446 1.0 0.037366137356962333 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n405-d14-spu.txt000066400000000000000000000722431277740313300303530ustar00rootroot00000000000000-0.895845867331362 0.791691734662724 -1.0 0.00073477644836144444 0.791691734662724 -0.895845867331362 -1.0 0.00073477644836144444 -0.895845867331362 -0.895845867331362 -1.0 0.00073477644836144444 -0.772586942778008 0.545173885556016 -1.0 0.00096532303548227778 0.545173885556016 -0.772586942778008 -1.0 0.00096532303548227778 -0.772586942778008 -0.772586942778008 -1.0 0.00096532303548227778 -0.565662308452164 0.131324616904328 -1.0 0.0026262821268792222 0.131324616904328 -0.565662308452164 -1.0 0.0026262821268792222 -0.565662308452164 -0.565662308452164 -1.0 0.0026262821268792222 -0.227854451277354 -0.544291097445292 -1.0 0.0029445678039454444 -0.544291097445292 -0.227854451277354 -1.0 0.0029445678039454444 -0.227854451277354 -0.227854451277354 -1.0 0.0029445678039454444 -0.02014813417346 -0.95970373165308 -1.0 0.0010523656646616111 -0.95970373165308 -0.02014813417346 -1.0 0.0010523656646616111 -0.02014813417346 -0.02014813417346 -1.0 0.0010523656646616111 0.669376181231556 -0.703503756777164 -1.0 0.00066321017185894444 -0.965872424454392 -0.703503756777164 -1.0 0.00066321017185894444 -0.703503756777164 -0.965872424454392 -1.0 0.00066321017185894444 0.669376181231556 -0.965872424454392 -1.0 0.00066321017185894444 -0.965872424454392 0.669376181231556 -1.0 0.00066321017185894444 -0.703503756777164 0.669376181231556 -1.0 0.00066321017185894444 0.414495985308496 -0.57957674232286 -1.0 0.0013721067523686111 -0.834919242985636 -0.57957674232286 -1.0 0.0013721067523686111 -0.57957674232286 -0.834919242985636 -1.0 0.0013721067523686111 0.414495985308496 -0.834919242985636 -1.0 0.0013721067523686111 -0.834919242985636 0.414495985308496 -1.0 0.0013721067523686111 -0.57957674232286 0.414495985308496 -1.0 0.0013721067523686111 0.925803833285858 -0.92588151521622 -1.0 0.00012182686855061111 -0.999922318069638 -0.92588151521622 -1.0 0.00012182686855061111 -0.92588151521622 -0.999922318069638 -1.0 0.00012182686855061111 0.925803833285858 -0.999922318069638 -1.0 0.00012182686855061111 -0.999922318069638 0.925803833285858 -1.0 0.00012182686855061111 -0.92588151521622 0.925803833285858 -1.0 0.00012182686855061111 0.348012222825796 -0.38207975901364 -1.0 0.00085763995277516667 -0.965932463812156 -0.38207975901364 -1.0 0.00085763995277516667 -0.38207975901364 -0.965932463812156 -1.0 0.00085763995277516667 0.348012222825796 -0.965932463812156 -1.0 0.00085763995277516667 -0.965932463812156 0.348012222825796 -1.0 0.00085763995277516667 -0.38207975901364 0.348012222825796 -1.0 0.00085763995277516667 0.08389791764566 -0.279351646321358 -1.0 0.0020828179740409444 -0.804546271324302 -0.279351646321358 -1.0 0.0020828179740409444 -0.279351646321358 -0.804546271324302 -1.0 0.0020828179740409444 0.08389791764566 -0.804546271324302 -1.0 0.0020828179740409444 -0.804546271324302 0.08389791764566 -1.0 0.0020828179740409444 -0.279351646321358 0.08389791764566 -1.0 0.0020828179740409444 -0.895845867331362 0.791691734662724 -0.89975799541146016 0.0043776753835659048 0.791691734662724 -0.895845867331362 -0.89975799541146016 0.0043776753835659048 -0.895845867331362 -0.895845867331362 -0.89975799541146016 0.0043776753835659048 -0.772586942778008 0.545173885556016 -0.89975799541146016 0.005751233452084099 0.545173885556016 -0.772586942778008 -0.89975799541146016 0.005751233452084099 -0.772586942778008 -0.772586942778008 -0.89975799541146016 0.005751233452084099 -0.565662308452164 0.131324616904328 -0.89975799541146016 0.015646950365348096 0.131324616904328 -0.565662308452164 -0.89975799541146016 0.015646950365348096 -0.565662308452164 -0.565662308452164 -0.89975799541146016 0.015646950365348096 -0.227854451277354 -0.544291097445292 -0.89975799541146016 0.017543243280753304 -0.544291097445292 -0.227854451277354 -0.89975799541146016 0.017543243280753304 -0.227854451277354 -0.227854451277354 -0.89975799541146016 0.017543243280753304 -0.02014813417346 -0.95970373165308 -0.89975799541146016 0.0062698189020246271 -0.95970373165308 -0.02014813417346 -0.89975799541146016 0.0062698189020246271 -0.02014813417346 -0.02014813417346 -0.89975799541146016 0.0062698189020246271 0.669376181231556 -0.703503756777164 -0.89975799541146016 0.0039512954585735993 -0.965872424454392 -0.703503756777164 -0.89975799541146016 0.0039512954585735993 -0.703503756777164 -0.965872424454392 -0.89975799541146016 0.0039512954585735993 0.669376181231556 -0.965872424454392 -0.89975799541146016 0.0039512954585735993 -0.965872424454392 0.669376181231556 -0.89975799541146016 0.0039512954585735993 -0.703503756777164 0.669376181231556 -0.89975799541146016 0.0039512954585735993 0.414495985308496 -0.57957674232286 -0.89975799541146016 0.0081747829109975741 -0.834919242985636 -0.57957674232286 -0.89975799541146016 0.0081747829109975741 -0.57957674232286 -0.834919242985636 -0.89975799541146016 0.0081747829109975741 0.414495985308496 -0.834919242985636 -0.89975799541146016 0.0081747829109975741 -0.834919242985636 0.414495985308496 -0.89975799541146016 0.0081747829109975741 -0.57957674232286 0.414495985308496 -0.89975799541146016 0.0081747829109975741 0.925803833285858 -0.92588151521622 -0.89975799541146016 0.00072582413970974809 -0.999922318069638 -0.92588151521622 -0.89975799541146016 0.00072582413970974809 -0.92588151521622 -0.999922318069638 -0.89975799541146016 0.00072582413970974809 0.925803833285858 -0.999922318069638 -0.89975799541146016 0.00072582413970974809 -0.999922318069638 0.925803833285858 -0.89975799541146016 0.00072582413970974809 -0.92588151521622 0.925803833285858 -0.89975799541146016 0.00072582413970974809 0.348012222825796 -0.38207975901364 -0.89975799541146016 0.0051096756266466618 -0.965932463812156 -0.38207975901364 -0.89975799541146016 0.0051096756266466618 -0.38207975901364 -0.965932463812156 -0.89975799541146016 0.0051096756266466618 0.348012222825796 -0.965932463812156 -0.89975799541146016 0.0051096756266466618 -0.965932463812156 0.348012222825796 -0.89975799541146016 0.0051096756266466618 -0.38207975901364 0.348012222825796 -0.89975799541146016 0.0051096756266466618 0.08389791764566 -0.279351646321358 -0.89975799541146016 0.01240908169245302 -0.804546271324302 -0.279351646321358 -0.89975799541146016 0.01240908169245302 -0.279351646321358 -0.804546271324302 -0.89975799541146016 0.01240908169245302 0.08389791764566 -0.804546271324302 -0.89975799541146016 0.01240908169245302 -0.804546271324302 0.08389791764566 -0.89975799541146016 0.01240908169245302 -0.279351646321358 0.08389791764566 -0.89975799541146016 0.01240908169245302 -0.895845867331362 0.791691734662724 -0.67718627951073775 0.0072620848839093311 0.791691734662724 -0.895845867331362 -0.67718627951073775 0.0072620848839093311 -0.895845867331362 -0.895845867331362 -0.67718627951073775 0.0072620848839093311 -0.772586942778008 0.545173885556016 -0.67718627951073775 0.0095406675590898894 0.545173885556016 -0.772586942778008 -0.67718627951073775 0.0095406675590898894 -0.772586942778008 -0.772586942778008 -0.67718627951073775 0.0095406675590898894 -0.565662308452164 0.131324616904328 -0.67718627951073775 0.025956580095921891 0.131324616904328 -0.565662308452164 -0.67718627951073775 0.025956580095921891 -0.565662308452164 -0.565662308452164 -0.67718627951073775 0.025956580095921891 -0.227854451277354 -0.544291097445292 -0.67718627951073775 0.029102322735525995 -0.544291097445292 -0.227854451277354 -0.67718627951073775 0.029102322735525995 -0.227854451277354 -0.227854451277354 -0.67718627951073775 0.029102322735525995 -0.02014813417346 -0.95970373165308 -0.67718627951073775 0.010400944127600724 -0.95970373165308 -0.02014813417346 -0.67718627951073775 0.010400944127600724 -0.02014813417346 -0.02014813417346 -0.67718627951073775 0.010400944127600724 0.669376181231556 -0.703503756777164 -0.67718627951073775 0.0065547672011699617 -0.965872424454392 -0.703503756777164 -0.67718627951073775 0.0065547672011699617 -0.703503756777164 -0.965872424454392 -0.67718627951073775 0.0065547672011699617 0.669376181231556 -0.965872424454392 -0.67718627951073775 0.0065547672011699617 -0.965872424454392 0.669376181231556 -0.67718627951073775 0.0065547672011699617 -0.703503756777164 0.669376181231556 -0.67718627951073775 0.0065547672011699617 0.414495985308496 -0.57957674232286 -0.67718627951073775 0.013561071163490043 -0.834919242985636 -0.57957674232286 -0.67718627951073775 0.013561071163490043 -0.57957674232286 -0.834919242985636 -0.67718627951073775 0.013561071163490043 0.414495985308496 -0.834919242985636 -0.67718627951073775 0.013561071163490043 -0.834919242985636 0.414495985308496 -0.67718627951073775 0.013561071163490043 -0.57957674232286 0.414495985308496 -0.67718627951073775 0.013561071163490043 0.925803833285858 -0.92588151521622 -0.67718627951073775 0.0012040628990332039 -0.999922318069638 -0.92588151521622 -0.67718627951073775 0.0012040628990332039 -0.92588151521622 -0.999922318069638 -0.67718627951073775 0.0012040628990332039 0.925803833285858 -0.999922318069638 -0.67718627951073775 0.0012040628990332039 -0.999922318069638 0.925803833285858 -0.67718627951073775 0.0012040628990332039 -0.92588151521622 0.925803833285858 -0.67718627951073775 0.0012040628990332039 0.348012222825796 -0.38207975901364 -0.67718627951073775 0.0084763932632493757 -0.965932463812156 -0.38207975901364 -0.67718627951073775 0.0084763932632493757 -0.38207975901364 -0.965932463812156 -0.67718627951073775 0.0084763932632493757 0.348012222825796 -0.965932463812156 -0.67718627951073775 0.0084763932632493757 -0.965932463812156 0.348012222825796 -0.67718627951073775 0.0084763932632493757 -0.38207975901364 0.348012222825796 -0.67718627951073775 0.0084763932632493757 0.08389791764566 -0.279351646321358 -0.67718627951073775 0.020585309938754262 -0.804546271324302 -0.279351646321358 -0.67718627951073775 0.020585309938754262 -0.279351646321358 -0.804546271324302 -0.67718627951073775 0.020585309938754262 0.08389791764566 -0.804546271324302 -0.67718627951073775 0.020585309938754262 -0.804546271324302 0.08389791764566 -0.67718627951073775 0.020585309938754262 -0.279351646321358 0.08389791764566 -0.67718627951073775 0.020585309938754262 -0.895845867331362 0.791691734662724 -0.36311746382617816 0.0091637103925410724 0.791691734662724 -0.895845867331362 -0.36311746382617816 0.0091637103925410724 -0.895845867331362 -0.895845867331362 -0.36311746382617816 0.0091637103925410724 -0.772586942778008 0.545173885556016 -0.36311746382617816 0.01203895518444384 0.545173885556016 -0.772586942778008 -0.36311746382617816 0.01203895518444384 -0.772586942778008 -0.772586942778008 -0.36311746382617816 0.01203895518444384 -0.565662308452164 0.131324616904328 -0.36311746382617816 0.032753484237956189 0.131324616904328 -0.565662308452164 -0.36311746382617816 0.032753484237956189 -0.565662308452164 -0.565662308452164 -0.36311746382617816 0.032753484237956189 -0.227854451277354 -0.544291097445292 -0.36311746382617816 0.036722960632079762 -0.544291097445292 -0.227854451277354 -0.36311746382617816 0.036722960632079762 -0.227854451277354 -0.227854451277354 -0.36311746382617816 0.036722960632079762 -0.02014813417346 -0.95970373165308 -0.36311746382617816 0.013124500927483758 -0.95970373165308 -0.02014813417346 -0.36311746382617816 0.013124500927483758 -0.02014813417346 -0.02014813417346 -0.36311746382617816 0.013124500927483758 0.669376181231556 -0.703503756777164 -0.36311746382617816 0.0082711768427738024 -0.965872424454392 -0.703503756777164 -0.36311746382617816 0.0082711768427738024 -0.703503756777164 -0.965872424454392 -0.36311746382617816 0.0082711768427738024 0.669376181231556 -0.965872424454392 -0.36311746382617816 0.0082711768427738024 -0.965872424454392 0.669376181231556 -0.36311746382617816 0.0082711768427738024 -0.703503756777164 0.669376181231556 -0.36311746382617816 0.0082711768427738024 0.414495985308496 -0.57957674232286 -0.36311746382617816 0.017112128368288334 -0.834919242985636 -0.57957674232286 -0.36311746382617816 0.017112128368288334 -0.57957674232286 -0.834919242985636 -0.36311746382617816 0.017112128368288334 0.414495985308496 -0.834919242985636 -0.36311746382617816 0.017112128368288334 -0.834919242985636 0.414495985308496 -0.36311746382617816 0.017112128368288334 -0.57957674232286 0.414495985308496 -0.36311746382617816 0.017112128368288334 0.925803833285858 -0.92588151521622 -0.36311746382617816 0.0015193548240659012 -0.999922318069638 -0.92588151521622 -0.36311746382617816 0.0015193548240659012 -0.92588151521622 -0.999922318069638 -0.36311746382617816 0.0015193548240659012 0.925803833285858 -0.999922318069638 -0.36311746382617816 0.0015193548240659012 -0.999922318069638 0.925803833285858 -0.36311746382617816 0.0015193548240659012 -0.92588151521622 0.925803833285858 -0.36311746382617816 0.0015193548240659012 0.348012222825796 -0.38207975901364 -0.36311746382617816 0.010695993544472212 -0.965932463812156 -0.38207975901364 -0.36311746382617816 0.010695993544472212 -0.38207975901364 -0.965932463812156 -0.36311746382617816 0.010695993544472212 0.348012222825796 -0.965932463812156 -0.36311746382617816 0.010695993544472212 -0.965932463812156 0.348012222825796 -0.36311746382617816 0.010695993544472212 -0.38207975901364 0.348012222825796 -0.36311746382617816 0.010695993544472212 0.08389791764566 -0.279351646321358 -0.36311746382617816 0.025975711057496453 -0.804546271324302 -0.279351646321358 -0.36311746382617816 0.025975711057496453 -0.279351646321358 -0.804546271324302 -0.36311746382617816 0.025975711057496453 0.08389791764566 -0.804546271324302 -0.36311746382617816 0.025975711057496453 -0.804546271324302 0.08389791764566 -0.36311746382617816 0.025975711057496453 -0.279351646321358 0.08389791764566 -0.36311746382617816 0.025975711057496453 -0.895845867331362 0.791691734662724 0.0 0.0098274100652684945 0.791691734662724 -0.895845867331362 0.0 0.0098274100652684945 -0.895845867331362 -0.895845867331362 0.0 0.0098274100652684945 -0.772586942778008 0.545173885556016 0.0 0.012910900092523787 0.545173885556016 -0.772586942778008 0.0 0.012910900092523787 -0.772586942778008 -0.772586942778008 0.0 0.012910900092523787 -0.565662308452164 0.131324616904328 0.0 0.035125719483093206 0.131324616904328 -0.565662308452164 0.0 0.035125719483093206 -0.565662308452164 -0.565662308452164 0.0 0.035125719483093206 -0.227854451277354 -0.544291097445292 0.0 0.039382692979462989 -0.544291097445292 -0.227854451277354 0.0 0.039382692979462989 -0.227854451277354 -0.227854451277354 0.0 0.039382692979462989 -0.02014813417346 -0.95970373165308 0.0 0.01407506861209456 -0.95970373165308 -0.02014813417346 0.0 0.01407506861209456 -0.02014813417346 -0.02014813417346 0.0 0.01407506861209456 0.669376181231556 -0.703503756777164 0.0 0.0088702330250913843 -0.965872424454392 -0.703503756777164 0.0 0.0088702330250913843 -0.703503756777164 -0.965872424454392 0.0 0.0088702330250913843 0.669376181231556 -0.965872424454392 0.0 0.0088702330250913843 -0.965872424454392 0.669376181231556 0.0 0.0088702330250913843 -0.703503756777164 0.669376181231556 0.0 0.0088702330250913843 0.414495985308496 -0.57957674232286 0.0 0.018351507780250877 -0.834919242985636 -0.57957674232286 0.0 0.018351507780250877 -0.57957674232286 -0.834919242985636 0.0 0.018351507780250877 0.414495985308496 -0.834919242985636 0.0 0.018351507780250877 -0.834919242985636 0.414495985308496 0.0 0.018351507780250877 -0.57957674232286 0.414495985308496 0.0 0.018351507780250877 0.925803833285858 -0.92588151521622 0.0 0.0016293970729250714 -0.999922318069638 -0.92588151521622 0.0 0.0016293970729250714 -0.92588151521622 -0.999922318069638 0.0 0.0016293970729250714 0.925803833285858 -0.999922318069638 0.0 0.0016293970729250714 -0.999922318069638 0.925803833285858 0.0 0.0016293970729250714 -0.92588151521622 0.925803833285858 0.0 0.0016293970729250714 0.348012222825796 -0.38207975901364 0.0 0.011470671825525168 -0.965932463812156 -0.38207975901364 0.0 0.011470671825525168 -0.38207975901364 -0.965932463812156 0.0 0.011470671825525168 0.348012222825796 -0.965932463812156 0.0 0.011470671825525168 -0.965932463812156 0.348012222825796 0.0 0.011470671825525168 -0.38207975901364 0.348012222825796 0.0 0.011470671825525168 0.08389791764566 -0.279351646321358 0.0 0.02785705280545864 -0.804546271324302 -0.279351646321358 0.0 0.02785705280545864 -0.279351646321358 -0.804546271324302 0.0 0.02785705280545864 0.08389791764566 -0.804546271324302 0.0 0.02785705280545864 -0.804546271324302 0.08389791764566 0.0 0.02785705280545864 -0.279351646321358 0.08389791764566 0.0 0.02785705280545864 -0.895845867331362 0.791691734662724 0.36311746382617816 0.0091637103925410724 0.791691734662724 -0.895845867331362 0.36311746382617816 0.0091637103925410724 -0.895845867331362 -0.895845867331362 0.36311746382617816 0.0091637103925410724 -0.772586942778008 0.545173885556016 0.36311746382617816 0.01203895518444384 0.545173885556016 -0.772586942778008 0.36311746382617816 0.01203895518444384 -0.772586942778008 -0.772586942778008 0.36311746382617816 0.01203895518444384 -0.565662308452164 0.131324616904328 0.36311746382617816 0.032753484237956189 0.131324616904328 -0.565662308452164 0.36311746382617816 0.032753484237956189 -0.565662308452164 -0.565662308452164 0.36311746382617816 0.032753484237956189 -0.227854451277354 -0.544291097445292 0.36311746382617816 0.036722960632079762 -0.544291097445292 -0.227854451277354 0.36311746382617816 0.036722960632079762 -0.227854451277354 -0.227854451277354 0.36311746382617816 0.036722960632079762 -0.02014813417346 -0.95970373165308 0.36311746382617816 0.013124500927483758 -0.95970373165308 -0.02014813417346 0.36311746382617816 0.013124500927483758 -0.02014813417346 -0.02014813417346 0.36311746382617816 0.013124500927483758 0.669376181231556 -0.703503756777164 0.36311746382617816 0.0082711768427738024 -0.965872424454392 -0.703503756777164 0.36311746382617816 0.0082711768427738024 -0.703503756777164 -0.965872424454392 0.36311746382617816 0.0082711768427738024 0.669376181231556 -0.965872424454392 0.36311746382617816 0.0082711768427738024 -0.965872424454392 0.669376181231556 0.36311746382617816 0.0082711768427738024 -0.703503756777164 0.669376181231556 0.36311746382617816 0.0082711768427738024 0.414495985308496 -0.57957674232286 0.36311746382617816 0.017112128368288334 -0.834919242985636 -0.57957674232286 0.36311746382617816 0.017112128368288334 -0.57957674232286 -0.834919242985636 0.36311746382617816 0.017112128368288334 0.414495985308496 -0.834919242985636 0.36311746382617816 0.017112128368288334 -0.834919242985636 0.414495985308496 0.36311746382617816 0.017112128368288334 -0.57957674232286 0.414495985308496 0.36311746382617816 0.017112128368288334 0.925803833285858 -0.92588151521622 0.36311746382617816 0.0015193548240659012 -0.999922318069638 -0.92588151521622 0.36311746382617816 0.0015193548240659012 -0.92588151521622 -0.999922318069638 0.36311746382617816 0.0015193548240659012 0.925803833285858 -0.999922318069638 0.36311746382617816 0.0015193548240659012 -0.999922318069638 0.925803833285858 0.36311746382617816 0.0015193548240659012 -0.92588151521622 0.925803833285858 0.36311746382617816 0.0015193548240659012 0.348012222825796 -0.38207975901364 0.36311746382617816 0.010695993544472212 -0.965932463812156 -0.38207975901364 0.36311746382617816 0.010695993544472212 -0.38207975901364 -0.965932463812156 0.36311746382617816 0.010695993544472212 0.348012222825796 -0.965932463812156 0.36311746382617816 0.010695993544472212 -0.965932463812156 0.348012222825796 0.36311746382617816 0.010695993544472212 -0.38207975901364 0.348012222825796 0.36311746382617816 0.010695993544472212 0.08389791764566 -0.279351646321358 0.36311746382617816 0.025975711057496453 -0.804546271324302 -0.279351646321358 0.36311746382617816 0.025975711057496453 -0.279351646321358 -0.804546271324302 0.36311746382617816 0.025975711057496453 0.08389791764566 -0.804546271324302 0.36311746382617816 0.025975711057496453 -0.804546271324302 0.08389791764566 0.36311746382617816 0.025975711057496453 -0.279351646321358 0.08389791764566 0.36311746382617816 0.025975711057496453 -0.895845867331362 0.791691734662724 0.67718627951073775 0.0072620848839093311 0.791691734662724 -0.895845867331362 0.67718627951073775 0.0072620848839093311 -0.895845867331362 -0.895845867331362 0.67718627951073775 0.0072620848839093311 -0.772586942778008 0.545173885556016 0.67718627951073775 0.0095406675590898894 0.545173885556016 -0.772586942778008 0.67718627951073775 0.0095406675590898894 -0.772586942778008 -0.772586942778008 0.67718627951073775 0.0095406675590898894 -0.565662308452164 0.131324616904328 0.67718627951073775 0.025956580095921891 0.131324616904328 -0.565662308452164 0.67718627951073775 0.025956580095921891 -0.565662308452164 -0.565662308452164 0.67718627951073775 0.025956580095921891 -0.227854451277354 -0.544291097445292 0.67718627951073775 0.029102322735525995 -0.544291097445292 -0.227854451277354 0.67718627951073775 0.029102322735525995 -0.227854451277354 -0.227854451277354 0.67718627951073775 0.029102322735525995 -0.02014813417346 -0.95970373165308 0.67718627951073775 0.010400944127600724 -0.95970373165308 -0.02014813417346 0.67718627951073775 0.010400944127600724 -0.02014813417346 -0.02014813417346 0.67718627951073775 0.010400944127600724 0.669376181231556 -0.703503756777164 0.67718627951073775 0.0065547672011699617 -0.965872424454392 -0.703503756777164 0.67718627951073775 0.0065547672011699617 -0.703503756777164 -0.965872424454392 0.67718627951073775 0.0065547672011699617 0.669376181231556 -0.965872424454392 0.67718627951073775 0.0065547672011699617 -0.965872424454392 0.669376181231556 0.67718627951073775 0.0065547672011699617 -0.703503756777164 0.669376181231556 0.67718627951073775 0.0065547672011699617 0.414495985308496 -0.57957674232286 0.67718627951073775 0.013561071163490043 -0.834919242985636 -0.57957674232286 0.67718627951073775 0.013561071163490043 -0.57957674232286 -0.834919242985636 0.67718627951073775 0.013561071163490043 0.414495985308496 -0.834919242985636 0.67718627951073775 0.013561071163490043 -0.834919242985636 0.414495985308496 0.67718627951073775 0.013561071163490043 -0.57957674232286 0.414495985308496 0.67718627951073775 0.013561071163490043 0.925803833285858 -0.92588151521622 0.67718627951073775 0.0012040628990332039 -0.999922318069638 -0.92588151521622 0.67718627951073775 0.0012040628990332039 -0.92588151521622 -0.999922318069638 0.67718627951073775 0.0012040628990332039 0.925803833285858 -0.999922318069638 0.67718627951073775 0.0012040628990332039 -0.999922318069638 0.925803833285858 0.67718627951073775 0.0012040628990332039 -0.92588151521622 0.925803833285858 0.67718627951073775 0.0012040628990332039 0.348012222825796 -0.38207975901364 0.67718627951073775 0.0084763932632493757 -0.965932463812156 -0.38207975901364 0.67718627951073775 0.0084763932632493757 -0.38207975901364 -0.965932463812156 0.67718627951073775 0.0084763932632493757 0.348012222825796 -0.965932463812156 0.67718627951073775 0.0084763932632493757 -0.965932463812156 0.348012222825796 0.67718627951073775 0.0084763932632493757 -0.38207975901364 0.348012222825796 0.67718627951073775 0.0084763932632493757 0.08389791764566 -0.279351646321358 0.67718627951073775 0.020585309938754262 -0.804546271324302 -0.279351646321358 0.67718627951073775 0.020585309938754262 -0.279351646321358 -0.804546271324302 0.67718627951073775 0.020585309938754262 0.08389791764566 -0.804546271324302 0.67718627951073775 0.020585309938754262 -0.804546271324302 0.08389791764566 0.67718627951073775 0.020585309938754262 -0.279351646321358 0.08389791764566 0.67718627951073775 0.020585309938754262 -0.895845867331362 0.791691734662724 0.89975799541146016 0.0043776753835659048 0.791691734662724 -0.895845867331362 0.89975799541146016 0.0043776753835659048 -0.895845867331362 -0.895845867331362 0.89975799541146016 0.0043776753835659048 -0.772586942778008 0.545173885556016 0.89975799541146016 0.005751233452084099 0.545173885556016 -0.772586942778008 0.89975799541146016 0.005751233452084099 -0.772586942778008 -0.772586942778008 0.89975799541146016 0.005751233452084099 -0.565662308452164 0.131324616904328 0.89975799541146016 0.015646950365348096 0.131324616904328 -0.565662308452164 0.89975799541146016 0.015646950365348096 -0.565662308452164 -0.565662308452164 0.89975799541146016 0.015646950365348096 -0.227854451277354 -0.544291097445292 0.89975799541146016 0.017543243280753304 -0.544291097445292 -0.227854451277354 0.89975799541146016 0.017543243280753304 -0.227854451277354 -0.227854451277354 0.89975799541146016 0.017543243280753304 -0.02014813417346 -0.95970373165308 0.89975799541146016 0.0062698189020246271 -0.95970373165308 -0.02014813417346 0.89975799541146016 0.0062698189020246271 -0.02014813417346 -0.02014813417346 0.89975799541146016 0.0062698189020246271 0.669376181231556 -0.703503756777164 0.89975799541146016 0.0039512954585735993 -0.965872424454392 -0.703503756777164 0.89975799541146016 0.0039512954585735993 -0.703503756777164 -0.965872424454392 0.89975799541146016 0.0039512954585735993 0.669376181231556 -0.965872424454392 0.89975799541146016 0.0039512954585735993 -0.965872424454392 0.669376181231556 0.89975799541146016 0.0039512954585735993 -0.703503756777164 0.669376181231556 0.89975799541146016 0.0039512954585735993 0.414495985308496 -0.57957674232286 0.89975799541146016 0.0081747829109975741 -0.834919242985636 -0.57957674232286 0.89975799541146016 0.0081747829109975741 -0.57957674232286 -0.834919242985636 0.89975799541146016 0.0081747829109975741 0.414495985308496 -0.834919242985636 0.89975799541146016 0.0081747829109975741 -0.834919242985636 0.414495985308496 0.89975799541146016 0.0081747829109975741 -0.57957674232286 0.414495985308496 0.89975799541146016 0.0081747829109975741 0.925803833285858 -0.92588151521622 0.89975799541146016 0.00072582413970974809 -0.999922318069638 -0.92588151521622 0.89975799541146016 0.00072582413970974809 -0.92588151521622 -0.999922318069638 0.89975799541146016 0.00072582413970974809 0.925803833285858 -0.999922318069638 0.89975799541146016 0.00072582413970974809 -0.999922318069638 0.925803833285858 0.89975799541146016 0.00072582413970974809 -0.92588151521622 0.925803833285858 0.89975799541146016 0.00072582413970974809 0.348012222825796 -0.38207975901364 0.89975799541146016 0.0051096756266466618 -0.965932463812156 -0.38207975901364 0.89975799541146016 0.0051096756266466618 -0.38207975901364 -0.965932463812156 0.89975799541146016 0.0051096756266466618 0.348012222825796 -0.965932463812156 0.89975799541146016 0.0051096756266466618 -0.965932463812156 0.348012222825796 0.89975799541146016 0.0051096756266466618 -0.38207975901364 0.348012222825796 0.89975799541146016 0.0051096756266466618 0.08389791764566 -0.279351646321358 0.89975799541146016 0.01240908169245302 -0.804546271324302 -0.279351646321358 0.89975799541146016 0.01240908169245302 -0.279351646321358 -0.804546271324302 0.89975799541146016 0.01240908169245302 0.08389791764566 -0.804546271324302 0.89975799541146016 0.01240908169245302 -0.804546271324302 0.08389791764566 0.89975799541146016 0.01240908169245302 -0.279351646321358 0.08389791764566 0.89975799541146016 0.01240908169245302 -0.895845867331362 0.791691734662724 1.0 0.00073477644836144444 0.791691734662724 -0.895845867331362 1.0 0.00073477644836144444 -0.895845867331362 -0.895845867331362 1.0 0.00073477644836144444 -0.772586942778008 0.545173885556016 1.0 0.00096532303548227778 0.545173885556016 -0.772586942778008 1.0 0.00096532303548227778 -0.772586942778008 -0.772586942778008 1.0 0.00096532303548227778 -0.565662308452164 0.131324616904328 1.0 0.0026262821268792222 0.131324616904328 -0.565662308452164 1.0 0.0026262821268792222 -0.565662308452164 -0.565662308452164 1.0 0.0026262821268792222 -0.227854451277354 -0.544291097445292 1.0 0.0029445678039454444 -0.544291097445292 -0.227854451277354 1.0 0.0029445678039454444 -0.227854451277354 -0.227854451277354 1.0 0.0029445678039454444 -0.02014813417346 -0.95970373165308 1.0 0.0010523656646616111 -0.95970373165308 -0.02014813417346 1.0 0.0010523656646616111 -0.02014813417346 -0.02014813417346 1.0 0.0010523656646616111 0.669376181231556 -0.703503756777164 1.0 0.00066321017185894444 -0.965872424454392 -0.703503756777164 1.0 0.00066321017185894444 -0.703503756777164 -0.965872424454392 1.0 0.00066321017185894444 0.669376181231556 -0.965872424454392 1.0 0.00066321017185894444 -0.965872424454392 0.669376181231556 1.0 0.00066321017185894444 -0.703503756777164 0.669376181231556 1.0 0.00066321017185894444 0.414495985308496 -0.57957674232286 1.0 0.0013721067523686111 -0.834919242985636 -0.57957674232286 1.0 0.0013721067523686111 -0.57957674232286 -0.834919242985636 1.0 0.0013721067523686111 0.414495985308496 -0.834919242985636 1.0 0.0013721067523686111 -0.834919242985636 0.414495985308496 1.0 0.0013721067523686111 -0.57957674232286 0.414495985308496 1.0 0.0013721067523686111 0.925803833285858 -0.92588151521622 1.0 0.00012182686855061111 -0.999922318069638 -0.92588151521622 1.0 0.00012182686855061111 -0.92588151521622 -0.999922318069638 1.0 0.00012182686855061111 0.925803833285858 -0.999922318069638 1.0 0.00012182686855061111 -0.999922318069638 0.925803833285858 1.0 0.00012182686855061111 -0.92588151521622 0.925803833285858 1.0 0.00012182686855061111 0.348012222825796 -0.38207975901364 1.0 0.00085763995277516667 -0.965932463812156 -0.38207975901364 1.0 0.00085763995277516667 -0.38207975901364 -0.965932463812156 1.0 0.00085763995277516667 0.348012222825796 -0.965932463812156 1.0 0.00085763995277516667 -0.965932463812156 0.348012222825796 1.0 0.00085763995277516667 -0.38207975901364 0.348012222825796 1.0 0.00085763995277516667 0.08389791764566 -0.279351646321358 1.0 0.0020828179740409444 -0.804546271324302 -0.279351646321358 1.0 0.0020828179740409444 -0.279351646321358 -0.804546271324302 1.0 0.0020828179740409444 0.08389791764566 -0.804546271324302 1.0 0.0020828179740409444 -0.804546271324302 0.08389791764566 1.0 0.0020828179740409444 -0.279351646321358 0.08389791764566 1.0 0.0020828179740409444 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n6-d1-spu.txt000066400000000000000000000005471277740313300301220ustar00rootroot00000000000000-0.666666666666666 0.333333333333332 -1.0 0.666666666666666 0.333333333333332 -0.666666666666666 -1.0 0.666666666666666 -0.666666666666666 -0.666666666666666 -1.0 0.666666666666666 -0.666666666666666 0.333333333333332 1.0 0.666666666666666 0.333333333333332 -0.666666666666666 1.0 0.666666666666666 -0.666666666666666 -0.666666666666666 1.0 0.666666666666666 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-lobatto-n75-d7-spu.txt000066400000000000000000000117031277740313300302120ustar00rootroot00000000000000-0.928258244608532 0.856516489217064 -1.0 0.0035830910024606 0.856516489217064 -0.928258244608532 -1.0 0.0035830910024606 -0.928258244608532 -0.928258244608532 -1.0 0.0035830910024606 -0.516541208464066 0.033082416928132 -1.0 0.025542439176253 0.033082416928132 -0.516541208464066 -1.0 0.025542439176253 -0.516541208464066 -0.516541208464066 -1.0 0.025542439176253 -0.051382424445842 -0.897235151108316 -1.0 0.015241212477107 -0.897235151108316 -0.051382424445842 -1.0 0.015241212477107 -0.051382424445842 -0.051382424445842 -1.0 0.015241212477107 0.502367262212968 -0.5969922362364 -1.0 0.011149962005423 -0.905375025976568 -0.5969922362364 -1.0 0.011149962005423 -0.5969922362364 -0.905375025976568 -1.0 0.011149962005423 0.502367262212968 -0.905375025976568 -1.0 0.011149962005423 -0.905375025976568 0.502367262212968 -1.0 0.011149962005423 -0.5969922362364 0.502367262212968 -1.0 0.011149962005423 -0.928258244608532 0.856516489217064 -0.65465367070797714 0.019507939902285489 0.856516489217064 -0.928258244608532 -0.65465367070797714 0.019507939902285489 -0.928258244608532 -0.928258244608532 -0.65465367070797714 0.019507939902285489 -0.516541208464066 0.033082416928132 -0.65465367070797714 0.13906439107071078 0.033082416928132 -0.516541208464066 -0.65465367070797714 0.13906439107071078 -0.516541208464066 -0.516541208464066 -0.65465367070797714 0.13906439107071078 -0.051382424445842 -0.897235151108316 -0.65465367070797714 0.082979934597582556 -0.897235151108316 -0.051382424445842 -0.65465367070797714 0.082979934597582556 -0.051382424445842 -0.051382424445842 -0.65465367070797714 0.082979934597582556 0.502367262212968 -0.5969922362364 -0.65465367070797714 0.060705348696191889 -0.905375025976568 -0.5969922362364 -0.65465367070797714 0.060705348696191889 -0.5969922362364 -0.905375025976568 -0.65465367070797714 0.060705348696191889 0.502367262212968 -0.905375025976568 -0.65465367070797714 0.060705348696191889 -0.905375025976568 0.502367262212968 -0.65465367070797714 0.060705348696191889 -0.5969922362364 0.502367262212968 -0.65465367070797714 0.060705348696191889 -0.928258244608532 0.856516489217064 0.0 0.025479758239719822 0.856516489217064 -0.928258244608532 0.0 0.025479758239719822 -0.928258244608532 -0.928258244608532 0.0 0.025479758239719822 -0.516541208464066 0.033082416928132 0.0 0.18163512303113244 0.033082416928132 -0.516541208464066 0.0 0.18163512303113244 -0.516541208464066 -0.516541208464066 0.0 0.18163512303113244 -0.051382424445842 -0.897235151108316 0.0 0.10838195539276089 -0.897235151108316 -0.051382424445842 0.0 0.10838195539276089 -0.051382424445842 -0.051382424445842 0.0 0.10838195539276089 0.502367262212968 -0.5969922362364 0.0 0.079288618705230222 -0.905375025976568 -0.5969922362364 0.0 0.079288618705230222 -0.5969922362364 -0.905375025976568 0.0 0.079288618705230222 0.502367262212968 -0.905375025976568 0.0 0.079288618705230222 -0.905375025976568 0.502367262212968 0.0 0.079288618705230222 -0.5969922362364 0.502367262212968 0.0 0.079288618705230222 -0.928258244608532 0.856516489217064 0.65465367070797714 0.019507939902285489 0.856516489217064 -0.928258244608532 0.65465367070797714 0.019507939902285489 -0.928258244608532 -0.928258244608532 0.65465367070797714 0.019507939902285489 -0.516541208464066 0.033082416928132 0.65465367070797714 0.13906439107071078 0.033082416928132 -0.516541208464066 0.65465367070797714 0.13906439107071078 -0.516541208464066 -0.516541208464066 0.65465367070797714 0.13906439107071078 -0.051382424445842 -0.897235151108316 0.65465367070797714 0.082979934597582556 -0.897235151108316 -0.051382424445842 0.65465367070797714 0.082979934597582556 -0.051382424445842 -0.051382424445842 0.65465367070797714 0.082979934597582556 0.502367262212968 -0.5969922362364 0.65465367070797714 0.060705348696191889 -0.905375025976568 -0.5969922362364 0.65465367070797714 0.060705348696191889 -0.5969922362364 -0.905375025976568 0.65465367070797714 0.060705348696191889 0.502367262212968 -0.905375025976568 0.65465367070797714 0.060705348696191889 -0.905375025976568 0.502367262212968 0.65465367070797714 0.060705348696191889 -0.5969922362364 0.502367262212968 0.65465367070797714 0.060705348696191889 -0.928258244608532 0.856516489217064 1.0 0.0035830910024606 0.856516489217064 -0.928258244608532 1.0 0.0035830910024606 -0.928258244608532 -0.928258244608532 1.0 0.0035830910024606 -0.516541208464066 0.033082416928132 1.0 0.025542439176253 0.033082416928132 -0.516541208464066 1.0 0.025542439176253 -0.516541208464066 -0.516541208464066 1.0 0.025542439176253 -0.051382424445842 -0.897235151108316 1.0 0.015241212477107 -0.897235151108316 -0.051382424445842 1.0 0.015241212477107 -0.051382424445842 -0.051382424445842 1.0 0.015241212477107 0.502367262212968 -0.5969922362364 1.0 0.011149962005423 -0.905375025976568 -0.5969922362364 1.0 0.011149962005423 -0.5969922362364 -0.905375025976568 1.0 0.011149962005423 0.502367262212968 -0.905375025976568 1.0 0.011149962005423 -0.905375025976568 0.502367262212968 1.0 0.011149962005423 -0.5969922362364 0.502367262212968 1.0 0.011149962005423 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n126-d8-spu.txt000066400000000000000000000233371277740313300266340ustar00rootroot00000000000000-0.943774095634672 0.887548191269344 -0.93246951420315203 0.0035496292224999894 0.887548191269344 -0.943774095634672 -0.93246951420315203 0.0035496292224999894 -0.943774095634672 -0.943774095634672 -0.93246951420315203 0.0035496292224999894 -0.645721803061366 0.291443606122732 -0.93246951420315203 0.025833980570529308 0.291443606122732 -0.645721803061366 -0.93246951420315203 0.025833980570529308 -0.645721803061366 -0.645721803061366 -0.93246951420315203 0.025833980570529308 -0.188982808265134 -0.622034383469732 -0.93246951420315203 0.033424655448598628 -0.622034383469732 -0.188982808265134 -0.93246951420315203 0.033424655448598628 -0.188982808265134 -0.188982808265134 -0.93246951420315203 0.033424655448598628 0.635801960056998 -0.702868375458226 -0.93246951420315203 0.0099262907396687667 -0.932933584598772 -0.702868375458226 -0.93246951420315203 0.0099262907396687667 -0.702868375458226 -0.932933584598772 -0.93246951420315203 0.0099262907396687667 0.635801960056998 -0.932933584598772 -0.93246951420315203 0.0099262907396687667 -0.932933584598772 0.635801960056998 -0.93246951420315203 0.0099262907396687667 -0.702868375458226 0.635801960056998 -0.93246951420315203 0.0099262907396687667 0.209957823550266 -0.285607402768638 -0.93246951420315203 0.0157777407659075 -0.924350420781628 -0.285607402768638 -0.93246951420315203 0.0157777407659075 -0.285607402768638 -0.924350420781628 -0.93246951420315203 0.0157777407659075 0.209957823550266 -0.924350420781628 -0.93246951420315203 0.0157777407659075 -0.924350420781628 0.209957823550266 -0.93246951420315203 0.0157777407659075 -0.285607402768638 0.209957823550266 -0.93246951420315203 0.0157777407659075 -0.943774095634672 0.887548191269344 -0.66120938646626451 0.0074745286226362648 0.887548191269344 -0.943774095634672 -0.66120938646626451 0.0074745286226362648 -0.943774095634672 -0.943774095634672 -0.66120938646626451 0.0074745286226362648 -0.645721803061366 0.291443606122732 -0.66120938646626451 0.054399154138992903 0.291443606122732 -0.645721803061366 -0.66120938646626451 0.054399154138992903 -0.645721803061366 -0.645721803061366 -0.66120938646626451 0.054399154138992903 -0.188982808265134 -0.622034383469732 -0.66120938646626451 0.070382997263119465 -0.622034383469732 -0.188982808265134 -0.66120938646626451 0.070382997263119465 -0.188982808265134 -0.188982808265134 -0.66120938646626451 0.070382997263119465 0.635801960056998 -0.702868375458226 -0.66120938646626451 0.020901998377737245 -0.932933584598772 -0.702868375458226 -0.66120938646626451 0.020901998377737245 -0.702868375458226 -0.932933584598772 -0.66120938646626451 0.020901998377737245 0.635801960056998 -0.932933584598772 -0.66120938646626451 0.020901998377737245 -0.932933584598772 0.635801960056998 -0.66120938646626451 0.020901998377737245 -0.702868375458226 0.635801960056998 -0.66120938646626451 0.020901998377737245 0.209957823550266 -0.285607402768638 -0.66120938646626451 0.033223519292601548 -0.924350420781628 -0.285607402768638 -0.66120938646626451 0.033223519292601548 -0.285607402768638 -0.924350420781628 -0.66120938646626451 0.033223519292601548 0.209957823550266 -0.924350420781628 -0.66120938646626451 0.033223519292601548 -0.924350420781628 0.209957823550266 -0.66120938646626451 0.033223519292601548 -0.285607402768638 0.209957823550266 -0.66120938646626451 0.033223519292601548 -0.943774095634672 0.887548191269344 -0.23861918608319691 0.0096945915479397458 0.887548191269344 -0.943774095634672 -0.23861918608319691 0.0096945915479397458 -0.943774095634672 -0.943774095634672 -0.23861918608319691 0.0096945915479397458 -0.645721803061366 0.291443606122732 -0.23861918608319691 0.070556633943953788 0.291443606122732 -0.645721803061366 -0.23861918608319691 0.070556633943953788 -0.645721803061366 -0.645721803061366 -0.23861918608319691 0.070556633943953788 -0.188982808265134 -0.622034383469732 -0.23861918608319691 0.091287952034765907 -0.622034383469732 -0.188982808265134 -0.23861918608319691 0.091287952034765907 -0.188982808265134 -0.188982808265134 -0.23861918608319691 0.091287952034765907 0.635801960056998 -0.702868375458226 -0.23861918608319691 0.027110249627539988 -0.932933584598772 -0.702868375458226 -0.23861918608319691 0.027110249627539988 -0.702868375458226 -0.932933584598772 -0.23861918608319691 0.027110249627539988 0.635801960056998 -0.932933584598772 -0.23861918608319691 0.027110249627539988 -0.932933584598772 0.635801960056998 -0.23861918608319691 0.027110249627539988 -0.702868375458226 0.635801960056998 -0.23861918608319691 0.027110249627539988 0.209957823550266 -0.285607402768638 -0.23861918608319691 0.043091473133360952 -0.924350420781628 -0.285607402768638 -0.23861918608319691 0.043091473133360952 -0.285607402768638 -0.924350420781628 -0.23861918608319691 0.043091473133360952 0.209957823550266 -0.924350420781628 -0.23861918608319691 0.043091473133360952 -0.924350420781628 0.209957823550266 -0.23861918608319691 0.043091473133360952 -0.285607402768638 0.209957823550266 -0.23861918608319691 0.043091473133360952 -0.943774095634672 0.887548191269344 0.23861918608319691 0.0096945915479397458 0.887548191269344 -0.943774095634672 0.23861918608319691 0.0096945915479397458 -0.943774095634672 -0.943774095634672 0.23861918608319691 0.0096945915479397458 -0.645721803061366 0.291443606122732 0.23861918608319691 0.070556633943953788 0.291443606122732 -0.645721803061366 0.23861918608319691 0.070556633943953788 -0.645721803061366 -0.645721803061366 0.23861918608319691 0.070556633943953788 -0.188982808265134 -0.622034383469732 0.23861918608319691 0.091287952034765907 -0.622034383469732 -0.188982808265134 0.23861918608319691 0.091287952034765907 -0.188982808265134 -0.188982808265134 0.23861918608319691 0.091287952034765907 0.635801960056998 -0.702868375458226 0.23861918608319691 0.027110249627539988 -0.932933584598772 -0.702868375458226 0.23861918608319691 0.027110249627539988 -0.702868375458226 -0.932933584598772 0.23861918608319691 0.027110249627539988 0.635801960056998 -0.932933584598772 0.23861918608319691 0.027110249627539988 -0.932933584598772 0.635801960056998 0.23861918608319691 0.027110249627539988 -0.702868375458226 0.635801960056998 0.23861918608319691 0.027110249627539988 0.209957823550266 -0.285607402768638 0.23861918608319691 0.043091473133360952 -0.924350420781628 -0.285607402768638 0.23861918608319691 0.043091473133360952 -0.285607402768638 -0.924350420781628 0.23861918608319691 0.043091473133360952 0.209957823550266 -0.924350420781628 0.23861918608319691 0.043091473133360952 -0.924350420781628 0.209957823550266 0.23861918608319691 0.043091473133360952 -0.285607402768638 0.209957823550266 0.23861918608319691 0.043091473133360952 -0.943774095634672 0.887548191269344 0.66120938646626451 0.0074745286226362648 0.887548191269344 -0.943774095634672 0.66120938646626451 0.0074745286226362648 -0.943774095634672 -0.943774095634672 0.66120938646626451 0.0074745286226362648 -0.645721803061366 0.291443606122732 0.66120938646626451 0.054399154138992903 0.291443606122732 -0.645721803061366 0.66120938646626451 0.054399154138992903 -0.645721803061366 -0.645721803061366 0.66120938646626451 0.054399154138992903 -0.188982808265134 -0.622034383469732 0.66120938646626451 0.070382997263119465 -0.622034383469732 -0.188982808265134 0.66120938646626451 0.070382997263119465 -0.188982808265134 -0.188982808265134 0.66120938646626451 0.070382997263119465 0.635801960056998 -0.702868375458226 0.66120938646626451 0.020901998377737245 -0.932933584598772 -0.702868375458226 0.66120938646626451 0.020901998377737245 -0.702868375458226 -0.932933584598772 0.66120938646626451 0.020901998377737245 0.635801960056998 -0.932933584598772 0.66120938646626451 0.020901998377737245 -0.932933584598772 0.635801960056998 0.66120938646626451 0.020901998377737245 -0.702868375458226 0.635801960056998 0.66120938646626451 0.020901998377737245 0.209957823550266 -0.285607402768638 0.66120938646626451 0.033223519292601548 -0.924350420781628 -0.285607402768638 0.66120938646626451 0.033223519292601548 -0.285607402768638 -0.924350420781628 0.66120938646626451 0.033223519292601548 0.209957823550266 -0.924350420781628 0.66120938646626451 0.033223519292601548 -0.924350420781628 0.209957823550266 0.66120938646626451 0.033223519292601548 -0.285607402768638 0.209957823550266 0.66120938646626451 0.033223519292601548 -0.943774095634672 0.887548191269344 0.93246951420315203 0.0035496292224999894 0.887548191269344 -0.943774095634672 0.93246951420315203 0.0035496292224999894 -0.943774095634672 -0.943774095634672 0.93246951420315203 0.0035496292224999894 -0.645721803061366 0.291443606122732 0.93246951420315203 0.025833980570529308 0.291443606122732 -0.645721803061366 0.93246951420315203 0.025833980570529308 -0.645721803061366 -0.645721803061366 0.93246951420315203 0.025833980570529308 -0.188982808265134 -0.622034383469732 0.93246951420315203 0.033424655448598628 -0.622034383469732 -0.188982808265134 0.93246951420315203 0.033424655448598628 -0.188982808265134 -0.188982808265134 0.93246951420315203 0.033424655448598628 0.635801960056998 -0.702868375458226 0.93246951420315203 0.0099262907396687667 -0.932933584598772 -0.702868375458226 0.93246951420315203 0.0099262907396687667 -0.702868375458226 -0.932933584598772 0.93246951420315203 0.0099262907396687667 0.635801960056998 -0.932933584598772 0.93246951420315203 0.0099262907396687667 -0.932933584598772 0.635801960056998 0.93246951420315203 0.0099262907396687667 -0.702868375458226 0.635801960056998 0.93246951420315203 0.0099262907396687667 0.209957823550266 -0.285607402768638 0.93246951420315203 0.0157777407659075 -0.924350420781628 -0.285607402768638 0.93246951420315203 0.0157777407659075 -0.285607402768638 -0.924350420781628 0.93246951420315203 0.0157777407659075 0.209957823550266 -0.924350420781628 0.93246951420315203 0.0157777407659075 -0.924350420781628 0.209957823550266 0.93246951420315203 0.0157777407659075 -0.285607402768638 0.209957823550266 0.93246951420315203 0.0157777407659075 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n18-d4-spu.txt000066400000000000000000000024121277740313300265370ustar00rootroot00000000000000-0.81684757298044 0.63369514596088 -0.77459666924148338 0.12216860406148111 0.63369514596088 -0.81684757298044 -0.77459666924148338 0.12216860406148111 -0.81684757298044 -0.81684757298044 -0.77459666924148338 0.12216860406148111 -0.108103018168072 -0.783793963663856 -0.77459666924148338 0.24820176630888889 -0.783793963663856 -0.108103018168072 -0.77459666924148338 0.24820176630888889 -0.108103018168072 -0.108103018168072 -0.77459666924148338 0.24820176630888889 -0.81684757298044 0.63369514596088 0.0 0.19546976649836978 0.63369514596088 -0.81684757298044 0.0 0.19546976649836978 -0.81684757298044 -0.81684757298044 0.0 0.19546976649836978 -0.108103018168072 -0.783793963663856 0.0 0.39712282609422222 -0.783793963663856 -0.108103018168072 0.0 0.39712282609422222 -0.108103018168072 -0.108103018168072 0.0 0.39712282609422222 -0.81684757298044 0.63369514596088 0.77459666924148338 0.12216860406148111 0.63369514596088 -0.81684757298044 0.77459666924148338 0.12216860406148111 -0.81684757298044 -0.81684757298044 0.77459666924148338 0.12216860406148111 -0.108103018168072 -0.783793963663856 0.77459666924148338 0.24820176630888889 -0.783793963663856 -0.108103018168072 0.77459666924148338 0.24820176630888889 -0.108103018168072 -0.108103018168072 0.77459666924148338 0.24820176630888889 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n196-d10-spu.txt000066400000000000000000000351251277740313300267120ustar00rootroot00000000000000-0.333333333333333 -0.333333333333333 -0.94910791234275852 0.02165201306036287 -0.960045625755614 0.920091251511228 -0.94910791234275852 0.0013653335808128306 0.920091251511228 -0.960045625755614 -0.94910791234275852 0.0013653335808128306 -0.960045625755614 -0.960045625755614 -0.94910791234275852 0.0013653335808128306 -0.736556464940004 0.473112929880008 -0.94910791234275852 0.011537870997338738 0.473112929880008 -0.736556464940004 -0.94910791234275852 0.011537870997338738 -0.736556464940004 -0.736556464940004 -0.94910791234275852 0.011537870997338738 -0.029729306413078 -0.940541387173844 -0.94910791234275852 0.0087572528568555835 -0.940541387173844 -0.029729306413078 -0.94910791234275852 0.0087572528568555835 -0.029729306413078 -0.029729306413078 -0.94910791234275852 0.0087572528568555835 0.7358224202359 -0.784096036307978 -0.94910791234275852 0.004068537110261862 -0.951726383927922 -0.784096036307978 -0.94910791234275852 0.004068537110261862 -0.784096036307978 -0.951726383927922 -0.94910791234275852 0.004068537110261862 0.7358224202359 -0.951726383927922 -0.94910791234275852 0.004068537110261862 -0.951726383927922 0.7358224202359 -0.94910791234275852 0.004068537110261862 -0.784096036307978 0.7358224202359 -0.94910791234275852 0.004068537110261862 0.401745140761446 -0.458318454156866 -0.94910791234275852 0.0073042822341678439 -0.94342668660458 -0.458318454156866 -0.94910791234275852 0.0073042822341678439 -0.458318454156866 -0.94342668660458 -0.94910791234275852 0.0073042822341678439 0.401745140761446 -0.94342668660458 -0.94910791234275852 0.0073042822341678439 -0.94342668660458 0.401745140761446 -0.94910791234275852 0.0073042822341678439 -0.458318454156866 0.401745140761446 -0.94910791234275852 0.0073042822341678439 0.073309368412276 -0.366900802310766 -0.94910791234275852 0.017349938484296224 -0.70640856610151 -0.366900802310766 -0.94910791234275852 0.017349938484296224 -0.366900802310766 -0.70640856610151 -0.94910791234275852 0.017349938484296224 0.073309368412276 -0.70640856610151 -0.94910791234275852 0.017349938484296224 -0.70640856610151 0.073309368412276 -0.94910791234275852 0.017349938484296224 -0.366900802310766 0.073309368412276 -0.94910791234275852 0.017349938484296224 -0.333333333333333 -0.333333333333333 -0.74153118559939444 0.046771335458986542 -0.960045625755614 0.920091251511228 -0.74153118559939444 0.0029493089046079671 0.920091251511228 -0.960045625755614 -0.74153118559939444 0.0029493089046079671 -0.960045625755614 -0.960045625755614 -0.74153118559939444 0.0029493089046079671 -0.736556464940004 0.473112929880008 -0.74153118559939444 0.024923393191875241 0.473112929880008 -0.736556464940004 -0.74153118559939444 0.024923393191875241 -0.736556464940004 -0.736556464940004 -0.74153118559939444 0.024923393191875241 -0.029729306413078 -0.940541387173844 -0.74153118559939444 0.018916874376774295 -0.940541387173844 -0.029729306413078 -0.74153118559939444 0.018916874376774295 -0.029729306413078 -0.029729306413078 -0.74153118559939444 0.018916874376774295 0.7358224202359 -0.784096036307978 -0.74153118559939444 0.0087886014792660644 -0.951726383927922 -0.784096036307978 -0.74153118559939444 0.0087886014792660644 -0.784096036307978 -0.951726383927922 -0.74153118559939444 0.0087886014792660644 0.7358224202359 -0.951726383927922 -0.74153118559939444 0.0087886014792660644 -0.951726383927922 0.7358224202359 -0.74153118559939444 0.0087886014792660644 -0.784096036307978 0.7358224202359 -0.74153118559939444 0.0087886014792660644 0.401745140761446 -0.458318454156866 -0.74153118559939444 0.015778257370756198 -0.94342668660458 -0.458318454156866 -0.74153118559939444 0.015778257370756198 -0.458318454156866 -0.94342668660458 -0.74153118559939444 0.015778257370756198 0.401745140761446 -0.94342668660458 -0.74153118559939444 0.015778257370756198 -0.94342668660458 0.401745140761446 -0.74153118559939444 0.015778257370756198 -0.458318454156866 0.401745140761446 -0.74153118559939444 0.015778257370756198 0.073309368412276 -0.366900802310766 -0.74153118559939444 0.037478260833276972 -0.70640856610151 -0.366900802310766 -0.74153118559939444 0.037478260833276972 -0.366900802310766 -0.70640856610151 -0.74153118559939444 0.037478260833276972 0.073309368412276 -0.70640856610151 -0.74153118559939444 0.037478260833276972 -0.70640856610151 0.073309368412276 -0.74153118559939444 0.037478260833276972 -0.366900802310766 0.073309368412276 -0.74153118559939444 0.037478260833276972 -0.333333333333333 -0.333333333333333 -0.40584515137739717 0.063848255785878757 -0.960045625755614 0.920091251511228 -0.40584515137739717 0.0040261460889459859 0.920091251511228 -0.960045625755614 -0.40584515137739717 0.0040261460889459859 -0.960045625755614 -0.960045625755614 -0.40584515137739717 0.0040261460889459859 -0.736556464940004 0.473112929880008 -0.40584515137739717 0.034023300124972757 0.473112929880008 -0.736556464940004 -0.40584515137739717 0.034023300124972757 -0.736556464940004 -0.736556464940004 -0.40584515137739717 0.034023300124972757 -0.029729306413078 -0.940541387173844 -0.40584515137739717 0.025823710655787039 -0.940541387173844 -0.029729306413078 -0.40584515137739717 0.025823710655787039 -0.029729306413078 -0.029729306413078 -0.40584515137739717 0.025823710655787039 0.7358224202359 -0.784096036307978 -0.40584515137739717 0.011997452493961587 -0.951726383927922 -0.784096036307978 -0.40584515137739717 0.011997452493961587 -0.784096036307978 -0.951726383927922 -0.40584515137739717 0.011997452493961587 0.7358224202359 -0.951726383927922 -0.40584515137739717 0.011997452493961587 -0.951726383927922 0.7358224202359 -0.40584515137739717 0.011997452493961587 -0.784096036307978 0.7358224202359 -0.40584515137739717 0.011997452493961587 0.401745140761446 -0.458318454156866 -0.40584515137739717 0.02153913722106274 -0.94342668660458 -0.458318454156866 -0.40584515137739717 0.02153913722106274 -0.458318454156866 -0.94342668660458 -0.40584515137739717 0.02153913722106274 0.401745140761446 -0.94342668660458 -0.40584515137739717 0.02153913722106274 -0.94342668660458 0.401745140761446 -0.40584515137739717 0.02153913722106274 -0.458318454156866 0.401745140761446 -0.40584515137739717 0.02153913722106274 0.073309368412276 -0.366900802310766 -0.40584515137739717 0.051162139387516225 -0.70640856610151 -0.366900802310766 -0.40584515137739717 0.051162139387516225 -0.366900802310766 -0.70640856610151 -0.40584515137739717 0.051162139387516225 0.073309368412276 -0.70640856610151 -0.40584515137739717 0.051162139387516225 -0.70640856610151 0.073309368412276 -0.40584515137739717 0.051162139387516225 -0.366900802310766 0.073309368412276 -0.40584515137739717 0.051162139387516225 -0.333333333333333 -0.333333333333333 0.0 0.069889640252091664 -0.960045625755614 0.920091251511228 0.0 0.0044071039732464327 0.920091251511228 -0.960045625755614 0.0 0.0044071039732464327 -0.960045625755614 -0.960045625755614 0.0 0.0044071039732464327 -0.736556464940004 0.473112929880008 0.0 0.037242618089642527 0.473112929880008 -0.736556464940004 0.0 0.037242618089642527 -0.736556464940004 -0.736556464940004 0.0 0.037242618089642527 -0.029729306413078 -0.940541387173844 0.0 0.028267175437958165 -0.940541387173844 -0.029729306413078 0.0 0.028267175437958165 -0.029729306413078 -0.029729306413078 0.0 0.028267175437958165 0.7358224202359 -0.784096036307978 0.0 0.013132663193752973 -0.951726383927922 -0.784096036307978 0.0 0.013132663193752973 -0.784096036307978 -0.951726383927922 0.0 0.013132663193752973 0.7358224202359 -0.951726383927922 0.0 0.013132663193752973 -0.951726383927922 0.7358224202359 0.0 0.013132663193752973 -0.784096036307978 0.7358224202359 0.0 0.013132663193752973 0.401745140761446 -0.458318454156866 0.0 0.023577191470490436 -0.94342668660458 -0.458318454156866 0.0 0.023577191470490436 -0.458318454156866 -0.94342668660458 0.0 0.023577191470490436 0.401745140761446 -0.94342668660458 0.0 0.023577191470490436 -0.94342668660458 0.401745140761446 0.0 0.023577191470490436 -0.458318454156866 0.401745140761446 0.0 0.023577191470490436 0.073309368412276 -0.366900802310766 0.0 0.056003151101141159 -0.70640856610151 -0.366900802310766 0.0 0.056003151101141159 -0.366900802310766 -0.70640856610151 0.0 0.056003151101141159 0.073309368412276 -0.70640856610151 0.0 0.056003151101141159 -0.70640856610151 0.073309368412276 0.0 0.056003151101141159 -0.366900802310766 0.073309368412276 0.0 0.056003151101141159 -0.333333333333333 -0.333333333333333 0.40584515137739717 0.063848255785878757 -0.960045625755614 0.920091251511228 0.40584515137739717 0.0040261460889459859 0.920091251511228 -0.960045625755614 0.40584515137739717 0.0040261460889459859 -0.960045625755614 -0.960045625755614 0.40584515137739717 0.0040261460889459859 -0.736556464940004 0.473112929880008 0.40584515137739717 0.034023300124972757 0.473112929880008 -0.736556464940004 0.40584515137739717 0.034023300124972757 -0.736556464940004 -0.736556464940004 0.40584515137739717 0.034023300124972757 -0.029729306413078 -0.940541387173844 0.40584515137739717 0.025823710655787039 -0.940541387173844 -0.029729306413078 0.40584515137739717 0.025823710655787039 -0.029729306413078 -0.029729306413078 0.40584515137739717 0.025823710655787039 0.7358224202359 -0.784096036307978 0.40584515137739717 0.011997452493961587 -0.951726383927922 -0.784096036307978 0.40584515137739717 0.011997452493961587 -0.784096036307978 -0.951726383927922 0.40584515137739717 0.011997452493961587 0.7358224202359 -0.951726383927922 0.40584515137739717 0.011997452493961587 -0.951726383927922 0.7358224202359 0.40584515137739717 0.011997452493961587 -0.784096036307978 0.7358224202359 0.40584515137739717 0.011997452493961587 0.401745140761446 -0.458318454156866 0.40584515137739717 0.02153913722106274 -0.94342668660458 -0.458318454156866 0.40584515137739717 0.02153913722106274 -0.458318454156866 -0.94342668660458 0.40584515137739717 0.02153913722106274 0.401745140761446 -0.94342668660458 0.40584515137739717 0.02153913722106274 -0.94342668660458 0.401745140761446 0.40584515137739717 0.02153913722106274 -0.458318454156866 0.401745140761446 0.40584515137739717 0.02153913722106274 0.073309368412276 -0.366900802310766 0.40584515137739717 0.051162139387516225 -0.70640856610151 -0.366900802310766 0.40584515137739717 0.051162139387516225 -0.366900802310766 -0.70640856610151 0.40584515137739717 0.051162139387516225 0.073309368412276 -0.70640856610151 0.40584515137739717 0.051162139387516225 -0.70640856610151 0.073309368412276 0.40584515137739717 0.051162139387516225 -0.366900802310766 0.073309368412276 0.40584515137739717 0.051162139387516225 -0.333333333333333 -0.333333333333333 0.74153118559939444 0.046771335458986542 -0.960045625755614 0.920091251511228 0.74153118559939444 0.0029493089046079671 0.920091251511228 -0.960045625755614 0.74153118559939444 0.0029493089046079671 -0.960045625755614 -0.960045625755614 0.74153118559939444 0.0029493089046079671 -0.736556464940004 0.473112929880008 0.74153118559939444 0.024923393191875241 0.473112929880008 -0.736556464940004 0.74153118559939444 0.024923393191875241 -0.736556464940004 -0.736556464940004 0.74153118559939444 0.024923393191875241 -0.029729306413078 -0.940541387173844 0.74153118559939444 0.018916874376774295 -0.940541387173844 -0.029729306413078 0.74153118559939444 0.018916874376774295 -0.029729306413078 -0.029729306413078 0.74153118559939444 0.018916874376774295 0.7358224202359 -0.784096036307978 0.74153118559939444 0.0087886014792660644 -0.951726383927922 -0.784096036307978 0.74153118559939444 0.0087886014792660644 -0.784096036307978 -0.951726383927922 0.74153118559939444 0.0087886014792660644 0.7358224202359 -0.951726383927922 0.74153118559939444 0.0087886014792660644 -0.951726383927922 0.7358224202359 0.74153118559939444 0.0087886014792660644 -0.784096036307978 0.7358224202359 0.74153118559939444 0.0087886014792660644 0.401745140761446 -0.458318454156866 0.74153118559939444 0.015778257370756198 -0.94342668660458 -0.458318454156866 0.74153118559939444 0.015778257370756198 -0.458318454156866 -0.94342668660458 0.74153118559939444 0.015778257370756198 0.401745140761446 -0.94342668660458 0.74153118559939444 0.015778257370756198 -0.94342668660458 0.401745140761446 0.74153118559939444 0.015778257370756198 -0.458318454156866 0.401745140761446 0.74153118559939444 0.015778257370756198 0.073309368412276 -0.366900802310766 0.74153118559939444 0.037478260833276972 -0.70640856610151 -0.366900802310766 0.74153118559939444 0.037478260833276972 -0.366900802310766 -0.70640856610151 0.74153118559939444 0.037478260833276972 0.073309368412276 -0.70640856610151 0.74153118559939444 0.037478260833276972 -0.70640856610151 0.073309368412276 0.74153118559939444 0.037478260833276972 -0.366900802310766 0.073309368412276 0.74153118559939444 0.037478260833276972 -0.333333333333333 -0.333333333333333 0.94910791234275852 0.02165201306036287 -0.960045625755614 0.920091251511228 0.94910791234275852 0.0013653335808128306 0.920091251511228 -0.960045625755614 0.94910791234275852 0.0013653335808128306 -0.960045625755614 -0.960045625755614 0.94910791234275852 0.0013653335808128306 -0.736556464940004 0.473112929880008 0.94910791234275852 0.011537870997338738 0.473112929880008 -0.736556464940004 0.94910791234275852 0.011537870997338738 -0.736556464940004 -0.736556464940004 0.94910791234275852 0.011537870997338738 -0.029729306413078 -0.940541387173844 0.94910791234275852 0.0087572528568555835 -0.940541387173844 -0.029729306413078 0.94910791234275852 0.0087572528568555835 -0.029729306413078 -0.029729306413078 0.94910791234275852 0.0087572528568555835 0.7358224202359 -0.784096036307978 0.94910791234275852 0.004068537110261862 -0.951726383927922 -0.784096036307978 0.94910791234275852 0.004068537110261862 -0.784096036307978 -0.951726383927922 0.94910791234275852 0.004068537110261862 0.7358224202359 -0.951726383927922 0.94910791234275852 0.004068537110261862 -0.951726383927922 0.7358224202359 0.94910791234275852 0.004068537110261862 -0.784096036307978 0.7358224202359 0.94910791234275852 0.004068537110261862 0.401745140761446 -0.458318454156866 0.94910791234275852 0.0073042822341678439 -0.94342668660458 -0.458318454156866 0.94910791234275852 0.0073042822341678439 -0.458318454156866 -0.94342668660458 0.94910791234275852 0.0073042822341678439 0.401745140761446 -0.94342668660458 0.94910791234275852 0.0073042822341678439 -0.94342668660458 0.401745140761446 0.94910791234275852 0.0073042822341678439 -0.458318454156866 0.401745140761446 0.94910791234275852 0.0073042822341678439 0.073309368412276 -0.366900802310766 0.94910791234275852 0.017349938484296224 -0.70640856610151 -0.366900802310766 0.94910791234275852 0.017349938484296224 -0.366900802310766 -0.70640856610151 0.94910791234275852 0.017349938484296224 0.073309368412276 -0.70640856610151 0.94910791234275852 0.017349938484296224 -0.70640856610151 0.073309368412276 0.94910791234275852 0.017349938484296224 -0.366900802310766 0.073309368412276 0.94910791234275852 0.017349938484296224 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n288-d12-spu.txt000066400000000000000000000542661277740313300267250ustar00rootroot00000000000000-0.95765715444107 0.91531430888214 -0.96028985649753623 0.0011416804938182859 0.91531430888214 -0.95765715444107 -0.96028985649753623 0.0011416804938182859 -0.95765715444107 -0.95765715444107 -0.96028985649753623 0.0011416804938182859 -0.798831205208224 0.597662410416448 -0.96028985649753623 0.0054965006237965685 0.597662410416448 -0.798831205208224 -0.96028985649753623 0.0054965006237965685 -0.798831205208224 -0.798831205208224 -0.96028985649753623 0.0054965006237965685 -0.457923384576136 -0.084153230847728 -0.96028985649753623 0.012775226028677979 -0.084153230847728 -0.457923384576136 -0.96028985649753623 0.012775226028677979 -0.457923384576136 -0.457923384576136 -0.96028985649753623 0.012775226028677979 -0.119617483192336 -0.760765033615328 -0.96028985649753623 0.010477719511222167 -0.760765033615328 -0.119617483192336 -0.96028985649753623 0.010477719511222167 -0.119617483192336 -0.119617483192336 -0.96028985649753623 0.010477719511222167 0.759959282854462 -0.963486641850504 -0.96028985649753623 0.0019975940445985046 -0.796472641003958 -0.963486641850504 -0.96028985649753623 0.0019975940445985046 -0.963486641850504 -0.796472641003958 -0.96028985649753623 0.0019975940445985046 0.759959282854462 -0.796472641003958 -0.96028985649753623 0.0019975940445985046 -0.796472641003958 0.759959282854462 -0.96028985649753623 0.0019975940445985046 -0.963486641850504 0.759959282854462 -0.96028985649753623 0.0019975940445985046 0.165124045727344 -0.211933456660026 -0.96028985649753623 0.0044557167165954272 -0.953190589067318 -0.211933456660026 -0.96028985649753623 0.0044557167165954272 -0.211933456660026 -0.953190589067318 -0.96028985649753623 0.0044557167165954272 0.165124045727344 -0.953190589067318 -0.96028985649753623 0.0044557167165954272 -0.953190589067318 0.165124045727344 -0.96028985649753623 0.0044557167165954272 -0.211933456660026 0.165124045727344 -0.96028985649753623 0.0044557167165954272 0.503061229085564 -0.547508938181542 -0.96028985649753623 0.0033698109321011619 -0.955552290904022 -0.547508938181542 -0.96028985649753623 0.0033698109321011619 -0.547508938181542 -0.955552290904022 -0.96028985649753623 0.0033698109321011619 0.503061229085564 -0.955552290904022 -0.96028985649753623 0.0033698109321011619 -0.955552290904022 0.503061229085564 -0.96028985649753623 0.0033698109321011619 -0.547508938181542 0.503061229085564 -0.96028985649753623 0.0033698109321011619 0.27147436652621 -0.501841544757336 -0.96028985649753623 0.0089741604080726907 -0.769632821768874 -0.501841544757336 -0.96028985649753623 0.0089741604080726907 -0.501841544757336 -0.769632821768874 -0.96028985649753623 0.0089741604080726907 0.27147436652621 -0.769632821768874 -0.96028985649753623 0.0089741604080726907 -0.769632821768874 0.27147436652621 -0.96028985649753623 0.0089741604080726907 -0.501841544757336 0.27147436652621 -0.96028985649753623 0.0089741604080726907 -0.95765715444107 0.91531430888214 -0.79666647741362674 0.0025080683622873525 0.91531430888214 -0.95765715444107 -0.79666647741362674 0.0025080683622873525 -0.95765715444107 -0.95765715444107 -0.79666647741362674 0.0025080683622873525 -0.798831205208224 0.597662410416448 -0.79666647741362674 0.012074831261881083 0.597662410416448 -0.798831205208224 -0.79666647741362674 0.012074831261881083 -0.798831205208224 -0.798831205208224 -0.79666647741362674 0.012074831261881083 -0.457923384576136 -0.084153230847728 -0.79666647741362674 0.028064892408240553 -0.084153230847728 -0.457923384576136 -0.79666647741362674 0.028064892408240553 -0.457923384576136 -0.457923384576136 -0.79666647741362674 0.028064892408240553 -0.119617483192336 -0.760765033615328 -0.79666647741362674 0.023017680478300138 -0.760765033615328 -0.119617483192336 -0.79666647741362674 0.023017680478300138 -0.119617483192336 -0.119617483192336 -0.79666647741362674 0.023017680478300138 0.759959282854462 -0.963486641850504 -0.79666647741362674 0.0043883577332526157 -0.796472641003958 -0.963486641850504 -0.79666647741362674 0.0043883577332526157 -0.963486641850504 -0.796472641003958 -0.79666647741362674 0.0043883577332526157 0.759959282854462 -0.796472641003958 -0.79666647741362674 0.0043883577332526157 -0.796472641003958 0.759959282854462 -0.79666647741362674 0.0043883577332526157 -0.963486641850504 0.759959282854462 -0.79666647741362674 0.0043883577332526157 0.165124045727344 -0.211933456660026 -0.79666647741362674 0.0097884146998368228 -0.953190589067318 -0.211933456660026 -0.79666647741362674 0.0097884146998368228 -0.211933456660026 -0.953190589067318 -0.79666647741362674 0.0097884146998368228 0.165124045727344 -0.953190589067318 -0.79666647741362674 0.0097884146998368228 -0.953190589067318 0.165124045727344 -0.79666647741362674 0.0097884146998368228 -0.211933456660026 0.165124045727344 -0.79666647741362674 0.0097884146998368228 0.503061229085564 -0.547508938181542 -0.79666647741362674 0.0074028734233924683 -0.955552290904022 -0.547508938181542 -0.79666647741362674 0.0074028734233924683 -0.547508938181542 -0.955552290904022 -0.79666647741362674 0.0074028734233924683 0.503061229085564 -0.955552290904022 -0.79666647741362674 0.0074028734233924683 -0.955552290904022 0.503061229085564 -0.79666647741362674 0.0074028734233924683 -0.547508938181542 0.503061229085564 -0.79666647741362674 0.0074028734233924683 0.27147436652621 -0.501841544757336 -0.79666647741362674 0.01971462937262139 -0.769632821768874 -0.501841544757336 -0.79666647741362674 0.01971462937262139 -0.501841544757336 -0.769632821768874 -0.79666647741362674 0.01971462937262139 0.27147436652621 -0.769632821768874 -0.79666647741362674 0.01971462937262139 -0.769632821768874 0.27147436652621 -0.79666647741362674 0.01971462937262139 -0.501841544757336 0.27147436652621 -0.79666647741362674 0.01971462937262139 -0.95765715444107 0.91531430888214 -0.52553240991632899 0.0035380612177634922 0.91531430888214 -0.95765715444107 -0.52553240991632899 0.0035380612177634922 -0.95765715444107 -0.95765715444107 -0.52553240991632899 0.0035380612177634922 -0.798831205208224 0.597662410416448 -0.52553240991632899 0.017033623501289961 0.597662410416448 -0.798831205208224 -0.52553240991632899 0.017033623501289961 -0.798831205208224 -0.798831205208224 -0.52553240991632899 0.017033623501289961 -0.457923384576136 -0.084153230847728 -0.52553240991632899 0.039590351245347983 -0.084153230847728 -0.457923384576136 -0.52553240991632899 0.039590351245347983 -0.457923384576136 -0.457923384576136 -0.52553240991632899 0.039590351245347983 -0.119617483192336 -0.760765033615328 -0.52553240991632899 0.032470391895089461 -0.760765033615328 -0.119617483192336 -0.52553240991632899 0.032470391895089461 -0.119617483192336 -0.119617483192336 -0.52553240991632899 0.032470391895089461 0.759959282854462 -0.963486641850504 -0.52553240991632899 0.0061905323392117025 -0.796472641003958 -0.963486641850504 -0.52553240991632899 0.0061905323392117025 -0.963486641850504 -0.796472641003958 -0.52553240991632899 0.0061905323392117025 0.759959282854462 -0.796472641003958 -0.52553240991632899 0.0061905323392117025 -0.796472641003958 0.759959282854462 -0.52553240991632899 0.0061905323392117025 -0.963486641850504 0.759959282854462 -0.52553240991632899 0.0061905323392117025 0.165124045727344 -0.211933456660026 -0.52553240991632899 0.013808240219295468 -0.953190589067318 -0.211933456660026 -0.52553240991632899 0.013808240219295468 -0.211933456660026 -0.953190589067318 -0.52553240991632899 0.013808240219295468 0.165124045727344 -0.953190589067318 -0.52553240991632899 0.013808240219295468 -0.953190589067318 0.165124045727344 -0.52553240991632899 0.013808240219295468 -0.211933456660026 0.165124045727344 -0.52553240991632899 0.013808240219295468 0.503061229085564 -0.547508938181542 -0.52553240991632899 0.010443024501704599 -0.955552290904022 -0.547508938181542 -0.52553240991632899 0.010443024501704599 -0.547508938181542 -0.955552290904022 -0.52553240991632899 0.010443024501704599 0.503061229085564 -0.955552290904022 -0.52553240991632899 0.010443024501704599 -0.955552290904022 0.503061229085564 -0.52553240991632899 0.010443024501704599 -0.547508938181542 0.503061229085564 -0.52553240991632899 0.010443024501704599 0.27147436652621 -0.501841544757336 -0.52553240991632899 0.027810870969338126 -0.769632821768874 -0.501841544757336 -0.52553240991632899 0.027810870969338126 -0.501841544757336 -0.769632821768874 -0.52553240991632899 0.027810870969338126 0.27147436652621 -0.769632821768874 -0.52553240991632899 0.027810870969338126 -0.769632821768874 0.27147436652621 -0.52553240991632899 0.027810870969338126 -0.501841544757336 0.27147436652621 -0.52553240991632899 0.027810870969338126 -0.95765715444107 0.91531430888214 -0.1834346424956498 0.0040904374999508695 0.91531430888214 -0.95765715444107 -0.1834346424956498 0.0040904374999508695 -0.95765715444107 -0.95765715444107 -0.1834346424956498 0.0040904374999508695 -0.798831205208224 0.597662410416448 -0.1834346424956498 0.019692980997588388 0.597662410416448 -0.798831205208224 -0.1834346424956498 0.019692980997588388 -0.798831205208224 -0.798831205208224 -0.1834346424956498 0.019692980997588388 -0.457923384576136 -0.084153230847728 -0.1834346424956498 0.045771355384451484 -0.084153230847728 -0.457923384576136 -0.1834346424956498 0.045771355384451484 -0.457923384576136 -0.457923384576136 -0.1834346424956498 0.045771355384451484 -0.119617483192336 -0.760765033615328 -0.1834346424956498 0.037539799475186234 -0.760765033615328 -0.119617483192336 -0.1834346424956498 0.037539799475186234 -0.119617483192336 -0.119617483192336 -0.1834346424956498 0.037539799475186234 0.759959282854462 -0.963486641850504 -0.1834346424956498 0.0071570230322291772 -0.796472641003958 -0.963486641850504 -0.1834346424956498 0.0071570230322291772 -0.963486641850504 -0.796472641003958 -0.1834346424956498 0.0071570230322291772 0.759959282854462 -0.796472641003958 -0.1834346424956498 0.0071570230322291772 -0.796472641003958 0.759959282854462 -0.1834346424956498 0.0071570230322291772 -0.963486641850504 0.759959282854462 -0.1834346424956498 0.0071570230322291772 0.165124045727344 -0.211933456660026 -0.1834346424956498 0.015964037964566282 -0.953190589067318 -0.211933456660026 -0.1834346424956498 0.015964037964566282 -0.211933456660026 -0.953190589067318 -0.1834346424956498 0.015964037964566282 0.165124045727344 -0.953190589067318 -0.1834346424956498 0.015964037964566282 -0.953190589067318 0.165124045727344 -0.1834346424956498 0.015964037964566282 -0.211933456660026 0.165124045727344 -0.1834346424956498 0.015964037964566282 0.503061229085564 -0.547508938181542 -0.1834346424956498 0.012073431296273771 -0.955552290904022 -0.547508938181542 -0.1834346424956498 0.012073431296273771 -0.547508938181542 -0.955552290904022 -0.1834346424956498 0.012073431296273771 0.503061229085564 -0.955552290904022 -0.1834346424956498 0.012073431296273771 -0.955552290904022 0.503061229085564 -0.1834346424956498 0.012073431296273771 -0.547508938181542 0.503061229085564 -0.1834346424956498 0.012073431296273771 0.27147436652621 -0.501841544757336 -0.1834346424956498 0.032152815487795793 -0.769632821768874 -0.501841544757336 -0.1834346424956498 0.032152815487795793 -0.501841544757336 -0.769632821768874 -0.1834346424956498 0.032152815487795793 0.27147436652621 -0.769632821768874 -0.1834346424956498 0.032152815487795793 -0.769632821768874 0.27147436652621 -0.1834346424956498 0.032152815487795793 -0.501841544757336 0.27147436652621 -0.1834346424956498 0.032152815487795793 -0.95765715444107 0.91531430888214 0.1834346424956498 0.0040904374999508695 0.91531430888214 -0.95765715444107 0.1834346424956498 0.0040904374999508695 -0.95765715444107 -0.95765715444107 0.1834346424956498 0.0040904374999508695 -0.798831205208224 0.597662410416448 0.1834346424956498 0.019692980997588388 0.597662410416448 -0.798831205208224 0.1834346424956498 0.019692980997588388 -0.798831205208224 -0.798831205208224 0.1834346424956498 0.019692980997588388 -0.457923384576136 -0.084153230847728 0.1834346424956498 0.045771355384451484 -0.084153230847728 -0.457923384576136 0.1834346424956498 0.045771355384451484 -0.457923384576136 -0.457923384576136 0.1834346424956498 0.045771355384451484 -0.119617483192336 -0.760765033615328 0.1834346424956498 0.037539799475186234 -0.760765033615328 -0.119617483192336 0.1834346424956498 0.037539799475186234 -0.119617483192336 -0.119617483192336 0.1834346424956498 0.037539799475186234 0.759959282854462 -0.963486641850504 0.1834346424956498 0.0071570230322291772 -0.796472641003958 -0.963486641850504 0.1834346424956498 0.0071570230322291772 -0.963486641850504 -0.796472641003958 0.1834346424956498 0.0071570230322291772 0.759959282854462 -0.796472641003958 0.1834346424956498 0.0071570230322291772 -0.796472641003958 0.759959282854462 0.1834346424956498 0.0071570230322291772 -0.963486641850504 0.759959282854462 0.1834346424956498 0.0071570230322291772 0.165124045727344 -0.211933456660026 0.1834346424956498 0.015964037964566282 -0.953190589067318 -0.211933456660026 0.1834346424956498 0.015964037964566282 -0.211933456660026 -0.953190589067318 0.1834346424956498 0.015964037964566282 0.165124045727344 -0.953190589067318 0.1834346424956498 0.015964037964566282 -0.953190589067318 0.165124045727344 0.1834346424956498 0.015964037964566282 -0.211933456660026 0.165124045727344 0.1834346424956498 0.015964037964566282 0.503061229085564 -0.547508938181542 0.1834346424956498 0.012073431296273771 -0.955552290904022 -0.547508938181542 0.1834346424956498 0.012073431296273771 -0.547508938181542 -0.955552290904022 0.1834346424956498 0.012073431296273771 0.503061229085564 -0.955552290904022 0.1834346424956498 0.012073431296273771 -0.955552290904022 0.503061229085564 0.1834346424956498 0.012073431296273771 -0.547508938181542 0.503061229085564 0.1834346424956498 0.012073431296273771 0.27147436652621 -0.501841544757336 0.1834346424956498 0.032152815487795793 -0.769632821768874 -0.501841544757336 0.1834346424956498 0.032152815487795793 -0.501841544757336 -0.769632821768874 0.1834346424956498 0.032152815487795793 0.27147436652621 -0.769632821768874 0.1834346424956498 0.032152815487795793 -0.769632821768874 0.27147436652621 0.1834346424956498 0.032152815487795793 -0.501841544757336 0.27147436652621 0.1834346424956498 0.032152815487795793 -0.95765715444107 0.91531430888214 0.52553240991632899 0.0035380612177634922 0.91531430888214 -0.95765715444107 0.52553240991632899 0.0035380612177634922 -0.95765715444107 -0.95765715444107 0.52553240991632899 0.0035380612177634922 -0.798831205208224 0.597662410416448 0.52553240991632899 0.017033623501289961 0.597662410416448 -0.798831205208224 0.52553240991632899 0.017033623501289961 -0.798831205208224 -0.798831205208224 0.52553240991632899 0.017033623501289961 -0.457923384576136 -0.084153230847728 0.52553240991632899 0.039590351245347983 -0.084153230847728 -0.457923384576136 0.52553240991632899 0.039590351245347983 -0.457923384576136 -0.457923384576136 0.52553240991632899 0.039590351245347983 -0.119617483192336 -0.760765033615328 0.52553240991632899 0.032470391895089461 -0.760765033615328 -0.119617483192336 0.52553240991632899 0.032470391895089461 -0.119617483192336 -0.119617483192336 0.52553240991632899 0.032470391895089461 0.759959282854462 -0.963486641850504 0.52553240991632899 0.0061905323392117025 -0.796472641003958 -0.963486641850504 0.52553240991632899 0.0061905323392117025 -0.963486641850504 -0.796472641003958 0.52553240991632899 0.0061905323392117025 0.759959282854462 -0.796472641003958 0.52553240991632899 0.0061905323392117025 -0.796472641003958 0.759959282854462 0.52553240991632899 0.0061905323392117025 -0.963486641850504 0.759959282854462 0.52553240991632899 0.0061905323392117025 0.165124045727344 -0.211933456660026 0.52553240991632899 0.013808240219295468 -0.953190589067318 -0.211933456660026 0.52553240991632899 0.013808240219295468 -0.211933456660026 -0.953190589067318 0.52553240991632899 0.013808240219295468 0.165124045727344 -0.953190589067318 0.52553240991632899 0.013808240219295468 -0.953190589067318 0.165124045727344 0.52553240991632899 0.013808240219295468 -0.211933456660026 0.165124045727344 0.52553240991632899 0.013808240219295468 0.503061229085564 -0.547508938181542 0.52553240991632899 0.010443024501704599 -0.955552290904022 -0.547508938181542 0.52553240991632899 0.010443024501704599 -0.547508938181542 -0.955552290904022 0.52553240991632899 0.010443024501704599 0.503061229085564 -0.955552290904022 0.52553240991632899 0.010443024501704599 -0.955552290904022 0.503061229085564 0.52553240991632899 0.010443024501704599 -0.547508938181542 0.503061229085564 0.52553240991632899 0.010443024501704599 0.27147436652621 -0.501841544757336 0.52553240991632899 0.027810870969338126 -0.769632821768874 -0.501841544757336 0.52553240991632899 0.027810870969338126 -0.501841544757336 -0.769632821768874 0.52553240991632899 0.027810870969338126 0.27147436652621 -0.769632821768874 0.52553240991632899 0.027810870969338126 -0.769632821768874 0.27147436652621 0.52553240991632899 0.027810870969338126 -0.501841544757336 0.27147436652621 0.52553240991632899 0.027810870969338126 -0.95765715444107 0.91531430888214 0.79666647741362674 0.0025080683622873525 0.91531430888214 -0.95765715444107 0.79666647741362674 0.0025080683622873525 -0.95765715444107 -0.95765715444107 0.79666647741362674 0.0025080683622873525 -0.798831205208224 0.597662410416448 0.79666647741362674 0.012074831261881083 0.597662410416448 -0.798831205208224 0.79666647741362674 0.012074831261881083 -0.798831205208224 -0.798831205208224 0.79666647741362674 0.012074831261881083 -0.457923384576136 -0.084153230847728 0.79666647741362674 0.028064892408240553 -0.084153230847728 -0.457923384576136 0.79666647741362674 0.028064892408240553 -0.457923384576136 -0.457923384576136 0.79666647741362674 0.028064892408240553 -0.119617483192336 -0.760765033615328 0.79666647741362674 0.023017680478300138 -0.760765033615328 -0.119617483192336 0.79666647741362674 0.023017680478300138 -0.119617483192336 -0.119617483192336 0.79666647741362674 0.023017680478300138 0.759959282854462 -0.963486641850504 0.79666647741362674 0.0043883577332526157 -0.796472641003958 -0.963486641850504 0.79666647741362674 0.0043883577332526157 -0.963486641850504 -0.796472641003958 0.79666647741362674 0.0043883577332526157 0.759959282854462 -0.796472641003958 0.79666647741362674 0.0043883577332526157 -0.796472641003958 0.759959282854462 0.79666647741362674 0.0043883577332526157 -0.963486641850504 0.759959282854462 0.79666647741362674 0.0043883577332526157 0.165124045727344 -0.211933456660026 0.79666647741362674 0.0097884146998368228 -0.953190589067318 -0.211933456660026 0.79666647741362674 0.0097884146998368228 -0.211933456660026 -0.953190589067318 0.79666647741362674 0.0097884146998368228 0.165124045727344 -0.953190589067318 0.79666647741362674 0.0097884146998368228 -0.953190589067318 0.165124045727344 0.79666647741362674 0.0097884146998368228 -0.211933456660026 0.165124045727344 0.79666647741362674 0.0097884146998368228 0.503061229085564 -0.547508938181542 0.79666647741362674 0.0074028734233924683 -0.955552290904022 -0.547508938181542 0.79666647741362674 0.0074028734233924683 -0.547508938181542 -0.955552290904022 0.79666647741362674 0.0074028734233924683 0.503061229085564 -0.955552290904022 0.79666647741362674 0.0074028734233924683 -0.955552290904022 0.503061229085564 0.79666647741362674 0.0074028734233924683 -0.547508938181542 0.503061229085564 0.79666647741362674 0.0074028734233924683 0.27147436652621 -0.501841544757336 0.79666647741362674 0.01971462937262139 -0.769632821768874 -0.501841544757336 0.79666647741362674 0.01971462937262139 -0.501841544757336 -0.769632821768874 0.79666647741362674 0.01971462937262139 0.27147436652621 -0.769632821768874 0.79666647741362674 0.01971462937262139 -0.769632821768874 0.27147436652621 0.79666647741362674 0.01971462937262139 -0.501841544757336 0.27147436652621 0.79666647741362674 0.01971462937262139 -0.95765715444107 0.91531430888214 0.96028985649753623 0.0011416804938182859 0.91531430888214 -0.95765715444107 0.96028985649753623 0.0011416804938182859 -0.95765715444107 -0.95765715444107 0.96028985649753623 0.0011416804938182859 -0.798831205208224 0.597662410416448 0.96028985649753623 0.0054965006237965685 0.597662410416448 -0.798831205208224 0.96028985649753623 0.0054965006237965685 -0.798831205208224 -0.798831205208224 0.96028985649753623 0.0054965006237965685 -0.457923384576136 -0.084153230847728 0.96028985649753623 0.012775226028677979 -0.084153230847728 -0.457923384576136 0.96028985649753623 0.012775226028677979 -0.457923384576136 -0.457923384576136 0.96028985649753623 0.012775226028677979 -0.119617483192336 -0.760765033615328 0.96028985649753623 0.010477719511222167 -0.760765033615328 -0.119617483192336 0.96028985649753623 0.010477719511222167 -0.119617483192336 -0.119617483192336 0.96028985649753623 0.010477719511222167 0.759959282854462 -0.963486641850504 0.96028985649753623 0.0019975940445985046 -0.796472641003958 -0.963486641850504 0.96028985649753623 0.0019975940445985046 -0.963486641850504 -0.796472641003958 0.96028985649753623 0.0019975940445985046 0.759959282854462 -0.796472641003958 0.96028985649753623 0.0019975940445985046 -0.796472641003958 0.759959282854462 0.96028985649753623 0.0019975940445985046 -0.963486641850504 0.759959282854462 0.96028985649753623 0.0019975940445985046 0.165124045727344 -0.211933456660026 0.96028985649753623 0.0044557167165954272 -0.953190589067318 -0.211933456660026 0.96028985649753623 0.0044557167165954272 -0.211933456660026 -0.953190589067318 0.96028985649753623 0.0044557167165954272 0.165124045727344 -0.953190589067318 0.96028985649753623 0.0044557167165954272 -0.953190589067318 0.165124045727344 0.96028985649753623 0.0044557167165954272 -0.211933456660026 0.165124045727344 0.96028985649753623 0.0044557167165954272 0.503061229085564 -0.547508938181542 0.96028985649753623 0.0033698109321011619 -0.955552290904022 -0.547508938181542 0.96028985649753623 0.0033698109321011619 -0.547508938181542 -0.955552290904022 0.96028985649753623 0.0033698109321011619 0.503061229085564 -0.955552290904022 0.96028985649753623 0.0033698109321011619 -0.955552290904022 0.503061229085564 0.96028985649753623 0.0033698109321011619 -0.547508938181542 0.503061229085564 0.96028985649753623 0.0033698109321011619 0.27147436652621 -0.501841544757336 0.96028985649753623 0.0089741604080726907 -0.769632821768874 -0.501841544757336 0.96028985649753623 0.0089741604080726907 -0.501841544757336 -0.769632821768874 0.96028985649753623 0.0089741604080726907 0.27147436652621 -0.769632821768874 0.96028985649753623 0.0089741604080726907 -0.769632821768874 0.27147436652621 0.96028985649753623 0.0089741604080726907 -0.501841544757336 0.27147436652621 0.96028985649753623 0.0089741604080726907 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n40-d5-spu.txt000066400000000000000000000061041277740313300265350ustar00rootroot00000000000000-0.333333333333333 -0.333333333333333 -0.86113631159405258 0.14021541016536177 -0.888871894660414 0.777743789320828 -0.86113631159405258 0.029188856952223541 0.777743789320828 -0.888871894660414 -0.86113631159405258 0.029188856952223541 -0.888871894660414 -0.888871894660414 -0.86113631159405258 0.029188856952223541 0.268421495491446 -0.408932576528214 -0.86113631159405258 0.077987951542145771 -0.859488918963232 -0.408932576528214 -0.86113631159405258 0.077987951542145771 -0.408932576528214 -0.859488918963232 -0.86113631159405258 0.077987951542145771 0.268421495491446 -0.859488918963232 -0.86113631159405258 0.077987951542145771 -0.859488918963232 0.268421495491446 -0.86113631159405258 0.077987951542145771 -0.408932576528214 0.268421495491446 -0.86113631159405258 0.077987951542145771 -0.333333333333333 -0.333333333333333 -0.33998104358485626 0.26287056700409823 -0.888871894660414 0.777743789320828 -0.33998104358485626 0.054722169041074459 0.777743789320828 -0.888871894660414 -0.33998104358485626 0.054722169041074459 -0.888871894660414 -0.888871894660414 -0.33998104358485626 0.054722169041074459 0.268421495491446 -0.408932576528214 -0.33998104358485626 0.14620887259962823 -0.859488918963232 -0.408932576528214 -0.33998104358485626 0.14620887259962823 -0.408932576528214 -0.859488918963232 -0.33998104358485626 0.14620887259962823 0.268421495491446 -0.859488918963232 -0.33998104358485626 0.14620887259962823 -0.859488918963232 0.268421495491446 -0.33998104358485626 0.14620887259962823 -0.408932576528214 0.268421495491446 -0.33998104358485626 0.14620887259962823 -0.333333333333333 -0.333333333333333 0.33998104358485626 0.26287056700409823 -0.888871894660414 0.777743789320828 0.33998104358485626 0.054722169041074459 0.777743789320828 -0.888871894660414 0.33998104358485626 0.054722169041074459 -0.888871894660414 -0.888871894660414 0.33998104358485626 0.054722169041074459 0.268421495491446 -0.408932576528214 0.33998104358485626 0.14620887259962823 -0.859488918963232 -0.408932576528214 0.33998104358485626 0.14620887259962823 -0.408932576528214 -0.859488918963232 0.33998104358485626 0.14620887259962823 0.268421495491446 -0.859488918963232 0.33998104358485626 0.14620887259962823 -0.859488918963232 0.268421495491446 0.33998104358485626 0.14620887259962823 -0.408932576528214 0.268421495491446 0.33998104358485626 0.14620887259962823 -0.333333333333333 -0.333333333333333 0.86113631159405258 0.14021541016536177 -0.888871894660414 0.777743789320828 0.86113631159405258 0.029188856952223541 0.777743789320828 -0.888871894660414 0.86113631159405258 0.029188856952223541 -0.888871894660414 -0.888871894660414 0.86113631159405258 0.029188856952223541 0.268421495491446 -0.408932576528214 0.86113631159405258 0.077987951542145771 -0.859488918963232 -0.408932576528214 0.86113631159405258 0.077987951542145771 -0.408932576528214 -0.859488918963232 0.86113631159405258 0.077987951542145771 0.268421495491446 -0.859488918963232 0.86113631159405258 0.077987951542145771 -0.859488918963232 0.268421495491446 0.86113631159405258 0.077987951542145771 -0.408932576528214 0.268421495491446 0.86113631159405258 0.077987951542145771 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n405-d14-spu.txt000066400000000000000000000746141277740313300267150ustar00rootroot00000000000000-0.895845867331362 0.791691734662724 -0.96816023950762609 0.002149866231230389 0.791691734662724 -0.895845867331362 -0.96816023950762609 0.002149866231230389 -0.895845867331362 -0.895845867331362 -0.96816023950762609 0.002149866231230389 -0.772586942778008 0.545173885556016 -0.96816023950762609 0.0028244174140857787 0.545173885556016 -0.772586942778008 -0.96816023950762609 0.0028244174140857787 -0.772586942778008 -0.772586942778008 -0.96816023950762609 0.0028244174140857787 -0.565662308452164 0.131324616904328 -0.96816023950762609 0.0076841810469735679 0.131324616904328 -0.565662308452164 -0.96816023950762609 0.0076841810469735679 -0.565662308452164 -0.565662308452164 -0.96816023950762609 0.0076841810469735679 -0.227854451277354 -0.544291097445292 -0.96816023950762609 0.0086154461011746128 -0.544291097445292 -0.227854451277354 -0.96816023950762609 0.0086154461011746128 -0.227854451277354 -0.227854451277354 -0.96816023950762609 0.0086154461011746128 -0.02014813417346 -0.95970373165308 -0.96816023950762609 0.00307909352621139 -0.95970373165308 -0.02014813417346 -0.96816023950762609 0.00307909352621139 -0.02014813417346 -0.02014813417346 -0.96816023950762609 0.00307909352621139 0.669376181231556 -0.703503756777164 -0.96816023950762609 0.001940472038628373 -0.965872424454392 -0.703503756777164 -0.96816023950762609 0.001940472038628373 -0.703503756777164 -0.965872424454392 -0.96816023950762609 0.001940472038628373 0.669376181231556 -0.965872424454392 -0.96816023950762609 0.001940472038628373 -0.965872424454392 0.669376181231556 -0.96816023950762609 0.001940472038628373 -0.703503756777164 0.669376181231556 -0.96816023950762609 0.001940472038628373 0.414495985308496 -0.57957674232286 -0.96816023950762609 0.004014616934359624 -0.834919242985636 -0.57957674232286 -0.96816023950762609 0.004014616934359624 -0.57957674232286 -0.834919242985636 -0.96816023950762609 0.004014616934359624 0.414495985308496 -0.834919242985636 -0.96816023950762609 0.004014616934359624 -0.834919242985636 0.414495985308496 -0.96816023950762609 0.004014616934359624 -0.57957674232286 0.414495985308496 -0.96816023950762609 0.004014616934359624 0.925803833285858 -0.92588151521622 -0.96816023950762609 0.00035645055218844636 -0.999922318069638 -0.92588151521622 -0.96816023950762609 0.00035645055218844636 -0.92588151521622 -0.999922318069638 -0.96816023950762609 0.00035645055218844636 0.925803833285858 -0.999922318069638 -0.96816023950762609 0.00035645055218844636 -0.999922318069638 0.925803833285858 -0.96816023950762609 0.00035645055218844636 -0.92588151521622 0.925803833285858 -0.96816023950762609 0.00035645055218844636 0.348012222825796 -0.38207975901364 -0.96816023950762609 0.0025093498534650444 -0.965932463812156 -0.38207975901364 -0.96816023950762609 0.0025093498534650444 -0.38207975901364 -0.965932463812156 -0.96816023950762609 0.0025093498534650444 0.348012222825796 -0.965932463812156 -0.96816023950762609 0.0025093498534650444 -0.965932463812156 0.348012222825796 -0.96816023950762609 0.0025093498534650444 -0.38207975901364 0.348012222825796 -0.96816023950762609 0.0025093498534650444 0.08389791764566 -0.279351646321358 -0.96816023950762609 0.0060940712487121679 -0.804546271324302 -0.279351646321358 -0.96816023950762609 0.0060940712487121679 -0.279351646321358 -0.804546271324302 -0.96816023950762609 0.0060940712487121679 0.08389791764566 -0.804546271324302 -0.96816023950762609 0.0060940712487121679 -0.804546271324302 0.08389791764566 -0.96816023950762609 0.0060940712487121679 -0.279351646321358 0.08389791764566 -0.96816023950762609 0.0060940712487121679 -0.895845867331362 0.791691734662724 -0.83603110732663579 0.0047784965010622131 0.791691734662724 -0.895845867331362 -0.83603110732663579 0.0047784965010622131 -0.895845867331362 -0.895845867331362 -0.83603110732663579 0.0047784965010622131 -0.772586942778008 0.545173885556016 -0.83603110732663579 0.0062778179101050019 0.545173885556016 -0.772586942778008 -0.83603110732663579 0.0062778179101050019 -0.772586942778008 -0.772586942778008 -0.83603110732663579 0.0062778179101050019 -0.565662308452164 0.131324616904328 -0.83603110732663579 0.017079589284714346 0.131324616904328 -0.565662308452164 -0.83603110732663579 0.017079589284714346 -0.565662308452164 -0.565662308452164 -0.83603110732663579 0.017079589284714346 -0.227854451277354 -0.544291097445292 -0.83603110732663579 0.019149507281665441 -0.544291097445292 -0.227854451277354 -0.83603110732663579 0.019149507281665441 -0.227854451277354 -0.227854451277354 -0.83603110732663579 0.019149507281665441 -0.02014813417346 -0.95970373165308 -0.83603110732663579 0.0068438851811834812 -0.95970373165308 -0.02014813417346 -0.83603110732663579 0.0068438851811834812 -0.02014813417346 -0.02014813417346 -0.83603110732663579 0.0068438851811834812 0.669376181231556 -0.703503756777164 -0.83603110732663579 0.0043130771172157893 -0.965872424454392 -0.703503756777164 -0.83603110732663579 0.0043130771172157893 -0.703503756777164 -0.965872424454392 -0.83603110732663579 0.0043130771172157893 0.669376181231556 -0.965872424454392 -0.83603110732663579 0.0043130771172157893 -0.965872424454392 0.669376181231556 -0.83603110732663579 0.0043130771172157893 -0.703503756777164 0.669376181231556 -0.83603110732663579 0.0043130771172157893 0.414495985308496 -0.57957674232286 -0.83603110732663579 0.0089232681993258159 -0.834919242985636 -0.57957674232286 -0.83603110732663579 0.0089232681993258159 -0.57957674232286 -0.834919242985636 -0.83603110732663579 0.0089232681993258159 0.414495985308496 -0.834919242985636 -0.83603110732663579 0.0089232681993258159 -0.834919242985636 0.414495985308496 -0.83603110732663579 0.0089232681993258159 -0.57957674232286 0.414495985308496 -0.83603110732663579 0.0089232681993258159 0.925803833285858 -0.92588151521622 -0.83603110732663579 0.00079228079016775437 -0.999922318069638 -0.92588151521622 -0.83603110732663579 0.00079228079016775437 -0.92588151521622 -0.999922318069638 -0.83603110732663579 0.00079228079016775437 0.925803833285858 -0.999922318069638 -0.83603110732663579 0.00079228079016775437 -0.999922318069638 0.925803833285858 -0.83603110732663579 0.00079228079016775437 -0.92588151521622 0.925803833285858 -0.83603110732663579 0.00079228079016775437 0.348012222825796 -0.38207975901364 -0.83603110732663579 0.005577518880261296 -0.965932463812156 -0.38207975901364 -0.83603110732663579 0.005577518880261296 -0.38207975901364 -0.965932463812156 -0.83603110732663579 0.005577518880261296 0.348012222825796 -0.965932463812156 -0.83603110732663579 0.005577518880261296 -0.965932463812156 0.348012222825796 -0.83603110732663579 0.005577518880261296 -0.38207975901364 0.348012222825796 -0.83603110732663579 0.005577518880261296 0.08389791764566 -0.279351646321358 -0.83603110732663579 0.013545260498616691 -0.804546271324302 -0.279351646321358 -0.83603110732663579 0.013545260498616691 -0.279351646321358 -0.804546271324302 -0.83603110732663579 0.013545260498616691 0.08389791764566 -0.804546271324302 -0.83603110732663579 0.013545260498616691 -0.804546271324302 0.08389791764566 -0.83603110732663579 0.013545260498616691 -0.279351646321358 0.08389791764566 -0.83603110732663579 0.013545260498616691 -0.895845867331362 0.791691734662724 -0.6133714327005904 0.006893661668686257 0.791691734662724 -0.895845867331362 -0.6133714327005904 0.006893661668686257 -0.895845867331362 -0.895845867331362 -0.6133714327005904 0.006893661668686257 -0.772586942778008 0.545173885556016 -0.6133714327005904 0.0090566463071099517 0.545173885556016 -0.772586942778008 -0.6133714327005904 0.0090566463071099517 -0.772586942778008 -0.772586942778008 -0.6133714327005904 0.0090566463071099517 -0.565662308452164 0.131324616904328 -0.6133714327005904 0.024639739705316758 0.131324616904328 -0.565662308452164 -0.6133714327005904 0.024639739705316758 -0.565662308452164 -0.565662308452164 -0.6133714327005904 0.024639739705316758 -0.227854451277354 -0.544291097445292 -0.6133714327005904 0.027625891175707846 -0.544291097445292 -0.227854451277354 -0.6133714327005904 0.027625891175707846 -0.227854451277354 -0.227854451277354 -0.6133714327005904 0.027625891175707846 -0.02014813417346 -0.95970373165308 -0.6133714327005904 0.0098732789545680188 -0.95970373165308 -0.02014813417346 -0.6133714327005904 0.0098732789545680188 -0.02014813417346 -0.02014813417346 -0.6133714327005904 0.0098732789545680188 0.669376181231556 -0.703503756777164 -0.6133714327005904 0.0062222279309881208 -0.965872424454392 -0.703503756777164 -0.6133714327005904 0.0062222279309881208 -0.703503756777164 -0.965872424454392 -0.6133714327005904 0.0062222279309881208 0.669376181231556 -0.965872424454392 -0.6133714327005904 0.0062222279309881208 -0.965872424454392 0.669376181231556 -0.6133714327005904 0.0062222279309881208 -0.703503756777164 0.669376181231556 -0.6133714327005904 0.0062222279309881208 0.414495985308496 -0.57957674232286 -0.6133714327005904 0.012873085065862339 -0.834919242985636 -0.57957674232286 -0.6133714327005904 0.012873085065862339 -0.57957674232286 -0.834919242985636 -0.6133714327005904 0.012873085065862339 0.414495985308496 -0.834919242985636 -0.6133714327005904 0.012873085065862339 -0.834919242985636 0.414495985308496 -0.6133714327005904 0.012873085065862339 -0.57957674232286 0.414495985308496 -0.6133714327005904 0.012873085065862339 0.925803833285858 -0.92588151521622 -0.6133714327005904 0.001142977861928291 -0.999922318069638 -0.92588151521622 -0.6133714327005904 0.001142977861928291 -0.92588151521622 -0.999922318069638 -0.6133714327005904 0.001142977861928291 0.925803833285858 -0.999922318069638 -0.6133714327005904 0.001142977861928291 -0.999922318069638 0.925803833285858 -0.6133714327005904 0.001142977861928291 -0.92588151521622 0.925803833285858 -0.6133714327005904 0.001142977861928291 0.348012222825796 -0.38207975901364 -0.6133714327005904 0.0080463652328058072 -0.965932463812156 -0.38207975901364 -0.6133714327005904 0.0080463652328058072 -0.38207975901364 -0.965932463812156 -0.6133714327005904 0.0080463652328058072 0.348012222825796 -0.965932463812156 -0.6133714327005904 0.0080463652328058072 -0.965932463812156 0.348012222825796 -0.6133714327005904 0.0080463652328058072 -0.38207975901364 0.348012222825796 -0.6133714327005904 0.0080463652328058072 0.08389791764566 -0.279351646321358 -0.6133714327005904 0.019540967137033021 -0.804546271324302 -0.279351646321358 -0.6133714327005904 0.019540967137033021 -0.279351646321358 -0.804546271324302 -0.6133714327005904 0.019540967137033021 0.08389791764566 -0.804546271324302 -0.6133714327005904 0.019540967137033021 -0.804546271324302 0.08389791764566 -0.6133714327005904 0.019540967137033021 -0.279351646321358 0.08389791764566 -0.6133714327005904 0.019540967137033021 -0.895845867331362 0.791691734662724 -0.32425342340380893 0.0082621899332471432 0.791691734662724 -0.895845867331362 -0.32425342340380893 0.0082621899332471432 -0.895845867331362 -0.895845867331362 -0.32425342340380893 0.0082621899332471432 -0.772586942778008 0.545173885556016 -0.32425342340380893 0.010854569827161807 0.545173885556016 -0.772586942778008 -0.32425342340380893 0.010854569827161807 -0.772586942778008 -0.772586942778008 -0.32425342340380893 0.010854569827161807 -0.565662308452164 0.131324616904328 -0.32425342340380893 0.02953121564927257 0.131324616904328 -0.565662308452164 -0.32425342340380893 0.02953121564927257 -0.565662308452164 -0.565662308452164 -0.32425342340380893 0.02953121564927257 -0.227854451277354 -0.544291097445292 -0.32425342340380893 0.03311017728150455 -0.544291097445292 -0.227854451277354 -0.32425342340380893 0.03311017728150455 -0.227854451277354 -0.227854451277354 -0.32425342340380893 0.03311017728150455 -0.02014813417346 -0.95970373165308 -0.32425342340380893 0.011833320216035305 -0.95970373165308 -0.02014813417346 -0.32425342340380893 0.011833320216035305 -0.02014813417346 -0.02014813417346 -0.32425342340380893 0.011833320216035305 0.669376181231556 -0.703503756777164 -0.32425342340380893 0.0074574633111602128 -0.965872424454392 -0.703503756777164 -0.32425342340380893 0.0074574633111602128 -0.703503756777164 -0.965872424454392 -0.32425342340380893 0.0074574633111602128 0.669376181231556 -0.965872424454392 -0.32425342340380893 0.0074574633111602128 -0.965872424454392 0.669376181231556 -0.32425342340380893 0.0074574633111602128 -0.703503756777164 0.669376181231556 -0.32425342340380893 0.0074574633111602128 0.414495985308496 -0.57957674232286 -0.32425342340380893 0.01542864720561072 -0.834919242985636 -0.57957674232286 -0.32425342340380893 0.01542864720561072 -0.57957674232286 -0.834919242985636 -0.32425342340380893 0.01542864720561072 0.414495985308496 -0.834919242985636 -0.32425342340380893 0.01542864720561072 -0.834919242985636 0.414495985308496 -0.32425342340380893 0.01542864720561072 -0.57957674232286 0.414495985308496 -0.32425342340380893 0.01542864720561072 0.925803833285858 -0.92588151521622 -0.32425342340380893 0.001369881586681921 -0.999922318069638 -0.92588151521622 -0.32425342340380893 0.001369881586681921 -0.92588151521622 -0.999922318069638 -0.32425342340380893 0.001369881586681921 0.925803833285858 -0.999922318069638 -0.32425342340380893 0.001369881586681921 -0.999922318069638 0.925803833285858 -0.32425342340380893 0.001369881586681921 -0.92588151521622 0.925803833285858 -0.32425342340380893 0.001369881586681921 0.348012222825796 -0.38207975901364 -0.32425342340380893 0.0096437279664737777 -0.965932463812156 -0.38207975901364 -0.32425342340380893 0.0096437279664737777 -0.38207975901364 -0.965932463812156 -0.32425342340380893 0.0096437279664737777 0.348012222825796 -0.965932463812156 -0.32425342340380893 0.0096437279664737777 -0.965932463812156 0.348012222825796 -0.32425342340380893 0.0096437279664737777 -0.38207975901364 0.348012222825796 -0.32425342340380893 0.0096437279664737777 0.08389791764566 -0.279351646321358 -0.32425342340380893 0.023420235823130502 -0.804546271324302 -0.279351646321358 -0.32425342340380893 0.023420235823130502 -0.279351646321358 -0.804546271324302 -0.32425342340380893 0.023420235823130502 0.08389791764566 -0.804546271324302 -0.32425342340380893 0.023420235823130502 -0.804546271324302 0.08389791764566 -0.32425342340380893 0.023420235823130502 -0.279351646321358 0.08389791764566 -0.32425342340380893 0.023420235823130502 -0.895845867331362 0.791691734662724 0.0 0.0087354756135719951 0.791691734662724 -0.895845867331362 0.0 0.0087354756135719951 -0.895845867331362 -0.895845867331362 0.0 0.0087354756135719951 -0.772586942778008 0.545173885556016 0.0 0.011476355637798922 0.545173885556016 -0.772586942778008 0.0 0.011476355637798922 -0.772586942778008 -0.772586942778008 0.0 0.011476355637798922 -0.565662308452164 0.131324616904328 0.0 0.031222861762749516 0.131324616904328 -0.565662308452164 0.0 0.031222861762749516 -0.565662308452164 -0.565662308452164 0.0 0.031222861762749516 -0.227854451277354 -0.544291097445292 0.0 0.035006838203967102 -0.544291097445292 -0.227854451277354 0.0 0.035006838203967102 -0.227854451277354 -0.227854451277354 0.0 0.035006838203967102 -0.02014813417346 -0.95970373165308 0.0 0.012511172099639609 -0.95970373165308 -0.02014813417346 0.0 0.012511172099639609 -0.02014813417346 -0.02014813417346 0.0 0.012511172099639609 0.669376181231556 -0.703503756777164 0.0 0.0078846515778590083 -0.965872424454392 -0.703503756777164 0.0 0.0078846515778590083 -0.703503756777164 -0.965872424454392 0.0 0.0078846515778590083 0.669376181231556 -0.965872424454392 0.0 0.0078846515778590083 -0.965872424454392 0.669376181231556 0.0 0.0078846515778590083 -0.703503756777164 0.669376181231556 0.0 0.0078846515778590083 0.414495985308496 -0.57957674232286 0.0 0.016312451360223002 -0.834919242985636 -0.57957674232286 0.0 0.016312451360223002 -0.57957674232286 -0.834919242985636 0.0 0.016312451360223002 0.414495985308496 -0.834919242985636 0.0 0.016312451360223002 -0.834919242985636 0.414495985308496 0.0 0.016312451360223002 -0.57957674232286 0.414495985308496 0.0 0.016312451360223002 0.925803833285858 -0.92588151521622 0.0 0.0014483529537111746 -0.999922318069638 -0.92588151521622 0.0 0.0014483529537111746 -0.92588151521622 -0.999922318069638 0.0 0.0014483529537111746 0.925803833285858 -0.999922318069638 0.0 0.0014483529537111746 -0.999922318069638 0.925803833285858 0.0 0.0014483529537111746 -0.92588151521622 0.925803833285858 0.0 0.0014483529537111746 0.348012222825796 -0.38207975901364 0.0 0.010196152733800149 -0.965932463812156 -0.38207975901364 0.0 0.010196152733800149 -0.38207975901364 -0.965932463812156 0.0 0.010196152733800149 0.348012222825796 -0.965932463812156 0.0 0.010196152733800149 -0.965932463812156 0.348012222825796 0.0 0.010196152733800149 -0.38207975901364 0.348012222825796 0.0 0.010196152733800149 0.08389791764566 -0.279351646321358 0.0 0.024761824715963235 -0.804546271324302 -0.279351646321358 0.0 0.024761824715963235 -0.279351646321358 -0.804546271324302 0.0 0.024761824715963235 0.08389791764566 -0.804546271324302 0.0 0.024761824715963235 -0.804546271324302 0.08389791764566 0.0 0.024761824715963235 -0.279351646321358 0.08389791764566 0.0 0.024761824715963235 -0.895845867331362 0.791691734662724 0.32425342340380893 0.0082621899332471432 0.791691734662724 -0.895845867331362 0.32425342340380893 0.0082621899332471432 -0.895845867331362 -0.895845867331362 0.32425342340380893 0.0082621899332471432 -0.772586942778008 0.545173885556016 0.32425342340380893 0.010854569827161807 0.545173885556016 -0.772586942778008 0.32425342340380893 0.010854569827161807 -0.772586942778008 -0.772586942778008 0.32425342340380893 0.010854569827161807 -0.565662308452164 0.131324616904328 0.32425342340380893 0.02953121564927257 0.131324616904328 -0.565662308452164 0.32425342340380893 0.02953121564927257 -0.565662308452164 -0.565662308452164 0.32425342340380893 0.02953121564927257 -0.227854451277354 -0.544291097445292 0.32425342340380893 0.03311017728150455 -0.544291097445292 -0.227854451277354 0.32425342340380893 0.03311017728150455 -0.227854451277354 -0.227854451277354 0.32425342340380893 0.03311017728150455 -0.02014813417346 -0.95970373165308 0.32425342340380893 0.011833320216035305 -0.95970373165308 -0.02014813417346 0.32425342340380893 0.011833320216035305 -0.02014813417346 -0.02014813417346 0.32425342340380893 0.011833320216035305 0.669376181231556 -0.703503756777164 0.32425342340380893 0.0074574633111602128 -0.965872424454392 -0.703503756777164 0.32425342340380893 0.0074574633111602128 -0.703503756777164 -0.965872424454392 0.32425342340380893 0.0074574633111602128 0.669376181231556 -0.965872424454392 0.32425342340380893 0.0074574633111602128 -0.965872424454392 0.669376181231556 0.32425342340380893 0.0074574633111602128 -0.703503756777164 0.669376181231556 0.32425342340380893 0.0074574633111602128 0.414495985308496 -0.57957674232286 0.32425342340380893 0.01542864720561072 -0.834919242985636 -0.57957674232286 0.32425342340380893 0.01542864720561072 -0.57957674232286 -0.834919242985636 0.32425342340380893 0.01542864720561072 0.414495985308496 -0.834919242985636 0.32425342340380893 0.01542864720561072 -0.834919242985636 0.414495985308496 0.32425342340380893 0.01542864720561072 -0.57957674232286 0.414495985308496 0.32425342340380893 0.01542864720561072 0.925803833285858 -0.92588151521622 0.32425342340380893 0.001369881586681921 -0.999922318069638 -0.92588151521622 0.32425342340380893 0.001369881586681921 -0.92588151521622 -0.999922318069638 0.32425342340380893 0.001369881586681921 0.925803833285858 -0.999922318069638 0.32425342340380893 0.001369881586681921 -0.999922318069638 0.925803833285858 0.32425342340380893 0.001369881586681921 -0.92588151521622 0.925803833285858 0.32425342340380893 0.001369881586681921 0.348012222825796 -0.38207975901364 0.32425342340380893 0.0096437279664737777 -0.965932463812156 -0.38207975901364 0.32425342340380893 0.0096437279664737777 -0.38207975901364 -0.965932463812156 0.32425342340380893 0.0096437279664737777 0.348012222825796 -0.965932463812156 0.32425342340380893 0.0096437279664737777 -0.965932463812156 0.348012222825796 0.32425342340380893 0.0096437279664737777 -0.38207975901364 0.348012222825796 0.32425342340380893 0.0096437279664737777 0.08389791764566 -0.279351646321358 0.32425342340380893 0.023420235823130502 -0.804546271324302 -0.279351646321358 0.32425342340380893 0.023420235823130502 -0.279351646321358 -0.804546271324302 0.32425342340380893 0.023420235823130502 0.08389791764566 -0.804546271324302 0.32425342340380893 0.023420235823130502 -0.804546271324302 0.08389791764566 0.32425342340380893 0.023420235823130502 -0.279351646321358 0.08389791764566 0.32425342340380893 0.023420235823130502 -0.895845867331362 0.791691734662724 0.6133714327005904 0.006893661668686257 0.791691734662724 -0.895845867331362 0.6133714327005904 0.006893661668686257 -0.895845867331362 -0.895845867331362 0.6133714327005904 0.006893661668686257 -0.772586942778008 0.545173885556016 0.6133714327005904 0.0090566463071099517 0.545173885556016 -0.772586942778008 0.6133714327005904 0.0090566463071099517 -0.772586942778008 -0.772586942778008 0.6133714327005904 0.0090566463071099517 -0.565662308452164 0.131324616904328 0.6133714327005904 0.024639739705316758 0.131324616904328 -0.565662308452164 0.6133714327005904 0.024639739705316758 -0.565662308452164 -0.565662308452164 0.6133714327005904 0.024639739705316758 -0.227854451277354 -0.544291097445292 0.6133714327005904 0.027625891175707846 -0.544291097445292 -0.227854451277354 0.6133714327005904 0.027625891175707846 -0.227854451277354 -0.227854451277354 0.6133714327005904 0.027625891175707846 -0.02014813417346 -0.95970373165308 0.6133714327005904 0.0098732789545680188 -0.95970373165308 -0.02014813417346 0.6133714327005904 0.0098732789545680188 -0.02014813417346 -0.02014813417346 0.6133714327005904 0.0098732789545680188 0.669376181231556 -0.703503756777164 0.6133714327005904 0.0062222279309881208 -0.965872424454392 -0.703503756777164 0.6133714327005904 0.0062222279309881208 -0.703503756777164 -0.965872424454392 0.6133714327005904 0.0062222279309881208 0.669376181231556 -0.965872424454392 0.6133714327005904 0.0062222279309881208 -0.965872424454392 0.669376181231556 0.6133714327005904 0.0062222279309881208 -0.703503756777164 0.669376181231556 0.6133714327005904 0.0062222279309881208 0.414495985308496 -0.57957674232286 0.6133714327005904 0.012873085065862339 -0.834919242985636 -0.57957674232286 0.6133714327005904 0.012873085065862339 -0.57957674232286 -0.834919242985636 0.6133714327005904 0.012873085065862339 0.414495985308496 -0.834919242985636 0.6133714327005904 0.012873085065862339 -0.834919242985636 0.414495985308496 0.6133714327005904 0.012873085065862339 -0.57957674232286 0.414495985308496 0.6133714327005904 0.012873085065862339 0.925803833285858 -0.92588151521622 0.6133714327005904 0.001142977861928291 -0.999922318069638 -0.92588151521622 0.6133714327005904 0.001142977861928291 -0.92588151521622 -0.999922318069638 0.6133714327005904 0.001142977861928291 0.925803833285858 -0.999922318069638 0.6133714327005904 0.001142977861928291 -0.999922318069638 0.925803833285858 0.6133714327005904 0.001142977861928291 -0.92588151521622 0.925803833285858 0.6133714327005904 0.001142977861928291 0.348012222825796 -0.38207975901364 0.6133714327005904 0.0080463652328058072 -0.965932463812156 -0.38207975901364 0.6133714327005904 0.0080463652328058072 -0.38207975901364 -0.965932463812156 0.6133714327005904 0.0080463652328058072 0.348012222825796 -0.965932463812156 0.6133714327005904 0.0080463652328058072 -0.965932463812156 0.348012222825796 0.6133714327005904 0.0080463652328058072 -0.38207975901364 0.348012222825796 0.6133714327005904 0.0080463652328058072 0.08389791764566 -0.279351646321358 0.6133714327005904 0.019540967137033021 -0.804546271324302 -0.279351646321358 0.6133714327005904 0.019540967137033021 -0.279351646321358 -0.804546271324302 0.6133714327005904 0.019540967137033021 0.08389791764566 -0.804546271324302 0.6133714327005904 0.019540967137033021 -0.804546271324302 0.08389791764566 0.6133714327005904 0.019540967137033021 -0.279351646321358 0.08389791764566 0.6133714327005904 0.019540967137033021 -0.895845867331362 0.791691734662724 0.83603110732663579 0.0047784965010622131 0.791691734662724 -0.895845867331362 0.83603110732663579 0.0047784965010622131 -0.895845867331362 -0.895845867331362 0.83603110732663579 0.0047784965010622131 -0.772586942778008 0.545173885556016 0.83603110732663579 0.0062778179101050019 0.545173885556016 -0.772586942778008 0.83603110732663579 0.0062778179101050019 -0.772586942778008 -0.772586942778008 0.83603110732663579 0.0062778179101050019 -0.565662308452164 0.131324616904328 0.83603110732663579 0.017079589284714346 0.131324616904328 -0.565662308452164 0.83603110732663579 0.017079589284714346 -0.565662308452164 -0.565662308452164 0.83603110732663579 0.017079589284714346 -0.227854451277354 -0.544291097445292 0.83603110732663579 0.019149507281665441 -0.544291097445292 -0.227854451277354 0.83603110732663579 0.019149507281665441 -0.227854451277354 -0.227854451277354 0.83603110732663579 0.019149507281665441 -0.02014813417346 -0.95970373165308 0.83603110732663579 0.0068438851811834812 -0.95970373165308 -0.02014813417346 0.83603110732663579 0.0068438851811834812 -0.02014813417346 -0.02014813417346 0.83603110732663579 0.0068438851811834812 0.669376181231556 -0.703503756777164 0.83603110732663579 0.0043130771172157893 -0.965872424454392 -0.703503756777164 0.83603110732663579 0.0043130771172157893 -0.703503756777164 -0.965872424454392 0.83603110732663579 0.0043130771172157893 0.669376181231556 -0.965872424454392 0.83603110732663579 0.0043130771172157893 -0.965872424454392 0.669376181231556 0.83603110732663579 0.0043130771172157893 -0.703503756777164 0.669376181231556 0.83603110732663579 0.0043130771172157893 0.414495985308496 -0.57957674232286 0.83603110732663579 0.0089232681993258159 -0.834919242985636 -0.57957674232286 0.83603110732663579 0.0089232681993258159 -0.57957674232286 -0.834919242985636 0.83603110732663579 0.0089232681993258159 0.414495985308496 -0.834919242985636 0.83603110732663579 0.0089232681993258159 -0.834919242985636 0.414495985308496 0.83603110732663579 0.0089232681993258159 -0.57957674232286 0.414495985308496 0.83603110732663579 0.0089232681993258159 0.925803833285858 -0.92588151521622 0.83603110732663579 0.00079228079016775437 -0.999922318069638 -0.92588151521622 0.83603110732663579 0.00079228079016775437 -0.92588151521622 -0.999922318069638 0.83603110732663579 0.00079228079016775437 0.925803833285858 -0.999922318069638 0.83603110732663579 0.00079228079016775437 -0.999922318069638 0.925803833285858 0.83603110732663579 0.00079228079016775437 -0.92588151521622 0.925803833285858 0.83603110732663579 0.00079228079016775437 0.348012222825796 -0.38207975901364 0.83603110732663579 0.005577518880261296 -0.965932463812156 -0.38207975901364 0.83603110732663579 0.005577518880261296 -0.38207975901364 -0.965932463812156 0.83603110732663579 0.005577518880261296 0.348012222825796 -0.965932463812156 0.83603110732663579 0.005577518880261296 -0.965932463812156 0.348012222825796 0.83603110732663579 0.005577518880261296 -0.38207975901364 0.348012222825796 0.83603110732663579 0.005577518880261296 0.08389791764566 -0.279351646321358 0.83603110732663579 0.013545260498616691 -0.804546271324302 -0.279351646321358 0.83603110732663579 0.013545260498616691 -0.279351646321358 -0.804546271324302 0.83603110732663579 0.013545260498616691 0.08389791764566 -0.804546271324302 0.83603110732663579 0.013545260498616691 -0.804546271324302 0.08389791764566 0.83603110732663579 0.013545260498616691 -0.279351646321358 0.08389791764566 0.83603110732663579 0.013545260498616691 -0.895845867331362 0.791691734662724 0.96816023950762609 0.002149866231230389 0.791691734662724 -0.895845867331362 0.96816023950762609 0.002149866231230389 -0.895845867331362 -0.895845867331362 0.96816023950762609 0.002149866231230389 -0.772586942778008 0.545173885556016 0.96816023950762609 0.0028244174140857787 0.545173885556016 -0.772586942778008 0.96816023950762609 0.0028244174140857787 -0.772586942778008 -0.772586942778008 0.96816023950762609 0.0028244174140857787 -0.565662308452164 0.131324616904328 0.96816023950762609 0.0076841810469735679 0.131324616904328 -0.565662308452164 0.96816023950762609 0.0076841810469735679 -0.565662308452164 -0.565662308452164 0.96816023950762609 0.0076841810469735679 -0.227854451277354 -0.544291097445292 0.96816023950762609 0.0086154461011746128 -0.544291097445292 -0.227854451277354 0.96816023950762609 0.0086154461011746128 -0.227854451277354 -0.227854451277354 0.96816023950762609 0.0086154461011746128 -0.02014813417346 -0.95970373165308 0.96816023950762609 0.00307909352621139 -0.95970373165308 -0.02014813417346 0.96816023950762609 0.00307909352621139 -0.02014813417346 -0.02014813417346 0.96816023950762609 0.00307909352621139 0.669376181231556 -0.703503756777164 0.96816023950762609 0.001940472038628373 -0.965872424454392 -0.703503756777164 0.96816023950762609 0.001940472038628373 -0.703503756777164 -0.965872424454392 0.96816023950762609 0.001940472038628373 0.669376181231556 -0.965872424454392 0.96816023950762609 0.001940472038628373 -0.965872424454392 0.669376181231556 0.96816023950762609 0.001940472038628373 -0.703503756777164 0.669376181231556 0.96816023950762609 0.001940472038628373 0.414495985308496 -0.57957674232286 0.96816023950762609 0.004014616934359624 -0.834919242985636 -0.57957674232286 0.96816023950762609 0.004014616934359624 -0.57957674232286 -0.834919242985636 0.96816023950762609 0.004014616934359624 0.414495985308496 -0.834919242985636 0.96816023950762609 0.004014616934359624 -0.834919242985636 0.414495985308496 0.96816023950762609 0.004014616934359624 -0.57957674232286 0.414495985308496 0.96816023950762609 0.004014616934359624 0.925803833285858 -0.92588151521622 0.96816023950762609 0.00035645055218844636 -0.999922318069638 -0.92588151521622 0.96816023950762609 0.00035645055218844636 -0.92588151521622 -0.999922318069638 0.96816023950762609 0.00035645055218844636 0.925803833285858 -0.999922318069638 0.96816023950762609 0.00035645055218844636 -0.999922318069638 0.925803833285858 0.96816023950762609 0.00035645055218844636 -0.92588151521622 0.925803833285858 0.96816023950762609 0.00035645055218844636 0.348012222825796 -0.38207975901364 0.96816023950762609 0.0025093498534650444 -0.965932463812156 -0.38207975901364 0.96816023950762609 0.0025093498534650444 -0.38207975901364 -0.965932463812156 0.96816023950762609 0.0025093498534650444 0.348012222825796 -0.965932463812156 0.96816023950762609 0.0025093498534650444 -0.965932463812156 0.348012222825796 0.96816023950762609 0.0025093498534650444 -0.38207975901364 0.348012222825796 0.96816023950762609 0.0025093498534650444 0.08389791764566 -0.279351646321358 0.96816023950762609 0.0060940712487121679 -0.804546271324302 -0.279351646321358 0.96816023950762609 0.0060940712487121679 -0.279351646321358 -0.804546271324302 0.96816023950762609 0.0060940712487121679 0.08389791764566 -0.804546271324302 0.96816023950762609 0.0060940712487121679 -0.804546271324302 0.08389791764566 0.96816023950762609 0.0060940712487121679 -0.279351646321358 0.08389791764566 0.96816023950762609 0.0060940712487121679 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n6-d2-spu.txt000066400000000000000000000007071277740313300264570ustar00rootroot00000000000000-0.666666666666666 0.333333333333332 -0.57735026918962576 0.666666666666666 0.333333333333332 -0.666666666666666 -0.57735026918962576 0.666666666666666 -0.666666666666666 -0.666666666666666 -0.57735026918962576 0.666666666666666 -0.666666666666666 0.333333333333332 0.57735026918962576 0.666666666666666 0.333333333333332 -0.666666666666666 0.57735026918962576 0.666666666666666 -0.666666666666666 -0.666666666666666 0.57735026918962576 0.666666666666666 pyfr-1.5.0/pyfr/quadrules/pri/williams-shunn~gauss-legendre-n75-d7-spu.txt000066400000000000000000000130001277740313300265400ustar00rootroot00000000000000-0.928258244608532 0.856516489217064 -0.90617984593866399 0.0084893059008584791 0.856516489217064 -0.928258244608532 -0.90617984593866399 0.0084893059008584791 -0.928258244608532 -0.928258244608532 -0.90617984593866399 0.0084893059008584791 -0.516541208464066 0.033082416928132 -0.90617984593866399 0.060516905507667956 0.033082416928132 -0.516541208464066 -0.90617984593866399 0.060516905507667956 -0.516541208464066 -0.516541208464066 -0.90617984593866399 0.060516905507667956 -0.051382424445842 -0.897235151108316 -0.90617984593866399 0.036110529966804851 -0.897235151108316 -0.051382424445842 -0.90617984593866399 0.036110529966804851 -0.051382424445842 -0.051382424445842 -0.90617984593866399 0.036110529966804851 0.502367262212968 -0.5969922362364 -0.90617984593866399 0.026417257664397307 -0.905375025976568 -0.5969922362364 -0.90617984593866399 0.026417257664397307 -0.5969922362364 -0.905375025976568 -0.90617984593866399 0.026417257664397307 0.502367262212968 -0.905375025976568 -0.90617984593866399 0.026417257664397307 -0.905375025976568 0.502367262212968 -0.90617984593866399 0.026417257664397307 -0.5969922362364 0.502367262212968 -0.90617984593866399 0.026417257664397307 -0.928258244608532 0.856516489217064 -0.53846931010568309 0.017149700827859592 0.856516489217064 -0.928258244608532 -0.53846931010568309 0.017149700827859592 -0.928258244608532 -0.928258244608532 -0.53846931010568309 0.017149700827859592 -0.516541208464066 0.033082416928132 -0.53846931010568309 0.12225343704240907 0.033082416928132 -0.516541208464066 -0.53846931010568309 0.12225343704240907 -0.516541208464066 -0.516541208464066 -0.53846931010568309 0.12225343704240907 -0.051382424445842 -0.897235151108316 -0.53846931010568309 0.072948812647160793 -0.897235151108316 -0.051382424445842 -0.53846931010568309 0.072948812647160793 -0.051382424445842 -0.051382424445842 -0.53846931010568309 0.072948812647160793 0.502367262212968 -0.5969922362364 -0.53846931010568309 0.053366914907740604 -0.905375025976568 -0.5969922362364 -0.53846931010568309 0.053366914907740604 -0.5969922362364 -0.905375025976568 -0.53846931010568309 0.053366914907740604 0.502367262212968 -0.905375025976568 -0.53846931010568309 0.053366914907740604 -0.905375025976568 0.502367262212968 -0.53846931010568309 0.053366914907740604 -0.5969922362364 0.502367262212968 -0.53846931010568309 0.053366914907740604 -0.928258244608532 0.856516489217064 0.0 0.020383806591775858 0.856516489217064 -0.928258244608532 0.0 0.020383806591775858 -0.928258244608532 -0.928258244608532 0.0 0.020383806591775858 -0.516541208464066 0.033082416928132 0.0 0.14530809842490596 0.033082416928132 -0.516541208464066 0.0 0.14530809842490596 -0.516541208464066 -0.516541208464066 0.0 0.14530809842490596 -0.051382424445842 -0.897235151108316 0.0 0.086705564314208711 -0.897235151108316 -0.051382424445842 0.0 0.086705564314208711 -0.051382424445842 -0.051382424445842 0.0 0.086705564314208711 0.502367262212968 -0.5969922362364 0.0 0.063430894964184178 -0.905375025976568 -0.5969922362364 0.0 0.063430894964184178 -0.5969922362364 -0.905375025976568 0.0 0.063430894964184178 0.502367262212968 -0.905375025976568 0.0 0.063430894964184178 -0.905375025976568 0.502367262212968 0.0 0.063430894964184178 -0.5969922362364 0.502367262212968 0.0 0.063430894964184178 -0.928258244608532 0.856516489217064 0.53846931010568309 0.017149700827859592 0.856516489217064 -0.928258244608532 0.53846931010568309 0.017149700827859592 -0.928258244608532 -0.928258244608532 0.53846931010568309 0.017149700827859592 -0.516541208464066 0.033082416928132 0.53846931010568309 0.12225343704240907 0.033082416928132 -0.516541208464066 0.53846931010568309 0.12225343704240907 -0.516541208464066 -0.516541208464066 0.53846931010568309 0.12225343704240907 -0.051382424445842 -0.897235151108316 0.53846931010568309 0.072948812647160793 -0.897235151108316 -0.051382424445842 0.53846931010568309 0.072948812647160793 -0.051382424445842 -0.051382424445842 0.53846931010568309 0.072948812647160793 0.502367262212968 -0.5969922362364 0.53846931010568309 0.053366914907740604 -0.905375025976568 -0.5969922362364 0.53846931010568309 0.053366914907740604 -0.5969922362364 -0.905375025976568 0.53846931010568309 0.053366914907740604 0.502367262212968 -0.905375025976568 0.53846931010568309 0.053366914907740604 -0.905375025976568 0.502367262212968 0.53846931010568309 0.053366914907740604 -0.5969922362364 0.502367262212968 0.53846931010568309 0.053366914907740604 -0.928258244608532 0.856516489217064 0.90617984593866399 0.0084893059008584791 0.856516489217064 -0.928258244608532 0.90617984593866399 0.0084893059008584791 -0.928258244608532 -0.928258244608532 0.90617984593866399 0.0084893059008584791 -0.516541208464066 0.033082416928132 0.90617984593866399 0.060516905507667956 0.033082416928132 -0.516541208464066 0.90617984593866399 0.060516905507667956 -0.516541208464066 -0.516541208464066 0.90617984593866399 0.060516905507667956 -0.051382424445842 -0.897235151108316 0.90617984593866399 0.036110529966804851 -0.897235151108316 -0.051382424445842 0.90617984593866399 0.036110529966804851 -0.051382424445842 -0.051382424445842 0.90617984593866399 0.036110529966804851 0.502367262212968 -0.5969922362364 0.90617984593866399 0.026417257664397307 -0.905375025976568 -0.5969922362364 0.90617984593866399 0.026417257664397307 -0.5969922362364 -0.905375025976568 0.90617984593866399 0.026417257664397307 0.502367262212968 -0.905375025976568 0.90617984593866399 0.026417257664397307 -0.905375025976568 0.502367262212968 0.90617984593866399 0.026417257664397307 -0.5969922362364 0.502367262212968 0.90617984593866399 0.026417257664397307 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n1-d1-sp.txt000066400000000000000000000002531277740313300237170ustar00rootroot00000000000000-0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0 4 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n11-d4-sp.txt000066400000000000000000000036051277740313300240070ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.86686197400903479841583223937151297546 0.43164789926214201915560571539043719684 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.86686197400903479841583223937151297546 0.43164789926214201915560571539043719684 -0.062688380276009575455822705856210492672 -0.87462323944798084908835458828757901466 0 0.54565845042191057226153838655080393041 -0.87462323944798084908835458828757901466 -0.062688380276009575455822705856210492672 0 0.54565845042191057226153838655080393041 -0.062688380276009575455822705856210492672 -0.062688380276009575455822705856210492672 0 0.54565845042191057226153838655080393041 -0.79851918840217872745314255427215462609 0.59703837680435745490628510854430925218 -0.67563982368225971739661759355428029031 0.24995480836833070748402890159445230251 0.59703837680435745490628510854430925218 -0.79851918840217872745314255427215462609 -0.67563982368225971739661759355428029031 0.24995480836833070748402890159445230251 -0.79851918840217872745314255427215462609 -0.79851918840217872745314255427215462609 -0.67563982368225971739661759355428029031 0.24995480836833070748402890159445230251 -0.79851918840217872745314255427215462609 0.59703837680435745490628510854430925218 0.67563982368225971739661759355428029031 0.24995480836833070748402890159445230251 0.59703837680435745490628510854430925218 -0.79851918840217872745314255427215462609 0.67563982368225971739661759355428029031 0.24995480836833070748402890159445230251 -0.79851918840217872745314255427215462609 -0.79851918840217872745314255427215462609 0.67563982368225971739661759355428029031 0.24995480836833070748402890159445230251 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n16-d5-sp.txt000066400000000000000000000053601277740313300240150ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0 0.71145555593148684996197343022099556338 -0.025400070899508667767082370124706051859 -0.94919985820098266446583525975058789628 0 0.22471006722826685202639587426081419504 -0.94919985820098266446583525975058789628 -0.025400070899508667767082370124706051859 0 0.22471006722826685202639587426081419504 -0.025400070899508667767082370124706051859 -0.025400070899508667767082370124706051859 0 0.22471006722826685202639587426081419504 -0.10880379065925599247444934872713650457 -0.78239241868148801505110130254572699087 -0.8710029348654440527292590830738210619 0.18566142131615813987257487985503458339 -0.78239241868148801505110130254572699087 -0.10880379065925599247444934872713650457 -0.8710029348654440527292590830738210619 0.18566142131615813987257487985503458339 -0.10880379065925599247444934872713650457 -0.10880379065925599247444934872713650457 -0.8710029348654440527292590830738210619 0.18566142131615813987257487985503458339 -0.10880379065925599247444934872713650457 -0.78239241868148801505110130254572699087 0.8710029348654440527292590830738210619 0.18566142131615813987257487985503458339 -0.78239241868148801505110130254572699087 -0.10880379065925599247444934872713650457 0.8710029348654440527292590830738210619 0.18566142131615813987257487985503458339 -0.10880379065925599247444934872713650457 -0.10880379065925599247444934872713650457 0.8710029348654440527292590830738210619 0.18566142131615813987257487985503458339 -0.79828210803458293816870337538129563058 0.59656421606916587633740675076259126116 -0.57042698070515927206196786842334325646 0.25007428574779395912056494464439239186 0.59656421606916587633740675076259126116 -0.79828210803458293816870337538129563058 -0.57042698070515927206196786842334325646 0.25007428574779395912056494464439239186 -0.79828210803458293816870337538129563058 -0.79828210803458293816870337538129563058 -0.57042698070515927206196786842334325646 0.25007428574779395912056494464439239186 -0.79828210803458293816870337538129563058 0.59656421606916587633740675076259126116 0.57042698070515927206196786842334325646 0.25007428574779395912056494464439239186 0.59656421606916587633740675076259126116 -0.79828210803458293816870337538129563058 0.57042698070515927206196786842334325646 0.25007428574779395912056494464439239186 -0.79828210803458293816870337538129563058 -0.79828210803458293816870337538129563058 0.57042698070515927206196786842334325646 0.25007428574779395912056494464439239186 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n28-d6-sp.txt000066400000000000000000000114441277740313300240210ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.52662270480497475869798007748379244322 0.22269313409222502250038629788629976598 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.52662270480497475869798007748379244322 0.22269313409222502250038629788629976598 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.99083630081924474869286718300205167763 0.13839610937412451172575590081432159364 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.99083630081924474869286718300205167763 0.13839610937412451172575590081432159364 -0.66959346994381506531292392577889361708 0.33918693988763013062584785155778723416 0 0.31182801481333532900066338577135735737 0.33918693988763013062584785155778723416 -0.66959346994381506531292392577889361708 0 0.31182801481333532900066338577135735737 -0.66959346994381506531292392577889361708 -0.66959346994381506531292392577889361708 0 0.31182801481333532900066338577135735737 -0.95905346077548616195214584157965381704 0.91810692155097232390429168315930763408 0 0.050146535238696554002545078611329875622 0.91810692155097232390429168315930763408 -0.95905346077548616195214584157965381704 0 0.050146535238696554002545078611329875622 -0.95905346077548616195214584157965381704 -0.95905346077548616195214584157965381704 0 0.050146535238696554002545078611329875622 -0.067776668819680981202280000599855057023 -0.86444666236063803759543999880028988595 -0.48167413488438751267079566597126764678 0.19605056020608216687021916179149498019 -0.86444666236063803759543999880028988595 -0.067776668819680981202280000599855057023 -0.48167413488438751267079566597126764678 0.19605056020608216687021916179149498019 -0.067776668819680981202280000599855057023 -0.067776668819680981202280000599855057023 -0.48167413488438751267079566597126764678 0.19605056020608216687021916179149498019 -0.067776668819680981202280000599855057023 -0.86444666236063803759543999880028988595 0.48167413488438751267079566597126764678 0.19605056020608216687021916179149498019 -0.86444666236063803759543999880028988595 -0.067776668819680981202280000599855057023 0.48167413488438751267079566597126764678 0.19605056020608216687021916179149498019 -0.067776668819680981202280000599855057023 -0.067776668819680981202280000599855057023 0.48167413488438751267079566597126764678 0.19605056020608216687021916179149498019 -0.59485220654953844609181984939099585377 0.52549348166744454603903998678937679713 -0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 0.52549348166744454603903998678937679713 -0.59485220654953844609181984939099585377 -0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.93064127511790609994722013739838094335 0.52549348166744454603903998678937679713 -0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 0.52549348166744454603903998678937679713 -0.93064127511790609994722013739838094335 -0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.93064127511790609994722013739838094335 -0.59485220654953844609181984939099585377 -0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.59485220654953844609181984939099585377 -0.93064127511790609994722013739838094335 -0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.59485220654953844609181984939099585377 0.52549348166744454603903998678937679713 0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 0.52549348166744454603903998678937679713 -0.59485220654953844609181984939099585377 0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.93064127511790609994722013739838094335 0.52549348166744454603903998678937679713 0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 0.52549348166744454603903998678937679713 -0.93064127511790609994722013739838094335 0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.93064127511790609994722013739838094335 -0.59485220654953844609181984939099585377 0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 -0.59485220654953844609181984939099585377 -0.93064127511790609994722013739838094335 0.80928579325583275231645432806703865787 0.084632875139559356776397936558477141722 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n35-d7-sp.txt000066400000000000000000000137551277740313300240270ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.98022806959089160171504882914128008603 0.11378272445075715563392222208600913026 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.98022806959089160171504882914128008603 0.11378272445075715563392222208600913026 -0.98332480906795705560590831565479581293 0.96664961813591411121181663130959162585 0 0.024472968692380158977782543188506640362 0.96664961813591411121181663130959162585 -0.98332480906795705560590831565479581293 0 0.024472968692380158977782543188506640362 -0.98332480906795705560590831565479581293 -0.98332480906795705560590831565479581293 0 0.024472968692380158977782543188506640362 -0.036956049341726798726440754485546402356 -0.92608790131654640254711849102890719529 -0.84138735420652599295096060100359489758 0.086203456344905850875965416526967283444 -0.92608790131654640254711849102890719529 -0.036956049341726798726440754485546402356 -0.84138735420652599295096060100359489758 0.086203456344905850875965416526967283444 -0.036956049341726798726440754485546402356 -0.036956049341726798726440754485546402356 -0.84138735420652599295096060100359489758 0.086203456344905850875965416526967283444 -0.036956049341726798726440754485546402356 -0.92608790131654640254711849102890719529 0.84138735420652599295096060100359489758 0.086203456344905850875965416526967283444 -0.92608790131654640254711849102890719529 -0.036956049341726798726440754485546402356 0.84138735420652599295096060100359489758 0.086203456344905850875965416526967283444 -0.036956049341726798726440754485546402356 -0.036956049341726798726440754485546402356 0.84138735420652599295096060100359489758 0.086203456344905850875965416526967283444 -0.80903350325702126768802840491559333013 0.61806700651404253537605680983118666027 -0.79584909058698306626909009833843112408 0.11671409960839383433248991439345238969 0.61806700651404253537605680983118666027 -0.80903350325702126768802840491559333013 -0.79584909058698306626909009833843112408 0.11671409960839383433248991439345238969 -0.80903350325702126768802840491559333013 -0.80903350325702126768802840491559333013 -0.79584909058698306626909009833843112408 0.11671409960839383433248991439345238969 -0.80903350325702126768802840491559333013 0.61806700651404253537605680983118666027 0.79584909058698306626909009833843112408 0.11671409960839383433248991439345238969 0.61806700651404253537605680983118666027 -0.80903350325702126768802840491559333013 0.79584909058698306626909009833843112408 0.11671409960839383433248991439345238969 -0.80903350325702126768802840491559333013 -0.80903350325702126768802840491559333013 0.79584909058698306626909009833843112408 0.11671409960839383433248991439345238969 -0.97570173680324342035479366133901540544 0.48599336414579127066992364784746385989 0 0.10205942534059700976786329599159184945 0.48599336414579127066992364784746385989 -0.97570173680324342035479366133901540544 0 0.10205942534059700976786329599159184945 -0.51029162734254785031512998650844845445 0.48599336414579127066992364784746385989 0 0.10205942534059700976786329599159184945 0.48599336414579127066992364784746385989 -0.51029162734254785031512998650844845445 0 0.10205942534059700976786329599159184945 -0.51029162734254785031512998650844845445 -0.97570173680324342035479366133901540544 0 0.10205942534059700976786329599159184945 -0.97570173680324342035479366133901540544 -0.51029162734254785031512998650844845445 0 0.10205942534059700976786329599159184945 -0.38968756713554786569859973469754143293 -0.69403080315040476305982696739689230156 -0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.69403080315040476305982696739689230156 -0.38968756713554786569859973469754143293 -0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 0.083718370285952628758426702094433734489 -0.69403080315040476305982696739689230156 -0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.69403080315040476305982696739689230156 0.083718370285952628758426702094433734489 -0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 0.083718370285952628758426702094433734489 -0.38968756713554786569859973469754143293 -0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.38968756713554786569859973469754143293 0.083718370285952628758426702094433734489 -0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.38968756713554786569859973469754143293 -0.69403080315040476305982696739689230156 0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.69403080315040476305982696739689230156 -0.38968756713554786569859973469754143293 0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 0.083718370285952628758426702094433734489 -0.69403080315040476305982696739689230156 0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.69403080315040476305982696739689230156 0.083718370285952628758426702094433734489 0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 0.083718370285952628758426702094433734489 -0.38968756713554786569859973469754143293 0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 -0.38968756713554786569859973469754143293 0.083718370285952628758426702094433734489 0.4039345605321099116998238341362959742 0.15576281310483042016174134706586605691 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n46-d8-sp.txt000066400000000000000000000175621277740313300240320ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.22443386610599057286592461466529935585 0.082939746571421834033180571412028667484 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.22443386610599057286592461466529935585 0.082939746571421834033180571412028667484 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.68182544157086581170215168002374039522 0.20435770844872619128158195584935122282 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.68182544157086581170215168002374039522 0.20435770844872619128158195584935122282 -0.89317529812618572284389086719897089711 0.78635059625237144568778173439794179421 0 0.072608995136598867700988758862181257017 0.78635059625237144568778173439794179421 -0.89317529812618572284389086719897089711 0 0.072608995136598867700988758862181257017 -0.89317529812618572284389086719897089711 -0.89317529812618572284389086719897089711 0 0.072608995136598867700988758862181257017 -0.079822074372578761440178266060788079463 -0.84035585125484247711964346787842384107 0 0.2107989796260286741645220068699562506 -0.84035585125484247711964346787842384107 -0.079822074372578761440178266060788079463 0 0.2107989796260286741645220068699562506 -0.079822074372578761440178266060788079463 -0.079822074372578761440178266060788079463 0 0.2107989796260286741645220068699562506 -0.082861862418097326120000870246452008956 -0.83427627516380534775999825950709598209 -0.87619591000025424474025327234232345955 0.084346037174345969123924723988899397111 -0.83427627516380534775999825950709598209 -0.082861862418097326120000870246452008956 -0.87619591000025424474025327234232345955 0.084346037174345969123924723988899397111 -0.082861862418097326120000870246452008956 -0.082861862418097326120000870246452008956 -0.87619591000025424474025327234232345955 0.084346037174345969123924723988899397111 -0.082861862418097326120000870246452008956 -0.83427627516380534775999825950709598209 0.87619591000025424474025327234232345955 0.084346037174345969123924723988899397111 -0.83427627516380534775999825950709598209 -0.082861862418097326120000870246452008956 0.87619591000025424474025327234232345955 0.084346037174345969123924723988899397111 -0.082861862418097326120000870246452008956 -0.082861862418097326120000870246452008956 0.87619591000025424474025327234232345955 0.084346037174345969123924723988899397111 -0.65187678415125922476703025933216051413 0.30375356830251844953406051866432102826 -0.40608422935459024220472507696440370377 0.16251705063595730345650668876189645828 0.30375356830251844953406051866432102826 -0.65187678415125922476703025933216051413 -0.40608422935459024220472507696440370377 0.16251705063595730345650668876189645828 -0.65187678415125922476703025933216051413 -0.65187678415125922476703025933216051413 -0.40608422935459024220472507696440370377 0.16251705063595730345650668876189645828 -0.65187678415125922476703025933216051413 0.30375356830251844953406051866432102826 0.40608422935459024220472507696440370377 0.16251705063595730345650668876189645828 0.30375356830251844953406051866432102826 -0.65187678415125922476703025933216051413 0.40608422935459024220472507696440370377 0.16251705063595730345650668876189645828 -0.65187678415125922476703025933216051413 -0.65187678415125922476703025933216051413 0.40608422935459024220472507696440370377 0.16251705063595730345650668876189645828 -0.90552242832046124932977560924577476395 0.8110448566409224986595512184915495279 -0.82881544305868020493486275746014093078 0.028581431014154463281085418946775972209 0.8110448566409224986595512184915495279 -0.90552242832046124932977560924577476395 -0.82881544305868020493486275746014093078 0.028581431014154463281085418946775972209 -0.90552242832046124932977560924577476395 -0.90552242832046124932977560924577476395 -0.82881544305868020493486275746014093078 0.028581431014154463281085418946775972209 -0.90552242832046124932977560924577476395 0.8110448566409224986595512184915495279 0.82881544305868020493486275746014093078 0.028581431014154463281085418946775972209 0.8110448566409224986595512184915495279 -0.90552242832046124932977560924577476395 0.82881544305868020493486275746014093078 0.028581431014154463281085418946775972209 -0.90552242832046124932977560924577476395 -0.90552242832046124932977560924577476395 0.82881544305868020493486275746014093078 0.028581431014154463281085418946775972209 -0.68050147211482206696479393170526142918 0.36100294422964413392958786341052285835 -0.96586516654065435448682371732369762245 0.044572109393861233332081245114974812183 0.36100294422964413392958786341052285835 -0.68050147211482206696479393170526142918 -0.96586516654065435448682371732369762245 0.044572109393861233332081245114974812183 -0.68050147211482206696479393170526142918 -0.68050147211482206696479393170526142918 -0.96586516654065435448682371732369762245 0.044572109393861233332081245114974812183 -0.68050147211482206696479393170526142918 0.36100294422964413392958786341052285835 0.96586516654065435448682371732369762245 0.044572109393861233332081245114974812183 0.36100294422964413392958786341052285835 -0.68050147211482206696479393170526142918 0.96586516654065435448682371732369762245 0.044572109393861233332081245114974812183 -0.68050147211482206696479393170526142918 -0.68050147211482206696479393170526142918 0.96586516654065435448682371732369762245 0.044572109393861233332081245114974812183 -0.4743723986175179830847346899909858658 0.45719614360199995718682043629988661246 -0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 0.45719614360199995718682043629988661246 -0.4743723986175179830847346899909858658 -0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.98282374498448197410208574630890074666 0.45719614360199995718682043629988661246 -0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 0.45719614360199995718682043629988661246 -0.98282374498448197410208574630890074666 -0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.98282374498448197410208574630890074666 -0.4743723986175179830847346899909858658 -0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.4743723986175179830847346899909858658 -0.98282374498448197410208574630890074666 -0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.4743723986175179830847346899909858658 0.45719614360199995718682043629988661246 0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 0.45719614360199995718682043629988661246 -0.4743723986175179830847346899909858658 0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.98282374498448197410208574630890074666 0.45719614360199995718682043629988661246 0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 0.45719614360199995718682043629988661246 -0.98282374498448197410208574630890074666 0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.98282374498448197410208574630890074666 -0.4743723986175179830847346899909858658 0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 -0.4743723986175179830847346899909858658 -0.98282374498448197410208574630890074666 0.57735026918962576450914878050195745565 0.054590116363492292384362848950462321489 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n5-d2-sp.txt000066400000000000000000000015271277740313300237310ustar00rootroot00000000000000-0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.99999999999999985119303811076522004183 0.66666666666666686507594918564641756458 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.99999999999999985119303811076522004183 0.66666666666666686507594918564641756458 -0.74158162379719638007464124598498266439 0.48316324759439276014928249196996532878 0 0.88888888888888875661603387623572162361 0.48316324759439276014928249196996532878 -0.74158162379719638007464124598498266439 0 0.88888888888888875661603387623572162361 -0.74158162379719638007464124598498266439 -0.74158162379719638007464124598498266439 0 0.88888888888888875661603387623572162361 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n60-d9-sp.txt000066400000000000000000000247641277740313300240310ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0 0.19114798844620108508537046584425003736 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.87583915879987761660772171906042408394 0.1060969195893273614653564550346218398 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.87583915879987761660772171906042408394 0.1060969195893273614653564550346218398 -0.0010699296586281549894456411507705393926 -0.99786014068274369002110871769845892121 0 0.049462405441895223670279761487537762472 -0.99786014068274369002110871769845892121 -0.0010699296586281549894456411507705393926 0 0.049462405441895223670279761487537762472 -0.0010699296586281549894456411507705393926 -0.0010699296586281549894456411507705393926 0 0.049462405441895223670279761487537762472 -0.10986499991499267966311447997302837166 -0.78027000017001464067377104005394325668 -0.52963355520607675696300739352733925666 0.15080793261275860374457825128943921743 -0.78027000017001464067377104005394325668 -0.10986499991499267966311447997302837166 -0.52963355520607675696300739352733925666 0.15080793261275860374457825128943921743 -0.10986499991499267966311447997302837166 -0.10986499991499267966311447997302837166 -0.52963355520607675696300739352733925666 0.15080793261275860374457825128943921743 -0.10986499991499267966311447997302837166 -0.78027000017001464067377104005394325668 0.52963355520607675696300739352733925666 0.15080793261275860374457825128943921743 -0.78027000017001464067377104005394325668 -0.10986499991499267966311447997302837166 0.52963355520607675696300739352733925666 0.15080793261275860374457825128943921743 -0.10986499991499267966311447997302837166 -0.10986499991499267966311447997302837166 0.52963355520607675696300739352733925666 0.15080793261275860374457825128943921743 -0.57769113257897895683607913964943464903 0.15538226515795791367215827929886929806 -0.32397688216877005165250824998597314548 0.09338246974553840864616210022748459774 0.15538226515795791367215827929886929806 -0.57769113257897895683607913964943464903 -0.32397688216877005165250824998597314548 0.09338246974553840864616210022748459774 -0.57769113257897895683607913964943464903 -0.57769113257897895683607913964943464903 -0.32397688216877005165250824998597314548 0.09338246974553840864616210022748459774 -0.57769113257897895683607913964943464903 0.15538226515795791367215827929886929806 0.32397688216877005165250824998597314548 0.09338246974553840864616210022748459774 0.15538226515795791367215827929886929806 -0.57769113257897895683607913964943464903 0.32397688216877005165250824998597314548 0.09338246974553840864616210022748459774 -0.57769113257897895683607913964943464903 -0.57769113257897895683607913964943464903 0.32397688216877005165250824998597314548 0.09338246974553840864616210022748459774 -0.91231503711701435232450671034134809014 0.82463007423402870464901342068269618029 -0.40165166857078872104499428459378049449 0.03838828638520642757038156568015552951 0.82463007423402870464901342068269618029 -0.91231503711701435232450671034134809014 -0.40165166857078872104499428459378049449 0.03838828638520642757038156568015552951 -0.91231503711701435232450671034134809014 -0.91231503711701435232450671034134809014 -0.40165166857078872104499428459378049449 0.03838828638520642757038156568015552951 -0.91231503711701435232450671034134809014 0.82463007423402870464901342068269618029 0.40165166857078872104499428459378049449 0.03838828638520642757038156568015552951 0.82463007423402870464901342068269618029 -0.91231503711701435232450671034134809014 0.40165166857078872104499428459378049449 0.03838828638520642757038156568015552951 -0.91231503711701435232450671034134809014 -0.91231503711701435232450671034134809014 0.40165166857078872104499428459378049449 0.03838828638520642757038156568015552951 -0.03450013665826621486161695118676603904 -0.93099972668346757027676609762646792192 -0.9677921254642105035410819146400981344 0.026528431202320433845464036710085263608 -0.93099972668346757027676609762646792192 -0.03450013665826621486161695118676603904 -0.9677921254642105035410819146400981344 0.026528431202320433845464036710085263608 -0.03450013665826621486161695118676603904 -0.03450013665826621486161695118676603904 -0.9677921254642105035410819146400981344 0.026528431202320433845464036710085263608 -0.03450013665826621486161695118676603904 -0.93099972668346757027676609762646792192 0.9677921254642105035410819146400981344 0.026528431202320433845464036710085263608 -0.93099972668346757027676609762646792192 -0.03450013665826621486161695118676603904 0.9677921254642105035410819146400981344 0.026528431202320433845464036710085263608 -0.03450013665826621486161695118676603904 -0.03450013665826621486161695118676603904 0.9677921254642105035410819146400981344 0.026528431202320433845464036710085263608 -0.6456435117766454460710959796587760834 0.29128702355329089214219195931755216681 -0.89078174045697066578383528302064143989 0.066719942573448407007300296577585702464 0.29128702355329089214219195931755216681 -0.6456435117766454460710959796587760834 -0.89078174045697066578383528302064143989 0.066719942573448407007300296577585702464 -0.6456435117766454460710959796587760834 -0.6456435117766454460710959796587760834 -0.89078174045697066578383528302064143989 0.066719942573448407007300296577585702464 -0.6456435117766454460710959796587760834 0.29128702355329089214219195931755216681 0.89078174045697066578383528302064143989 0.066719942573448407007300296577585702464 0.29128702355329089214219195931755216681 -0.6456435117766454460710959796587760834 0.89078174045697066578383528302064143989 0.066719942573448407007300296577585702464 -0.6456435117766454460710959796587760834 -0.6456435117766454460710959796587760834 0.89078174045697066578383528302064143989 0.066719942573448407007300296577585702464 -0.90753763917811234690103494985844043039 0.81507527835622469380206989971688086078 -0.9577062038929269606887790227035291939 0.012131173836407148944270419030858660558 0.81507527835622469380206989971688086078 -0.90753763917811234690103494985844043039 -0.9577062038929269606887790227035291939 0.012131173836407148944270419030858660558 -0.90753763917811234690103494985844043039 -0.90753763917811234690103494985844043039 -0.9577062038929269606887790227035291939 0.012131173836407148944270419030858660558 -0.90753763917811234690103494985844043039 0.81507527835622469380206989971688086078 0.9577062038929269606887790227035291939 0.012131173836407148944270419030858660558 0.81507527835622469380206989971688086078 -0.90753763917811234690103494985844043039 0.9577062038929269606887790227035291939 0.012131173836407148944270419030858660558 -0.90753763917811234690103494985844043039 -0.90753763917811234690103494985844043039 0.9577062038929269606887790227035291939 0.012131173836407148944270419030858660558 -0.88126598051326876444819587362986475675 0.44939053910599895722040631866985064464 0 0.087691161312839084087580790508946261895 0.44939053910599895722040631866985064464 -0.88126598051326876444819587362986475675 0 0.087691161312839084087580790508946261895 -0.56812455859273019277221044503998588789 0.44939053910599895722040631866985064464 0 0.087691161312839084087580790508946261895 0.44939053910599895722040631866985064464 -0.56812455859273019277221044503998588789 0 0.087691161312839084087580790508946261895 -0.56812455859273019277221044503998588789 -0.88126598051326876444819587362986475675 0 0.087691161312839084087580790508946261895 -0.88126598051326876444819587362986475675 -0.56812455859273019277221044503998588789 0 0.087691161312839084087580790508946261895 -0.5517449084932878730050536869300298641 0.49681091913207739922639584227322548803 -0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 0.49681091913207739922639584227322548803 -0.5517449084932878730050536869300298641 -0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.94506601063878952622134215534319562393 0.49681091913207739922639584227322548803 -0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 0.49681091913207739922639584227322548803 -0.94506601063878952622134215534319562393 -0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.94506601063878952622134215534319562393 -0.5517449084932878730050536869300298641 -0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.5517449084932878730050536869300298641 -0.94506601063878952622134215534319562393 -0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.5517449084932878730050536869300298641 0.49681091913207739922639584227322548803 0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 0.49681091913207739922639584227322548803 -0.5517449084932878730050536869300298641 0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.94506601063878952622134215534319562393 0.49681091913207739922639584227322548803 0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 0.49681091913207739922639584227322548803 -0.94506601063878952622134215534319562393 0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.94506601063878952622134215534319562393 -0.5517449084932878730050536869300298641 0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 -0.5517449084932878730050536869300298641 -0.94506601063878952622134215534319562393 0.69522055387163478698981196744187399375 0.0495312141698622864915543816230467997 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n8-d3-sp.txt000066400000000000000000000025301277740313300237300ustar00rootroot00000000000000-0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.86066920446477793249332885107223920359 0.89998695257960196814387903509173005101 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.86066920446477793249332885107223920359 0.89998695257960196814387903509173005101 -0.52223312808684327863699399822724711768 0.52222829574978345631488370728601281383 0 0.366671015806799343952040321636089983 0.52222829574978345631488370728601281383 -0.52223312808684327863699399822724711768 0 0.366671015806799343952040321636089983 -0.99999516766294017767788970905876569615 0.52222829574978345631488370728601281383 0 0.366671015806799343952040321636089983 0.52222829574978345631488370728601281383 -0.99999516766294017767788970905876569615 0 0.366671015806799343952040321636089983 -0.99999516766294017767788970905876569615 -0.52223312808684327863699399822724711768 0 0.366671015806799343952040321636089983 -0.52223312808684327863699399822724711768 -0.99999516766294017767788970905876569615 0 0.366671015806799343952040321636089983 pyfr-1.5.0/pyfr/quadrules/pri/witherden-vincent-n85-d10-sp.txt000066400000000000000000000355571277740313300241120ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -1 0.038043108084240763009572271119163370293 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 1 0.038043108084240763009572271119163370293 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 -0.2838364013985715684657060577249329797 0.12804920643255787761445727849451714328 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.2838364013985715684657060577249329797 0.12804920643255787761445727849451714328 -0.58509925002156576804484663776694671178 0.17019850004313153608969327553389342357 0 0.045423158480136973856219994221831113886 0.17019850004313153608969327553389342357 -0.58509925002156576804484663776694671178 0 0.045423158480136973856219994221831113886 -0.58509925002156576804484663776694671178 -0.58509925002156576804484663776694671178 0 0.045423158480136973856219994221831113886 -0.087745274263836468012344092631834458624 -0.82450945147232706397531181473633108275 0 0.12078661810034629566292168130821741978 -0.82450945147232706397531181473633108275 -0.087745274263836468012344092631834458624 0 0.12078661810034629566292168130821741978 -0.087745274263836468012344092631834458624 -0.087745274263836468012344092631834458624 0 0.12078661810034629566292168130821741978 -0.83336149569989450879622615827585222698 0.66672299139978901759245231655170445397 0 0.070523638001611290833549221721909796384 0.66672299139978901759245231655170445397 -0.83336149569989450879622615827585222698 0 0.070523638001611290833549221721909796384 -0.83336149569989450879622615827585222698 -0.83336149569989450879622615827585222698 0 0.070523638001611290833549221721909796384 -0.58566729572033783230931886738991607412 0.17133459144067566461863773477983214824 -0.47829026090036813970247985116366265217 0.10435318130434033235265655019864541098 0.17133459144067566461863773477983214824 -0.58566729572033783230931886738991607412 -0.47829026090036813970247985116366265217 0.10435318130434033235265655019864541098 -0.58566729572033783230931886738991607412 -0.58566729572033783230931886738991607412 -0.47829026090036813970247985116366265217 0.10435318130434033235265655019864541098 -0.58566729572033783230931886738991607412 0.17133459144067566461863773477983214824 0.47829026090036813970247985116366265217 0.10435318130434033235265655019864541098 0.17133459144067566461863773477983214824 -0.58566729572033783230931886738991607412 0.47829026090036813970247985116366265217 0.10435318130434033235265655019864541098 -0.58566729572033783230931886738991607412 -0.58566729572033783230931886738991607412 0.47829026090036813970247985116366265217 0.10435318130434033235265655019864541098 -0.71401760691431835996629386931253079667 0.42803521382863671993258773862506159333 -0.8520666639991396363392553699935906628 0.045353049770314160210925207718221960406 0.42803521382863671993258773862506159333 -0.71401760691431835996629386931253079667 -0.8520666639991396363392553699935906628 0.045353049770314160210925207718221960406 -0.71401760691431835996629386931253079667 -0.71401760691431835996629386931253079667 -0.8520666639991396363392553699935906628 0.045353049770314160210925207718221960406 -0.71401760691431835996629386931253079667 0.42803521382863671993258773862506159333 0.8520666639991396363392553699935906628 0.045353049770314160210925207718221960406 0.42803521382863671993258773862506159333 -0.71401760691431835996629386931253079667 0.8520666639991396363392553699935906628 0.045353049770314160210925207718221960406 -0.71401760691431835996629386931253079667 -0.71401760691431835996629386931253079667 0.8520666639991396363392553699935906628 0.045353049770314160210925207718221960406 -0.0059182255205082649355625415633530872236 -0.98816354895898347012887491687329382555 -0.62749011164795345095028595959683589121 0.028126573654953943549801873601641305154 -0.98816354895898347012887491687329382555 -0.0059182255205082649355625415633530872236 -0.62749011164795345095028595959683589121 0.028126573654953943549801873601641305154 -0.0059182255205082649355625415633530872236 -0.0059182255205082649355625415633530872236 -0.62749011164795345095028595959683589121 0.028126573654953943549801873601641305154 -0.0059182255205082649355625415633530872236 -0.98816354895898347012887491687329382555 0.62749011164795345095028595959683589121 0.028126573654953943549801873601641305154 -0.98816354895898347012887491687329382555 -0.0059182255205082649355625415633530872236 0.62749011164795345095028595959683589121 0.028126573654953943549801873601641305154 -0.0059182255205082649355625415633530872236 -0.0059182255205082649355625415633530872236 0.62749011164795345095028595959683589121 0.028126573654953943549801873601641305154 -0.14443508029301579714242731927948333445 -0.71112983941396840571514536144103333111 -0.76897188255294104672722599221030791768 0.09730006751474251906683045094709204535 -0.71112983941396840571514536144103333111 -0.14443508029301579714242731927948333445 -0.76897188255294104672722599221030791768 0.09730006751474251906683045094709204535 -0.14443508029301579714242731927948333445 -0.14443508029301579714242731927948333445 -0.76897188255294104672722599221030791768 0.09730006751474251906683045094709204535 -0.14443508029301579714242731927948333445 -0.71112983941396840571514536144103333111 0.76897188255294104672722599221030791768 0.09730006751474251906683045094709204535 -0.71112983941396840571514536144103333111 -0.14443508029301579714242731927948333445 0.76897188255294104672722599221030791768 0.09730006751474251906683045094709204535 -0.14443508029301579714242731927948333445 -0.14443508029301579714242731927948333445 0.76897188255294104672722599221030791768 0.09730006751474251906683045094709204535 -0.92655062106089238633040808286062465799 0.85310124212178477266081616572124931598 -0.94536185592175700771401046143327478453 0.0075697428403356175236518069263715176348 0.85310124212178477266081616572124931598 -0.92655062106089238633040808286062465799 -0.94536185592175700771401046143327478453 0.0075697428403356175236518069263715176348 -0.92655062106089238633040808286062465799 -0.92655062106089238633040808286062465799 -0.94536185592175700771401046143327478453 0.0075697428403356175236518069263715176348 -0.92655062106089238633040808286062465799 0.85310124212178477266081616572124931598 0.94536185592175700771401046143327478453 0.0075697428403356175236518069263715176348 0.85310124212178477266081616572124931598 -0.92655062106089238633040808286062465799 0.94536185592175700771401046143327478453 0.0075697428403356175236518069263715176348 -0.92655062106089238633040808286062465799 -0.92655062106089238633040808286062465799 0.94536185592175700771401046143327478453 0.0075697428403356175236518069263715176348 -0.99621476080190120325860648054065438352 0.99582008190465265332555390082623777504 0 0.0031208636401827010315915455956052660089 0.99582008190465265332555390082623777504 -0.99621476080190120325860648054065438352 0 0.0031208636401827010315915455956052660089 -0.99960532110275145006694742028558339152 0.99582008190465265332555390082623777504 0 0.0031208636401827010315915455956052660089 0.99582008190465265332555390082623777504 -0.99960532110275145006694742028558339152 0 0.0031208636401827010315915455956052660089 -0.99960532110275145006694742028558339152 -0.99621476080190120325860648054065438352 0 0.0031208636401827010315915455956052660089 -0.99621476080190120325860648054065438352 -0.99960532110275145006694742028558339152 0 0.0031208636401827010315915455956052660089 -0.91342063244101618001407082339238449491 0.3255064864791910018042153093720481789 -0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 0.3255064864791910018042153093720481789 -0.91342063244101618001407082339238449491 -0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.41208585403817482179014448597966368399 0.3255064864791910018042153093720481789 -0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 0.3255064864791910018042153093720481789 -0.41208585403817482179014448597966368399 -0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.41208585403817482179014448597966368399 -0.91342063244101618001407082339238449491 -0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.91342063244101618001407082339238449491 -0.41208585403817482179014448597966368399 -0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.91342063244101618001407082339238449491 0.3255064864791910018042153093720481789 0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 0.3255064864791910018042153093720481789 -0.91342063244101618001407082339238449491 0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.41208585403817482179014448597966368399 0.3255064864791910018042153093720481789 0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 0.3255064864791910018042153093720481789 -0.41208585403817482179014448597966368399 0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.41208585403817482179014448597966368399 -0.91342063244101618001407082339238449491 0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.91342063244101618001407082339238449491 -0.41208585403817482179014448597966368399 0.94236346745083749482627300953387466221 0.024183540649806648348002441154357646858 -0.9234169616555928413056660388640430162 0.37513146835671456389900781390965761438 -0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 0.37513146835671456389900781390965761438 -0.9234169616555928413056660388640430162 -0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.45171450670112172259334177504561459817 0.37513146835671456389900781390965761438 -0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 0.37513146835671456389900781390965761438 -0.45171450670112172259334177504561459817 -0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.45171450670112172259334177504561459817 -0.9234169616555928413056660388640430162 -0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.9234169616555928413056660388640430162 -0.45171450670112172259334177504561459817 -0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.9234169616555928413056660388640430162 0.37513146835671456389900781390965761438 0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 0.37513146835671456389900781390965761438 -0.9234169616555928413056660388640430162 0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.45171450670112172259334177504561459817 0.37513146835671456389900781390965761438 0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 0.37513146835671456389900781390965761438 -0.45171450670112172259334177504561459817 0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.45171450670112172259334177504561459817 -0.9234169616555928413056660388640430162 0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.9234169616555928413056660388640430162 -0.45171450670112172259334177504561459817 0.33533610866739435446116498131265141599 0.05460310873669147926531122821390556603 -0.96792121274553310722108842071500064645 0.74052721727873797554079834546410281777 -0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 0.74052721727873797554079834546410281777 -0.96792121274553310722108842071500064645 -0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.77260600453320486831970992474910217133 0.74052721727873797554079834546410281777 -0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 0.74052721727873797554079834546410281777 -0.77260600453320486831970992474910217133 -0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.77260600453320486831970992474910217133 -0.96792121274553310722108842071500064645 -0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.96792121274553310722108842071500064645 -0.77260600453320486831970992474910217133 -0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.96792121274553310722108842071500064645 0.74052721727873797554079834546410281777 0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 0.74052721727873797554079834546410281777 -0.96792121274553310722108842071500064645 0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.77260600453320486831970992474910217133 0.74052721727873797554079834546410281777 0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 0.74052721727873797554079834546410281777 -0.77260600453320486831970992474910217133 0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.77260600453320486831970992474910217133 -0.96792121274553310722108842071500064645 0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 -0.96792121274553310722108842071500064645 -0.77260600453320486831970992474910217133 0.61432350187707741015732547519719343903 0.024769538519410488660113297222678366236 pyfr-1.5.0/pyfr/quadrules/pyr/000077500000000000000000000000001277740313300163035ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-lobatto-n14-su.txt000066400000000000000000000002651277740313300244430ustar00rootroot000000000000000 0 1 -1.0 -1.0 -1.0 0.0 -1.0 -1.0 1.0 -1.0 -1.0 -1.0 0.0 -1.0 0.0 0.0 -1.0 1.0 0.0 -1.0 -1.0 1.0 -1.0 0.0 1.0 -1.0 1.0 1.0 -1.0 -0.5 -0.5 0.0 0.5 -0.5 0.0 -0.5 0.5 0.0 0.5 0.5 0.0 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-lobatto-n140-su.txt000066400000000000000000000241121277740313300245200ustar00rootroot000000000000000 0 1 -1.0 -1.0 -1.0 -0.83022389627856692987203221396747 -1.0 -1.0 -0.46884879347071421380377188190877 -1.0 -1.0 0.0 -1.0 -1.0 0.46884879347071421380377188190877 -1.0 -1.0 0.83022389627856692987203221396747 -1.0 -1.0 1.0 -1.0 -1.0 -1.0 -0.83022389627856692987203221396747 -1.0 -0.83022389627856692987203221396747 -0.83022389627856692987203221396747 -1.0 -0.46884879347071421380377188190877 -0.83022389627856692987203221396747 -1.0 0.0 -0.83022389627856692987203221396747 -1.0 0.46884879347071421380377188190877 -0.83022389627856692987203221396747 -1.0 0.83022389627856692987203221396747 -0.83022389627856692987203221396747 -1.0 1.0 -0.83022389627856692987203221396747 -1.0 -1.0 -0.46884879347071421380377188190877 -1.0 -0.83022389627856692987203221396747 -0.46884879347071421380377188190877 -1.0 -0.46884879347071421380377188190877 -0.46884879347071421380377188190877 -1.0 0.0 -0.46884879347071421380377188190877 -1.0 0.46884879347071421380377188190877 -0.46884879347071421380377188190877 -1.0 0.83022389627856692987203221396747 -0.46884879347071421380377188190877 -1.0 1.0 -0.46884879347071421380377188190877 -1.0 -1.0 0.0 -1.0 -0.83022389627856692987203221396747 0.0 -1.0 -0.46884879347071421380377188190877 0.0 -1.0 0.0 0.0 -1.0 0.46884879347071421380377188190877 0.0 -1.0 0.83022389627856692987203221396747 0.0 -1.0 1.0 0.0 -1.0 -1.0 0.46884879347071421380377188190877 -1.0 -0.83022389627856692987203221396747 0.46884879347071421380377188190877 -1.0 -0.46884879347071421380377188190877 0.46884879347071421380377188190877 -1.0 0.0 0.46884879347071421380377188190877 -1.0 0.46884879347071421380377188190877 0.46884879347071421380377188190877 -1.0 0.83022389627856692987203221396747 0.46884879347071421380377188190877 -1.0 1.0 0.46884879347071421380377188190877 -1.0 -1.0 0.83022389627856692987203221396747 -1.0 -0.83022389627856692987203221396747 0.83022389627856692987203221396747 -1.0 -0.46884879347071421380377188190877 0.83022389627856692987203221396747 -1.0 0.0 0.83022389627856692987203221396747 -1.0 0.46884879347071421380377188190877 0.83022389627856692987203221396747 -1.0 0.83022389627856692987203221396747 0.83022389627856692987203221396747 -1.0 1.0 0.83022389627856692987203221396747 -1.0 -1.0 1.0 -1.0 -0.83022389627856692987203221396747 1.0 -1.0 -0.46884879347071421380377188190877 1.0 -1.0 0.0 1.0 -1.0 0.46884879347071421380377188190877 1.0 -1.0 0.83022389627856692987203221396747 1.0 -1.0 1.0 1.0 -1.0 -0.9151119481392834649360161069835 -0.9151119481392834649360161069835 -0.830223896278566929872032213967 -0.70011126791542300605674504527117 -0.9151119481392834649360161069835 -0.830223896278566929872032213967 -0.26101876871732527230906896773735 -0.9151119481392834649360161069835 -0.830223896278566929872032213967 0.26101876871732527230906896773735 -0.9151119481392834649360161069835 -0.830223896278566929872032213967 0.70011126791542300605674504527117 -0.9151119481392834649360161069835 -0.830223896278566929872032213967 0.9151119481392834649360161069835 -0.9151119481392834649360161069835 -0.830223896278566929872032213967 -0.9151119481392834649360161069835 -0.70011126791542300605674504527117 -0.830223896278566929872032213967 -0.70011126791542300605674504527117 -0.70011126791542300605674504527117 -0.830223896278566929872032213967 -0.26101876871732527230906896773735 -0.70011126791542300605674504527117 -0.830223896278566929872032213967 0.26101876871732527230906896773735 -0.70011126791542300605674504527117 -0.830223896278566929872032213967 0.70011126791542300605674504527117 -0.70011126791542300605674504527117 -0.830223896278566929872032213967 0.9151119481392834649360161069835 -0.70011126791542300605674504527117 -0.830223896278566929872032213967 -0.9151119481392834649360161069835 -0.26101876871732527230906896773735 -0.830223896278566929872032213967 -0.70011126791542300605674504527117 -0.26101876871732527230906896773735 -0.830223896278566929872032213967 -0.26101876871732527230906896773735 -0.26101876871732527230906896773735 -0.830223896278566929872032213967 0.26101876871732527230906896773735 -0.26101876871732527230906896773735 -0.830223896278566929872032213967 0.70011126791542300605674504527117 -0.26101876871732527230906896773735 -0.830223896278566929872032213967 0.9151119481392834649360161069835 -0.26101876871732527230906896773735 -0.830223896278566929872032213967 -0.9151119481392834649360161069835 0.26101876871732527230906896773735 -0.830223896278566929872032213967 -0.70011126791542300605674504527117 0.26101876871732527230906896773735 -0.830223896278566929872032213967 -0.26101876871732527230906896773735 0.26101876871732527230906896773735 -0.830223896278566929872032213967 0.26101876871732527230906896773735 0.26101876871732527230906896773735 -0.830223896278566929872032213967 0.70011126791542300605674504527117 0.26101876871732527230906896773735 -0.830223896278566929872032213967 0.9151119481392834649360161069835 0.26101876871732527230906896773735 -0.830223896278566929872032213967 -0.9151119481392834649360161069835 0.70011126791542300605674504527117 -0.830223896278566929872032213967 -0.70011126791542300605674504527117 0.70011126791542300605674504527117 -0.830223896278566929872032213967 -0.26101876871732527230906896773735 0.70011126791542300605674504527117 -0.830223896278566929872032213967 0.26101876871732527230906896773735 0.70011126791542300605674504527117 -0.830223896278566929872032213967 0.70011126791542300605674504527117 0.70011126791542300605674504527117 -0.830223896278566929872032213967 0.9151119481392834649360161069835 0.70011126791542300605674504527117 -0.830223896278566929872032213967 -0.9151119481392834649360161069835 0.9151119481392834649360161069835 -0.830223896278566929872032213967 -0.70011126791542300605674504527117 0.9151119481392834649360161069835 -0.830223896278566929872032213967 -0.26101876871732527230906896773735 0.9151119481392834649360161069835 -0.830223896278566929872032213967 0.26101876871732527230906896773735 0.9151119481392834649360161069835 -0.830223896278566929872032213967 0.70011126791542300605674504527117 0.9151119481392834649360161069835 -0.830223896278566929872032213967 0.9151119481392834649360161069835 0.9151119481392834649360161069835 -0.830223896278566929872032213967 -0.7344243967353571069018859409545 -0.7344243967353571069018859409545 -0.468848793470714213803771881909 -0.48079362718029323553038406839389 -0.7344243967353571069018859409545 -0.468848793470714213803771881909 0.0 -0.7344243967353571069018859409545 -0.468848793470714213803771881909 0.48079362718029323553038406839389 -0.7344243967353571069018859409545 -0.468848793470714213803771881909 0.7344243967353571069018859409545 -0.7344243967353571069018859409545 -0.468848793470714213803771881909 -0.7344243967353571069018859409545 -0.48079362718029323553038406839389 -0.468848793470714213803771881909 -0.48079362718029323553038406839389 -0.48079362718029323553038406839389 -0.468848793470714213803771881909 0.0 -0.48079362718029323553038406839389 -0.468848793470714213803771881909 0.48079362718029323553038406839389 -0.48079362718029323553038406839389 -0.468848793470714213803771881909 0.7344243967353571069018859409545 -0.48079362718029323553038406839389 -0.468848793470714213803771881909 -0.7344243967353571069018859409545 0.0 -0.468848793470714213803771881909 -0.48079362718029323553038406839389 0.0 -0.468848793470714213803771881909 0.0 0.0 -0.468848793470714213803771881909 0.48079362718029323553038406839389 0.0 -0.468848793470714213803771881909 0.7344243967353571069018859409545 0.0 -0.468848793470714213803771881909 -0.7344243967353571069018859409545 0.48079362718029323553038406839389 -0.468848793470714213803771881909 -0.48079362718029323553038406839389 0.48079362718029323553038406839389 -0.468848793470714213803771881909 0.0 0.48079362718029323553038406839389 -0.468848793470714213803771881909 0.48079362718029323553038406839389 0.48079362718029323553038406839389 -0.468848793470714213803771881909 0.7344243967353571069018859409545 0.48079362718029323553038406839389 -0.468848793470714213803771881909 -0.7344243967353571069018859409545 0.7344243967353571069018859409545 -0.468848793470714213803771881909 -0.48079362718029323553038406839389 0.7344243967353571069018859409545 -0.468848793470714213803771881909 0.0 0.7344243967353571069018859409545 -0.468848793470714213803771881909 0.48079362718029323553038406839389 0.7344243967353571069018859409545 -0.468848793470714213803771881909 0.7344243967353571069018859409545 0.7344243967353571069018859409545 -0.468848793470714213803771881909 -0.5 -0.5 0.0 -0.22360679774997896964091736687313 -0.5 0.0 0.22360679774997896964091736687313 -0.5 0.0 0.5 -0.5 0.0 -0.5 -0.22360679774997896964091736687313 0.0 -0.22360679774997896964091736687313 -0.22360679774997896964091736687313 0.0 0.22360679774997896964091736687313 -0.22360679774997896964091736687313 0.0 0.5 -0.22360679774997896964091736687313 0.0 -0.5 0.22360679774997896964091736687313 0.0 -0.22360679774997896964091736687313 0.22360679774997896964091736687313 0.0 0.22360679774997896964091736687313 0.22360679774997896964091736687313 0.0 0.5 0.22360679774997896964091736687313 0.0 -0.5 0.5 0.0 -0.22360679774997896964091736687313 0.5 0.0 0.22360679774997896964091736687313 0.5 0.0 0.5 0.5 0.0 -0.2655756032646428930981140590455 -0.2655756032646428930981140590455 0.468848793470714213803771881909 0.0 -0.2655756032646428930981140590455 0.468848793470714213803771881909 0.2655756032646428930981140590455 -0.2655756032646428930981140590455 0.468848793470714213803771881909 -0.2655756032646428930981140590455 0.0 0.468848793470714213803771881909 0.0 0.0 0.468848793470714213803771881909 0.2655756032646428930981140590455 0.0 0.468848793470714213803771881909 -0.2655756032646428930981140590455 0.2655756032646428930981140590455 0.468848793470714213803771881909 0.0 0.2655756032646428930981140590455 0.468848793470714213803771881909 0.2655756032646428930981140590455 0.2655756032646428930981140590455 0.468848793470714213803771881909 -0.0848880518607165350639838930165 -0.0848880518607165350639838930165 0.830223896278566929872032213967 0.0848880518607165350639838930165 -0.0848880518607165350639838930165 0.830223896278566929872032213967 -0.0848880518607165350639838930165 0.0848880518607165350639838930165 0.830223896278566929872032213967 0.0848880518607165350639838930165 0.0848880518607165350639838930165 0.830223896278566929872032213967 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-lobatto-n30-su.txt000066400000000000000000000035021277740313300244360ustar00rootroot000000000000000 0 1 -1.0 -1.0 -1.0 -0.44721359549995793928183473374626 -1.0 -1.0 0.44721359549995793928183473374626 -1.0 -1.0 1.0 -1.0 -1.0 -1.0 -0.44721359549995793928183473374626 -1.0 -0.44721359549995793928183473374626 -0.44721359549995793928183473374626 -1.0 0.44721359549995793928183473374626 -0.44721359549995793928183473374626 -1.0 1.0 -0.44721359549995793928183473374626 -1.0 -1.0 0.44721359549995793928183473374626 -1.0 -0.44721359549995793928183473374626 0.44721359549995793928183473374626 -1.0 0.44721359549995793928183473374626 0.44721359549995793928183473374626 -1.0 1.0 0.44721359549995793928183473374626 -1.0 -1.0 1.0 -1.0 -0.44721359549995793928183473374626 1.0 -1.0 0.44721359549995793928183473374626 1.0 -1.0 1.0 1.0 -1.0 -0.723606797749978969640917366873 -0.723606797749978969640917366873 -0.447213595499957939281834733746 0.0 -0.723606797749978969640917366873 -0.447213595499957939281834733746 0.723606797749978969640917366873 -0.723606797749978969640917366873 -0.447213595499957939281834733746 -0.723606797749978969640917366873 0.0 -0.447213595499957939281834733746 0.0 0.0 -0.447213595499957939281834733746 0.723606797749978969640917366873 0.0 -0.447213595499957939281834733746 -0.723606797749978969640917366873 0.723606797749978969640917366873 -0.447213595499957939281834733746 0.0 0.723606797749978969640917366873 -0.447213595499957939281834733746 0.723606797749978969640917366873 0.723606797749978969640917366873 -0.447213595499957939281834733746 -0.276393202250021030359082633127 -0.276393202250021030359082633127 0.447213595499957939281834733746 0.276393202250021030359082633127 -0.276393202250021030359082633127 0.447213595499957939281834733746 -0.276393202250021030359082633127 0.276393202250021030359082633127 0.447213595499957939281834733746 0.276393202250021030359082633127 0.276393202250021030359082633127 0.447213595499957939281834733746 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-lobatto-n5-su.txt000066400000000000000000000000761277740313300243630ustar00rootroot000000000000000 0 1 -1.0 -1.0 -1.0 1.0 -1.0 -1.0 -1.0 1.0 -1.0 1.0 1.0 -1.0 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-lobatto-n55-su.txt000066400000000000000000000061251277740313300244510ustar00rootroot000000000000000 0 1 -1.0 -1.0 -1.0 -0.65465367070797714379829245624686 -1.0 -1.0 0.0 -1.0 -1.0 0.65465367070797714379829245624686 -1.0 -1.0 1.0 -1.0 -1.0 -1.0 -0.65465367070797714379829245624686 -1.0 -0.65465367070797714379829245624686 -0.65465367070797714379829245624686 -1.0 0.0 -0.65465367070797714379829245624686 -1.0 0.65465367070797714379829245624686 -0.65465367070797714379829245624686 -1.0 1.0 -0.65465367070797714379829245624686 -1.0 -1.0 0.0 -1.0 -0.65465367070797714379829245624686 0.0 -1.0 0.0 0.0 -1.0 0.65465367070797714379829245624686 0.0 -1.0 1.0 0.0 -1.0 -1.0 0.65465367070797714379829245624686 -1.0 -0.65465367070797714379829245624686 0.65465367070797714379829245624686 -1.0 0.0 0.65465367070797714379829245624686 -1.0 0.65465367070797714379829245624686 0.65465367070797714379829245624686 -1.0 1.0 0.65465367070797714379829245624686 -1.0 -1.0 1.0 -1.0 -0.65465367070797714379829245624686 1.0 -1.0 0.0 1.0 -1.0 0.65465367070797714379829245624686 1.0 -1.0 1.0 1.0 -1.0 -0.8273268353539885718991462281235 -0.8273268353539885718991462281235 -0.654653670707977143798292456247 -0.36999180869225894654407506230917 -0.8273268353539885718991462281235 -0.654653670707977143798292456247 0.36999180869225894654407506230917 -0.8273268353539885718991462281235 -0.654653670707977143798292456247 0.8273268353539885718991462281235 -0.8273268353539885718991462281235 -0.654653670707977143798292456247 -0.8273268353539885718991462281235 -0.36999180869225894654407506230917 -0.654653670707977143798292456247 -0.36999180869225894654407506230917 -0.36999180869225894654407506230917 -0.654653670707977143798292456247 0.36999180869225894654407506230917 -0.36999180869225894654407506230917 -0.654653670707977143798292456247 0.8273268353539885718991462281235 -0.36999180869225894654407506230917 -0.654653670707977143798292456247 -0.8273268353539885718991462281235 0.36999180869225894654407506230917 -0.654653670707977143798292456247 -0.36999180869225894654407506230917 0.36999180869225894654407506230917 -0.654653670707977143798292456247 0.36999180869225894654407506230917 0.36999180869225894654407506230917 -0.654653670707977143798292456247 0.8273268353539885718991462281235 0.36999180869225894654407506230917 -0.654653670707977143798292456247 -0.8273268353539885718991462281235 0.8273268353539885718991462281235 -0.654653670707977143798292456247 -0.36999180869225894654407506230917 0.8273268353539885718991462281235 -0.654653670707977143798292456247 0.36999180869225894654407506230917 0.8273268353539885718991462281235 -0.654653670707977143798292456247 0.8273268353539885718991462281235 0.8273268353539885718991462281235 -0.654653670707977143798292456247 -0.5 -0.5 0.0 0.0 -0.5 0.0 0.5 -0.5 0.0 -0.5 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.0 -0.5 0.5 0.0 0.0 0.5 0.0 0.5 0.5 0.0 -0.1726731646460114281008537718765 -0.1726731646460114281008537718765 0.654653670707977143798292456247 0.1726731646460114281008537718765 -0.1726731646460114281008537718765 0.654653670707977143798292456247 -0.1726731646460114281008537718765 0.1726731646460114281008537718765 0.654653670707977143798292456247 0.1726731646460114281008537718765 0.1726731646460114281008537718765 0.654653670707977143798292456247 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-lobatto-n91-su.txt000066400000000000000000000156471277740313300244620ustar00rootroot000000000000000 0 1 -1.0 -1.0 -1.0 -0.76505532392946469285100297395934 -1.0 -1.0 -0.28523151648064509631415099404088 -1.0 -1.0 0.28523151648064509631415099404088 -1.0 -1.0 0.76505532392946469285100297395934 -1.0 -1.0 1.0 -1.0 -1.0 -1.0 -0.76505532392946469285100297395934 -1.0 -0.76505532392946469285100297395934 -0.76505532392946469285100297395934 -1.0 -0.28523151648064509631415099404088 -0.76505532392946469285100297395934 -1.0 0.28523151648064509631415099404088 -0.76505532392946469285100297395934 -1.0 0.76505532392946469285100297395934 -0.76505532392946469285100297395934 -1.0 1.0 -0.76505532392946469285100297395934 -1.0 -1.0 -0.28523151648064509631415099404088 -1.0 -0.76505532392946469285100297395934 -0.28523151648064509631415099404088 -1.0 -0.28523151648064509631415099404088 -0.28523151648064509631415099404088 -1.0 0.28523151648064509631415099404088 -0.28523151648064509631415099404088 -1.0 0.76505532392946469285100297395934 -0.28523151648064509631415099404088 -1.0 1.0 -0.28523151648064509631415099404088 -1.0 -1.0 0.28523151648064509631415099404088 -1.0 -0.76505532392946469285100297395934 0.28523151648064509631415099404088 -1.0 -0.28523151648064509631415099404088 0.28523151648064509631415099404088 -1.0 0.28523151648064509631415099404088 0.28523151648064509631415099404088 -1.0 0.76505532392946469285100297395934 0.28523151648064509631415099404088 -1.0 1.0 0.28523151648064509631415099404088 -1.0 -1.0 0.76505532392946469285100297395934 -1.0 -0.76505532392946469285100297395934 0.76505532392946469285100297395934 -1.0 -0.28523151648064509631415099404088 0.76505532392946469285100297395934 -1.0 0.28523151648064509631415099404088 0.76505532392946469285100297395934 -1.0 0.76505532392946469285100297395934 0.76505532392946469285100297395934 -1.0 1.0 0.76505532392946469285100297395934 -1.0 -1.0 1.0 -1.0 -0.76505532392946469285100297395934 1.0 -1.0 -0.28523151648064509631415099404088 1.0 -1.0 0.28523151648064509631415099404088 1.0 -1.0 0.76505532392946469285100297395934 1.0 -1.0 1.0 1.0 -1.0 -0.8825276619647323464255014869795 -0.8825276619647323464255014869795 -0.765055323929464692851002973959 -0.57774997340654085459594207839922 -0.8825276619647323464255014869795 -0.765055323929464692851002973959 0.0 -0.8825276619647323464255014869795 -0.765055323929464692851002973959 0.57774997340654085459594207839922 -0.8825276619647323464255014869795 -0.765055323929464692851002973959 0.8825276619647323464255014869795 -0.8825276619647323464255014869795 -0.765055323929464692851002973959 -0.8825276619647323464255014869795 -0.57774997340654085459594207839922 -0.765055323929464692851002973959 -0.57774997340654085459594207839922 -0.57774997340654085459594207839922 -0.765055323929464692851002973959 0.0 -0.57774997340654085459594207839922 -0.765055323929464692851002973959 0.57774997340654085459594207839922 -0.57774997340654085459594207839922 -0.765055323929464692851002973959 0.8825276619647323464255014869795 -0.57774997340654085459594207839922 -0.765055323929464692851002973959 -0.8825276619647323464255014869795 0.0 -0.765055323929464692851002973959 -0.57774997340654085459594207839922 0.0 -0.765055323929464692851002973959 0.0 0.0 -0.765055323929464692851002973959 0.57774997340654085459594207839922 0.0 -0.765055323929464692851002973959 0.8825276619647323464255014869795 0.0 -0.765055323929464692851002973959 -0.8825276619647323464255014869795 0.57774997340654085459594207839922 -0.765055323929464692851002973959 -0.57774997340654085459594207839922 0.57774997340654085459594207839922 -0.765055323929464692851002973959 0.0 0.57774997340654085459594207839922 -0.765055323929464692851002973959 0.57774997340654085459594207839922 0.57774997340654085459594207839922 -0.765055323929464692851002973959 0.8825276619647323464255014869795 0.57774997340654085459594207839922 -0.765055323929464692851002973959 -0.8825276619647323464255014869795 0.8825276619647323464255014869795 -0.765055323929464692851002973959 -0.57774997340654085459594207839922 0.8825276619647323464255014869795 -0.765055323929464692851002973959 0.0 0.8825276619647323464255014869795 -0.765055323929464692851002973959 0.57774997340654085459594207839922 0.8825276619647323464255014869795 -0.765055323929464692851002973959 0.8825276619647323464255014869795 0.8825276619647323464255014869795 -0.765055323929464692851002973959 -0.6426157582403225481570754970205 -0.6426157582403225481570754970205 -0.285231516480645096314150994041 -0.2873865037675863709607517267056 -0.6426157582403225481570754970205 -0.285231516480645096314150994041 0.2873865037675863709607517267056 -0.6426157582403225481570754970205 -0.285231516480645096314150994041 0.6426157582403225481570754970205 -0.6426157582403225481570754970205 -0.285231516480645096314150994041 -0.6426157582403225481570754970205 -0.2873865037675863709607517267056 -0.285231516480645096314150994041 -0.2873865037675863709607517267056 -0.2873865037675863709607517267056 -0.285231516480645096314150994041 0.2873865037675863709607517267056 -0.2873865037675863709607517267056 -0.285231516480645096314150994041 0.6426157582403225481570754970205 -0.2873865037675863709607517267056 -0.285231516480645096314150994041 -0.6426157582403225481570754970205 0.2873865037675863709607517267056 -0.285231516480645096314150994041 -0.2873865037675863709607517267056 0.2873865037675863709607517267056 -0.285231516480645096314150994041 0.2873865037675863709607517267056 0.2873865037675863709607517267056 -0.285231516480645096314150994041 0.6426157582403225481570754970205 0.2873865037675863709607517267056 -0.285231516480645096314150994041 -0.6426157582403225481570754970205 0.6426157582403225481570754970205 -0.285231516480645096314150994041 -0.2873865037675863709607517267056 0.6426157582403225481570754970205 -0.285231516480645096314150994041 0.2873865037675863709607517267056 0.6426157582403225481570754970205 -0.285231516480645096314150994041 0.6426157582403225481570754970205 0.6426157582403225481570754970205 -0.285231516480645096314150994041 -0.3573842417596774518429245029795 -0.3573842417596774518429245029795 0.285231516480645096314150994041 0.0 -0.3573842417596774518429245029795 0.285231516480645096314150994041 0.3573842417596774518429245029795 -0.3573842417596774518429245029795 0.285231516480645096314150994041 -0.3573842417596774518429245029795 0.0 0.285231516480645096314150994041 0.0 0.0 0.285231516480645096314150994041 0.3573842417596774518429245029795 0.0 0.285231516480645096314150994041 -0.3573842417596774518429245029795 0.3573842417596774518429245029795 0.285231516480645096314150994041 0.0 0.3573842417596774518429245029795 0.285231516480645096314150994041 0.3573842417596774518429245029795 0.3573842417596774518429245029795 0.285231516480645096314150994041 -0.1174723380352676535744985130205 -0.1174723380352676535744985130205 0.765055323929464692851002973959 0.1174723380352676535744985130205 -0.1174723380352676535744985130205 0.765055323929464692851002973959 -0.1174723380352676535744985130205 0.1174723380352676535744985130205 0.765055323929464692851002973959 0.1174723380352676535744985130205 0.1174723380352676535744985130205 0.765055323929464692851002973959 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-n14-su.txt000066400000000000000000000021111277740313300227710ustar00rootroot00000000000000-0.68729833462074168851792653997805 -0.68729833462074168851792653997805 -0.774596669241483377035853079956 0.0 -0.68729833462074168851792653997805 -0.774596669241483377035853079956 0.68729833462074168851792653997805 -0.68729833462074168851792653997805 -0.774596669241483377035853079956 -0.68729833462074168851792653997805 0.0 -0.774596669241483377035853079956 0.0 0.0 -0.774596669241483377035853079956 0.68729833462074168851792653997805 0.0 -0.774596669241483377035853079956 -0.68729833462074168851792653997805 0.68729833462074168851792653997805 -0.774596669241483377035853079956 0.0 0.68729833462074168851792653997805 -0.774596669241483377035853079956 0.68729833462074168851792653997805 0.68729833462074168851792653997805 -0.774596669241483377035853079956 -0.28867513459481288225457439025098 -0.28867513459481288225457439025098 0.0 0.28867513459481288225457439025098 -0.28867513459481288225457439025098 0.0 -0.28867513459481288225457439025098 0.28867513459481288225457439025098 0.0 0.28867513459481288225457439025098 0.28867513459481288225457439025098 0.0 0.0 0.0 0.774596669241483377035853079956 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-n140-su.txt000066400000000000000000000316061277740313300230640ustar00rootroot00000000000000-0.92495687080719396185508922543428 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.0 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.39551799786781470062813793735776 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.72266215055034315010683579313175 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.92495687080719396185508922543428 -0.92495687080719396185508922543428 -0.949107912342758524526189684048 -0.92495687080719396185508922543428 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.0 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.39551799786781470062813793735776 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.72266215055034315010683579313175 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.92495687080719396185508922543428 -0.72266215055034315010683579313175 -0.949107912342758524526189684048 -0.92495687080719396185508922543428 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.0 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.39551799786781470062813793735776 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.72266215055034315010683579313175 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.92495687080719396185508922543428 -0.39551799786781470062813793735776 -0.949107912342758524526189684048 -0.92495687080719396185508922543428 0.0 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 0.0 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 0.0 -0.949107912342758524526189684048 0.0 0.0 -0.949107912342758524526189684048 0.39551799786781470062813793735776 0.0 -0.949107912342758524526189684048 0.72266215055034315010683579313175 0.0 -0.949107912342758524526189684048 0.92495687080719396185508922543428 0.0 -0.949107912342758524526189684048 -0.92495687080719396185508922543428 0.39551799786781470062813793735776 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 0.39551799786781470062813793735776 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.0 0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.39551799786781470062813793735776 0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.72266215055034315010683579313175 0.39551799786781470062813793735776 -0.949107912342758524526189684048 0.92495687080719396185508922543428 0.39551799786781470062813793735776 -0.949107912342758524526189684048 -0.92495687080719396185508922543428 0.72266215055034315010683579313175 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 0.72266215055034315010683579313175 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.0 0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.39551799786781470062813793735776 0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.72266215055034315010683579313175 0.72266215055034315010683579313175 -0.949107912342758524526189684048 0.92495687080719396185508922543428 0.72266215055034315010683579313175 -0.949107912342758524526189684048 -0.92495687080719396185508922543428 0.92495687080719396185508922543428 -0.949107912342758524526189684048 -0.72266215055034315010683579313175 0.92495687080719396185508922543428 -0.949107912342758524526189684048 -0.39551799786781470062813793735776 0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.0 0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.39551799786781470062813793735776 0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.72266215055034315010683579313175 0.92495687080719396185508922543428 -0.949107912342758524526189684048 0.92495687080719396185508922543428 0.92495687080719396185508922543428 -0.949107912342758524526189684048 -0.81196236930275336194351944549804 -0.81196236930275336194351944549804 -0.741531185599394439863864773281 -0.57575838337102091541693111639808 -0.81196236930275336194351944549804 -0.741531185599394439863864773281 -0.20778137702311621712936175898226 -0.81196236930275336194351944549804 -0.741531185599394439863864773281 0.20778137702311621712936175898226 -0.81196236930275336194351944549804 -0.741531185599394439863864773281 0.57575838337102091541693111639808 -0.81196236930275336194351944549804 -0.741531185599394439863864773281 0.81196236930275336194351944549804 -0.81196236930275336194351944549804 -0.741531185599394439863864773281 -0.81196236930275336194351944549804 -0.57575838337102091541693111639808 -0.741531185599394439863864773281 -0.57575838337102091541693111639808 -0.57575838337102091541693111639808 -0.741531185599394439863864773281 -0.20778137702311621712936175898226 -0.57575838337102091541693111639808 -0.741531185599394439863864773281 0.20778137702311621712936175898226 -0.57575838337102091541693111639808 -0.741531185599394439863864773281 0.57575838337102091541693111639808 -0.57575838337102091541693111639808 -0.741531185599394439863864773281 0.81196236930275336194351944549804 -0.57575838337102091541693111639808 -0.741531185599394439863864773281 -0.81196236930275336194351944549804 -0.20778137702311621712936175898226 -0.741531185599394439863864773281 -0.57575838337102091541693111639808 -0.20778137702311621712936175898226 -0.741531185599394439863864773281 -0.20778137702311621712936175898226 -0.20778137702311621712936175898226 -0.741531185599394439863864773281 0.20778137702311621712936175898226 -0.20778137702311621712936175898226 -0.741531185599394439863864773281 0.57575838337102091541693111639808 -0.20778137702311621712936175898226 -0.741531185599394439863864773281 0.81196236930275336194351944549804 -0.20778137702311621712936175898226 -0.741531185599394439863864773281 -0.81196236930275336194351944549804 0.20778137702311621712936175898226 -0.741531185599394439863864773281 -0.57575838337102091541693111639808 0.20778137702311621712936175898226 -0.741531185599394439863864773281 -0.20778137702311621712936175898226 0.20778137702311621712936175898226 -0.741531185599394439863864773281 0.20778137702311621712936175898226 0.20778137702311621712936175898226 -0.741531185599394439863864773281 0.57575838337102091541693111639808 0.20778137702311621712936175898226 -0.741531185599394439863864773281 0.81196236930275336194351944549804 0.20778137702311621712936175898226 -0.741531185599394439863864773281 -0.81196236930275336194351944549804 0.57575838337102091541693111639808 -0.741531185599394439863864773281 -0.57575838337102091541693111639808 0.57575838337102091541693111639808 -0.741531185599394439863864773281 -0.20778137702311621712936175898226 0.57575838337102091541693111639808 -0.741531185599394439863864773281 0.20778137702311621712936175898226 0.57575838337102091541693111639808 -0.741531185599394439863864773281 0.57575838337102091541693111639808 0.57575838337102091541693111639808 -0.741531185599394439863864773281 0.81196236930275336194351944549804 0.57575838337102091541693111639808 -0.741531185599394439863864773281 -0.81196236930275336194351944549804 0.81196236930275336194351944549804 -0.741531185599394439863864773281 -0.57575838337102091541693111639808 0.81196236930275336194351944549804 -0.741531185599394439863864773281 -0.20778137702311621712936175898226 0.81196236930275336194351944549804 -0.741531185599394439863864773281 0.20778137702311621712936175898226 0.81196236930275336194351944549804 -0.741531185599394439863864773281 0.57575838337102091541693111639808 0.81196236930275336194351944549804 -0.741531185599394439863864773281 0.81196236930275336194351944549804 0.81196236930275336194351944549804 -0.741531185599394439863864773281 -0.63697427134439376212897976534774 -0.63697427134439376212897976534774 -0.405845151377397166906606412077 -0.37850223438880333158806694077624 -0.63697427134439376212897976534774 -0.405845151377397166906606412077 0.0 -0.63697427134439376212897976534774 -0.405845151377397166906606412077 0.37850223438880333158806694077624 -0.63697427134439376212897976534774 -0.405845151377397166906606412077 0.63697427134439376212897976534774 -0.63697427134439376212897976534774 -0.405845151377397166906606412077 -0.63697427134439376212897976534774 -0.37850223438880333158806694077624 -0.405845151377397166906606412077 -0.37850223438880333158806694077624 -0.37850223438880333158806694077624 -0.405845151377397166906606412077 0.0 -0.37850223438880333158806694077624 -0.405845151377397166906606412077 0.37850223438880333158806694077624 -0.37850223438880333158806694077624 -0.405845151377397166906606412077 0.63697427134439376212897976534774 -0.37850223438880333158806694077624 -0.405845151377397166906606412077 -0.63697427134439376212897976534774 0.0 -0.405845151377397166906606412077 -0.37850223438880333158806694077624 0.0 -0.405845151377397166906606412077 0.0 0.0 -0.405845151377397166906606412077 0.37850223438880333158806694077624 0.0 -0.405845151377397166906606412077 0.63697427134439376212897976534774 0.0 -0.405845151377397166906606412077 -0.63697427134439376212897976534774 0.37850223438880333158806694077624 -0.405845151377397166906606412077 -0.37850223438880333158806694077624 0.37850223438880333158806694077624 -0.405845151377397166906606412077 0.0 0.37850223438880333158806694077624 -0.405845151377397166906606412077 0.37850223438880333158806694077624 0.37850223438880333158806694077624 -0.405845151377397166906606412077 0.63697427134439376212897976534774 0.37850223438880333158806694077624 -0.405845151377397166906606412077 -0.63697427134439376212897976534774 0.63697427134439376212897976534774 -0.405845151377397166906606412077 -0.37850223438880333158806694077624 0.63697427134439376212897976534774 -0.405845151377397166906606412077 0.0 0.63697427134439376212897976534774 -0.405845151377397166906606412077 0.37850223438880333158806694077624 0.63697427134439376212897976534774 -0.405845151377397166906606412077 0.63697427134439376212897976534774 0.63697427134439376212897976534774 -0.405845151377397166906606412077 -0.4305681557970262876119732444464 -0.4305681557970262876119732444464 0.0 -0.16999052179242813240133287955162 -0.4305681557970262876119732444464 0.0 0.16999052179242813240133287955162 -0.4305681557970262876119732444464 0.0 0.4305681557970262876119732444464 -0.4305681557970262876119732444464 0.0 -0.4305681557970262876119732444464 -0.16999052179242813240133287955162 0.0 -0.16999052179242813240133287955162 -0.16999052179242813240133287955162 0.0 0.16999052179242813240133287955162 -0.16999052179242813240133287955162 0.0 0.4305681557970262876119732444464 -0.16999052179242813240133287955162 0.0 -0.4305681557970262876119732444464 0.16999052179242813240133287955162 0.0 -0.16999052179242813240133287955162 0.16999052179242813240133287955162 0.0 0.16999052179242813240133287955162 0.16999052179242813240133287955162 0.0 0.4305681557970262876119732444464 0.16999052179242813240133287955162 0.0 -0.4305681557970262876119732444464 0.4305681557970262876119732444464 0.0 -0.16999052179242813240133287955162 0.4305681557970262876119732444464 0.0 0.16999052179242813240133287955162 0.4305681557970262876119732444464 0.0 0.4305681557970262876119732444464 0.4305681557970262876119732444464 0.0 -0.23011518337837295597585892553524 -0.23011518337837295597585892553524 0.405845151377397166906606412077 0.0 -0.23011518337837295597585892553524 0.405845151377397166906606412077 0.23011518337837295597585892553524 -0.23011518337837295597585892553524 0.405845151377397166906606412077 -0.23011518337837295597585892553524 0.0 0.405845151377397166906606412077 0.0 0.0 0.405845151377397166906606412077 0.23011518337837295597585892553524 0.0 0.405845151377397166906606412077 -0.23011518337837295597585892553524 0.23011518337837295597585892553524 0.405845151377397166906606412077 0.0 0.23011518337837295597585892553524 0.405845151377397166906606412077 0.23011518337837295597585892553524 0.23011518337837295597585892553524 0.405845151377397166906606412077 -0.074613519785656520219990731409954 -0.074613519785656520219990731409954 0.741531185599394439863864773281 0.074613519785656520219990731409954 -0.074613519785656520219990731409954 0.741531185599394439863864773281 -0.074613519785656520219990731409954 0.074613519785656520219990731409954 0.741531185599394439863864773281 0.074613519785656520219990731409954 0.074613519785656520219990731409954 0.741531185599394439863864773281 0.0 0.0 0.949107912342758524526189684048 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-n30-su.txt000066400000000000000000000055151277740313300230020ustar00rootroot00000000000000-0.80134602936993089145682175381814 -0.80134602936993089145682175381814 -0.861136311594052575223946488893 -0.31637553273470810930449057498767 -0.80134602936993089145682175381814 -0.861136311594052575223946488893 0.31637553273470810930449057498767 -0.80134602936993089145682175381814 -0.861136311594052575223946488893 0.80134602936993089145682175381814 -0.80134602936993089145682175381814 -0.861136311594052575223946488893 -0.80134602936993089145682175381814 -0.31637553273470810930449057498767 -0.861136311594052575223946488893 -0.31637553273470810930449057498767 -0.31637553273470810930449057498767 -0.861136311594052575223946488893 0.31637553273470810930449057498767 -0.31637553273470810930449057498767 -0.861136311594052575223946488893 0.80134602936993089145682175381814 -0.31637553273470810930449057498767 -0.861136311594052575223946488893 -0.80134602936993089145682175381814 0.31637553273470810930449057498767 -0.861136311594052575223946488893 -0.31637553273470810930449057498767 0.31637553273470810930449057498767 -0.861136311594052575223946488893 0.31637553273470810930449057498767 0.31637553273470810930449057498767 -0.861136311594052575223946488893 0.80134602936993089145682175381814 0.31637553273470810930449057498767 -0.861136311594052575223946488893 -0.80134602936993089145682175381814 0.80134602936993089145682175381814 -0.861136311594052575223946488893 -0.31637553273470810930449057498767 0.80134602936993089145682175381814 -0.861136311594052575223946488893 0.31637553273470810930449057498767 0.80134602936993089145682175381814 -0.861136311594052575223946488893 0.80134602936993089145682175381814 0.80134602936993089145682175381814 -0.861136311594052575223946488893 -0.51897242660377831456441228185075 -0.51897242660377831456441228185075 -0.339981043584856264802665759103 0.0 -0.51897242660377831456441228185075 -0.339981043584856264802665759103 0.51897242660377831456441228185075 -0.51897242660377831456441228185075 -0.339981043584856264802665759103 -0.51897242660377831456441228185075 0.0 -0.339981043584856264802665759103 0.0 0.0 -0.339981043584856264802665759103 0.51897242660377831456441228185075 0.0 -0.339981043584856264802665759103 -0.51897242660377831456441228185075 0.51897242660377831456441228185075 -0.339981043584856264802665759103 0.0 0.51897242660377831456441228185075 -0.339981043584856264802665759103 0.51897242660377831456441228185075 0.51897242660377831456441228185075 -0.339981043584856264802665759103 -0.19053106107826955519529893539417 -0.19053106107826955519529893539417 0.339981043584856264802665759103 0.19053106107826955519529893539417 -0.19053106107826955519529893539417 0.339981043584856264802665759103 -0.19053106107826955519529893539417 0.19053106107826955519529893539417 0.339981043584856264802665759103 0.19053106107826955519529893539417 0.19053106107826955519529893539417 0.339981043584856264802665759103 0.0 0.0 0.861136311594052575223946488893 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-n5-su.txt000066400000000000000000000007151277740313300227210ustar00rootroot00000000000000-0.45534180126147954892124105691766 -0.45534180126147954892124105691766 -0.577350269189625764509148780502 0.45534180126147954892124105691766 -0.45534180126147954892124105691766 -0.577350269189625764509148780502 -0.45534180126147954892124105691766 0.45534180126147954892124105691766 -0.577350269189625764509148780502 0.45534180126147954892124105691766 0.45534180126147954892124105691766 -0.577350269189625764509148780502 0.0 0.0 0.577350269189625764509148780502 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-n55-su.txt000066400000000000000000000114351277740313300230070ustar00rootroot00000000000000-0.86367087956204240083979312578209 -0.86367087956204240083979312578209 -0.906179845938663992797626878299 -0.51320967328997484035675336941002 -0.86367087956204240083979312578209 -0.906179845938663992797626878299 0.0 -0.86367087956204240083979312578209 -0.906179845938663992797626878299 0.51320967328997484035675336941002 -0.86367087956204240083979312578209 -0.906179845938663992797626878299 0.86367087956204240083979312578209 -0.86367087956204240083979312578209 -0.906179845938663992797626878299 -0.86367087956204240083979312578209 -0.51320967328997484035675336941002 -0.906179845938663992797626878299 -0.51320967328997484035675336941002 -0.51320967328997484035675336941002 -0.906179845938663992797626878299 0.0 -0.51320967328997484035675336941002 -0.906179845938663992797626878299 0.51320967328997484035675336941002 -0.51320967328997484035675336941002 -0.906179845938663992797626878299 0.86367087956204240083979312578209 -0.51320967328997484035675336941002 -0.906179845938663992797626878299 -0.86367087956204240083979312578209 0.0 -0.906179845938663992797626878299 -0.51320967328997484035675336941002 0.0 -0.906179845938663992797626878299 0.0 0.0 -0.906179845938663992797626878299 0.51320967328997484035675336941002 0.0 -0.906179845938663992797626878299 0.86367087956204240083979312578209 0.0 -0.906179845938663992797626878299 -0.86367087956204240083979312578209 0.51320967328997484035675336941002 -0.906179845938663992797626878299 -0.51320967328997484035675336941002 0.51320967328997484035675336941002 -0.906179845938663992797626878299 0.0 0.51320967328997484035675336941002 -0.906179845938663992797626878299 0.51320967328997484035675336941002 0.51320967328997484035675336941002 -0.906179845938663992797626878299 0.86367087956204240083979312578209 0.51320967328997484035675336941002 -0.906179845938663992797626878299 -0.86367087956204240083979312578209 0.86367087956204240083979312578209 -0.906179845938663992797626878299 -0.51320967328997484035675336941002 0.86367087956204240083979312578209 -0.906179845938663992797626878299 0.0 0.86367087956204240083979312578209 -0.906179845938663992797626878299 0.51320967328997484035675336941002 0.86367087956204240083979312578209 -0.906179845938663992797626878299 0.86367087956204240083979312578209 0.86367087956204240083979312578209 -0.906179845938663992797626878299 -0.66241589360252730636068916495465 -0.66241589360252730636068916495465 -0.5384693101056830910363144207 -0.26152520078650199586996701103501 -0.66241589360252730636068916495465 -0.5384693101056830910363144207 0.26152520078650199586996701103501 -0.66241589360252730636068916495465 -0.5384693101056830910363144207 0.66241589360252730636068916495465 -0.66241589360252730636068916495465 -0.5384693101056830910363144207 -0.66241589360252730636068916495465 -0.26152520078650199586996701103501 -0.5384693101056830910363144207 -0.26152520078650199586996701103501 -0.26152520078650199586996701103501 -0.5384693101056830910363144207 0.26152520078650199586996701103501 -0.26152520078650199586996701103501 -0.5384693101056830910363144207 0.66241589360252730636068916495465 -0.26152520078650199586996701103501 -0.5384693101056830910363144207 -0.66241589360252730636068916495465 0.26152520078650199586996701103501 -0.5384693101056830910363144207 -0.26152520078650199586996701103501 0.26152520078650199586996701103501 -0.5384693101056830910363144207 0.26152520078650199586996701103501 0.26152520078650199586996701103501 -0.5384693101056830910363144207 0.66241589360252730636068916495465 0.26152520078650199586996701103501 -0.5384693101056830910363144207 -0.66241589360252730636068916495465 0.66241589360252730636068916495465 -0.5384693101056830910363144207 -0.26152520078650199586996701103501 0.66241589360252730636068916495465 -0.5384693101056830910363144207 0.26152520078650199586996701103501 0.66241589360252730636068916495465 -0.5384693101056830910363144207 0.66241589360252730636068916495465 0.66241589360252730636068916495465 -0.5384693101056830910363144207 -0.38729833462074168851792653997824 -0.38729833462074168851792653997824 0.0 0.0 -0.38729833462074168851792653997824 0.0 0.38729833462074168851792653997824 -0.38729833462074168851792653997824 0.0 -0.38729833462074168851792653997824 0.0 0.0 0.0 0.0 0.0 0.38729833462074168851792653997824 0.0 0.0 -0.38729833462074168851792653997824 0.38729833462074168851792653997824 0.0 0.0 0.38729833462074168851792653997824 0.0 0.38729833462074168851792653997824 0.38729833462074168851792653997824 0.0 -0.13323243402487877943853854574228 -0.13323243402487877943853854574228 0.5384693101056830910363144207 0.13323243402487877943853854574228 -0.13323243402487877943853854574228 0.5384693101056830910363144207 -0.13323243402487877943853854574228 0.13323243402487877943853854574228 0.5384693101056830910363144207 0.13323243402487877943853854574228 0.13323243402487877943853854574228 0.5384693101056830910363144207 0.0 0.0 0.906179845938663992797626878299 pyfr-1.5.0/pyfr/quadrules/pyr/gauss-legendre-n91-su.txt000066400000000000000000000213711277740313300230070ustar00rootroot00000000000000-0.90098445456070718456903746418958 -0.90098445456070718456903746418958 -0.932469514203152027812301554494 -0.63888349092551319488992032574448 -0.90098445456070718456903746418958 -0.932469514203152027812301554494 -0.23056215130487353255760522304419 -0.90098445456070718456903746418958 -0.932469514203152027812301554494 0.23056215130487353255760522304419 -0.90098445456070718456903746418958 -0.932469514203152027812301554494 0.63888349092551319488992032574448 -0.90098445456070718456903746418958 -0.932469514203152027812301554494 0.90098445456070718456903746418958 -0.90098445456070718456903746418958 -0.932469514203152027812301554494 -0.90098445456070718456903746418958 -0.63888349092551319488992032574448 -0.932469514203152027812301554494 -0.63888349092551319488992032574448 -0.63888349092551319488992032574448 -0.932469514203152027812301554494 -0.23056215130487353255760522304419 -0.63888349092551319488992032574448 -0.932469514203152027812301554494 0.23056215130487353255760522304419 -0.63888349092551319488992032574448 -0.932469514203152027812301554494 0.63888349092551319488992032574448 -0.63888349092551319488992032574448 -0.932469514203152027812301554494 0.90098445456070718456903746418958 -0.63888349092551319488992032574448 -0.932469514203152027812301554494 -0.90098445456070718456903746418958 -0.23056215130487353255760522304419 -0.932469514203152027812301554494 -0.63888349092551319488992032574448 -0.23056215130487353255760522304419 -0.932469514203152027812301554494 -0.23056215130487353255760522304419 -0.23056215130487353255760522304419 -0.932469514203152027812301554494 0.23056215130487353255760522304419 -0.23056215130487353255760522304419 -0.932469514203152027812301554494 0.63888349092551319488992032574448 -0.23056215130487353255760522304419 -0.932469514203152027812301554494 0.90098445456070718456903746418958 -0.23056215130487353255760522304419 -0.932469514203152027812301554494 -0.90098445456070718456903746418958 0.23056215130487353255760522304419 -0.932469514203152027812301554494 -0.63888349092551319488992032574448 0.23056215130487353255760522304419 -0.932469514203152027812301554494 -0.23056215130487353255760522304419 0.23056215130487353255760522304419 -0.932469514203152027812301554494 0.23056215130487353255760522304419 0.23056215130487353255760522304419 -0.932469514203152027812301554494 0.63888349092551319488992032574448 0.23056215130487353255760522304419 -0.932469514203152027812301554494 0.90098445456070718456903746418958 0.23056215130487353255760522304419 -0.932469514203152027812301554494 -0.90098445456070718456903746418958 0.63888349092551319488992032574448 -0.932469514203152027812301554494 -0.63888349092551319488992032574448 0.63888349092551319488992032574448 -0.932469514203152027812301554494 -0.23056215130487353255760522304419 0.63888349092551319488992032574448 -0.932469514203152027812301554494 0.23056215130487353255760522304419 0.63888349092551319488992032574448 -0.932469514203152027812301554494 0.63888349092551319488992032574448 0.63888349092551319488992032574448 -0.932469514203152027812301554494 0.90098445456070718456903746418958 0.63888349092551319488992032574448 -0.932469514203152027812301554494 -0.90098445456070718456903746418958 0.90098445456070718456903746418958 -0.932469514203152027812301554494 -0.63888349092551319488992032574448 0.90098445456070718456903746418958 -0.932469514203152027812301554494 -0.23056215130487353255760522304419 0.90098445456070718456903746418958 -0.932469514203152027812301554494 0.23056215130487353255760522304419 0.90098445456070718456903746418958 -0.932469514203152027812301554494 0.63888349092551319488992032574448 0.90098445456070718456903746418958 -0.932469514203152027812301554494 0.90098445456070718456903746418958 0.90098445456070718456903746418958 -0.932469514203152027812301554494 -0.75267723294993105514600367317419 -0.75267723294993105514600367317419 -0.66120938646626451366139959502 -0.44725513613578726688451683556166 -0.75267723294993105514600367317419 -0.66120938646626451366139959502 0.0 -0.75267723294993105514600367317419 -0.66120938646626451366139959502 0.44725513613578726688451683556166 -0.75267723294993105514600367317419 -0.66120938646626451366139959502 0.75267723294993105514600367317419 -0.75267723294993105514600367317419 -0.66120938646626451366139959502 -0.75267723294993105514600367317419 -0.44725513613578726688451683556166 -0.66120938646626451366139959502 -0.44725513613578726688451683556166 -0.44725513613578726688451683556166 -0.66120938646626451366139959502 0.0 -0.44725513613578726688451683556166 -0.66120938646626451366139959502 0.44725513613578726688451683556166 -0.44725513613578726688451683556166 -0.66120938646626451366139959502 0.75267723294993105514600367317419 -0.44725513613578726688451683556166 -0.66120938646626451366139959502 -0.75267723294993105514600367317419 0.0 -0.66120938646626451366139959502 -0.44725513613578726688451683556166 0.0 -0.66120938646626451366139959502 0.0 0.0 -0.66120938646626451366139959502 0.44725513613578726688451683556166 0.0 -0.66120938646626451366139959502 0.75267723294993105514600367317419 0.0 -0.66120938646626451366139959502 -0.75267723294993105514600367317419 0.44725513613578726688451683556166 -0.66120938646626451366139959502 -0.44725513613578726688451683556166 0.44725513613578726688451683556166 -0.66120938646626451366139959502 0.0 0.44725513613578726688451683556166 -0.66120938646626451366139959502 0.44725513613578726688451683556166 0.44725513613578726688451683556166 -0.66120938646626451366139959502 0.75267723294993105514600367317419 0.44725513613578726688451683556166 -0.66120938646626451366139959502 -0.75267723294993105514600367317419 0.75267723294993105514600367317419 -0.66120938646626451366139959502 -0.44725513613578726688451683556166 0.75267723294993105514600367317419 -0.66120938646626451366139959502 0.0 0.75267723294993105514600367317419 -0.66120938646626451366139959502 0.44725513613578726688451683556166 0.75267723294993105514600367317419 -0.66120938646626451366139959502 0.75267723294993105514600367317419 0.75267723294993105514600367317419 -0.66120938646626451366139959502 -0.53330997868665582109959301014506 -0.53330997868665582109959301014506 -0.238619186083196908630501721681 -0.21055352174439528022805511167285 -0.53330997868665582109959301014506 -0.238619186083196908630501721681 0.21055352174439528022805511167285 -0.53330997868665582109959301014506 -0.238619186083196908630501721681 0.53330997868665582109959301014506 -0.53330997868665582109959301014506 -0.238619186083196908630501721681 -0.53330997868665582109959301014506 -0.21055352174439528022805511167285 -0.238619186083196908630501721681 -0.21055352174439528022805511167285 -0.21055352174439528022805511167285 -0.238619186083196908630501721681 0.21055352174439528022805511167285 -0.21055352174439528022805511167285 -0.238619186083196908630501721681 0.53330997868665582109959301014506 -0.21055352174439528022805511167285 -0.238619186083196908630501721681 -0.53330997868665582109959301014506 0.21055352174439528022805511167285 -0.238619186083196908630501721681 -0.21055352174439528022805511167285 0.21055352174439528022805511167285 -0.238619186083196908630501721681 0.21055352174439528022805511167285 0.21055352174439528022805511167285 -0.238619186083196908630501721681 0.53330997868665582109959301014506 0.21055352174439528022805511167285 -0.238619186083196908630501721681 -0.53330997868665582109959301014506 0.53330997868665582109959301014506 -0.238619186083196908630501721681 -0.21055352174439528022805511167285 0.53330997868665582109959301014506 -0.238619186083196908630501721681 0.21055352174439528022805511167285 0.53330997868665582109959301014506 -0.238619186083196908630501721681 0.53330997868665582109959301014506 0.53330997868665582109959301014506 -0.238619186083196908630501721681 -0.29488152124216266392932603466688 -0.29488152124216266392932603466688 0.238619186083196908630501721681 0.0 -0.29488152124216266392932603466688 0.238619186083196908630501721681 0.29488152124216266392932603466688 -0.29488152124216266392932603466688 0.238619186083196908630501721681 -0.29488152124216266392932603466688 0.0 0.238619186083196908630501721681 0.0 0.0 0.238619186083196908630501721681 0.29488152124216266392932603466688 0.0 0.238619186083196908630501721681 -0.29488152124216266392932603466688 0.29488152124216266392932603466688 0.238619186083196908630501721681 0.0 0.29488152124216266392932603466688 0.238619186083196908630501721681 0.29488152124216266392932603466688 0.29488152124216266392932603466688 0.238619186083196908630501721681 -0.097800425961310326356147463997896 -0.097800425961310326356147463997896 0.66120938646626451366139959502 0.097800425961310326356147463997896 -0.097800425961310326356147463997896 0.66120938646626451366139959502 -0.097800425961310326356147463997896 0.097800425961310326356147463997896 0.66120938646626451366139959502 0.097800425961310326356147463997896 0.097800425961310326356147463997896 0.66120938646626451366139959502 0.0 0.0 0.932469514203152027812301554494 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n1-d1-sp.txt000066400000000000000000000002431277740313300237360ustar00rootroot00000000000000 0 0 -0.5 2.6666666666666666666666666666666666667 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n10-d4-sp.txt000066400000000000000000000032561277740313300240300ustar00rootroot00000000000000 0 0 0.35446557777227471722730849524904581806 0.30331168845504517111391728481208001144 0 0 -0.74972609378250711033655604388057044149 0.55168907357213937275730716433358729608 0.6505815563982325146829577797417295398 0 -0.35523170084357268589593075201816127231 0.28353223437153468006819777082540613962 0 0.6505815563982325146829577797417295398 -0.35523170084357268589593075201816127231 0.28353223437153468006819777082540613962 -0.6505815563982325146829577797417295398 0 -0.35523170084357268589593075201816127231 0.28353223437153468006819777082540613962 0 -0.6505815563982325146829577797417295398 -0.35523170084357268589593075201816127231 0.28353223437153468006819777082540613962 0.65796699712169008954533549931479427127 0.65796699712169008954533549931479427127 -0.92150343220236930457646242598412224897 0.16938424178833585063066278355484370017 0.65796699712169008954533549931479427127 -0.65796699712169008954533549931479427127 -0.92150343220236930457646242598412224897 0.16938424178833585063066278355484370017 -0.65796699712169008954533549931479427127 0.65796699712169008954533549931479427127 -0.92150343220236930457646242598412224897 0.16938424178833585063066278355484370017 -0.65796699712169008954533549931479427127 -0.65796699712169008954533549931479427127 -0.92150343220236930457646242598412224897 0.16938424178833585063066278355484370017 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n15-d5-sp.txt000066400000000000000000000050051277740313300240300ustar00rootroot00000000000000 0 0 0.45971576156501338586164265377920811314 0.18249431975770692138374895897213800931 0 0 -0.39919795837246198593385139590712322914 0.45172563864726406056400285032640105704 0 0 -0.99999998701645569241460017355590234925 0.15654542887619877154120304977336547704 0.70652603154632457420722562974792066862 0 -0.75 0.20384344839498724639142514342645843799 0 0.70652603154632457420722562974792066862 -0.75 0.20384344839498724639142514342645843799 -0.70652603154632457420722562974792066862 0 -0.75 0.20384344839498724639142514342645843799 0 -0.70652603154632457420722562974792066862 -0.75 0.20384344839498724639142514342645843799 0.70511712277882760181079385797948261057 0.70511712277882760181079385797948261057 -0.87777618587595407108464357252416911085 0.10578907087905457654220386143818487109 0.70511712277882760181079385797948261057 -0.70511712277882760181079385797948261057 -0.87777618587595407108464357252416911085 0.10578907087905457654220386143818487109 -0.70511712277882760181079385797948261057 0.70511712277882760181079385797948261057 -0.87777618587595407108464357252416911085 0.10578907087905457654220386143818487109 -0.70511712277882760181079385797948261057 -0.70511712277882760181079385797948261057 -0.87777618587595407108464357252416911085 0.10578907087905457654220386143818487109 0.43288286410354097685000790909815143591 0.43288286410354097685000790909815143591 -0.15279732576055038842025517341026975071 0.15934280057233240536079894703404722173 0.43288286410354097685000790909815143591 -0.43288286410354097685000790909815143591 -0.15279732576055038842025517341026975071 0.15934280057233240536079894703404722173 -0.43288286410354097685000790909815143591 0.43288286410354097685000790909815143591 -0.15279732576055038842025517341026975071 0.15934280057233240536079894703404722173 -0.43288286410354097685000790909815143591 -0.43288286410354097685000790909815143591 -0.15279732576055038842025517341026975071 0.15934280057233240536079894703404722173 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n24-d6-sp.txt000066400000000000000000000100101277740313300240210ustar00rootroot00000000000000 0 0 0.61529159538791884731954955103613269638 0.067901049767045421348323914977088073991 0 0 -0.99647238229436073479434618269377000101 0.042809368467176804517723726702995063594 0 0 -0.72347438707253884945296925394581802655 0.31887881187339684620076177026181758884 0 0 -0.15715217612872593659809486760257994179 0.27482845386440493216991697942238502071 0.83459535111470834854355609376418165506 0 -0.80510531794907605316224881154681003606 0.09853490116354529166000184266852321827 0 0.83459535111470834854355609376418165506 -0.80510531794907605316224881154681003606 0.09853490116354529166000184266852321827 -0.83459535111470834854355609376418165506 0 -0.80510531794907605316224881154681003606 0.09853490116354529166000184266852321827 0 -0.83459535111470834854355609376418165506 -0.80510531794907605316224881154681003606 0.09853490116354529166000184266852321827 0.4339254093766990953588290760534534212 0 0.13214918124660180928234184789309315759 0.084233545301795354894729459206933067324 0 0.4339254093766990953588290760534534212 0.13214918124660180928234184789309315759 0.084233545301795354894729459206933067324 -0.4339254093766990953588290760534534212 0 0.13214918124660180928234184789309315759 0.084233545301795354894729459206933067324 0 -0.4339254093766990953588290760534534212 0.13214918124660180928234184789309315759 0.084233545301795354894729459206933067324 0.565680854425675497672813848515505886 0.565680854425675497672813848515505886 -0.94104453830855858213371584535608020131 0.099200345038528745418340651788127467643 0.565680854425675497672813848515505886 -0.565680854425675497672813848515505886 -0.94104453830855858213371584535608020131 0.099200345038528745418340651788127467643 -0.565680854425675497672813848515505886 0.565680854425675497672813848515505886 -0.94104453830855858213371584535608020131 0.099200345038528745418340651788127467643 -0.565680854425675497672813848515505886 -0.565680854425675497672813848515505886 -0.94104453830855858213371584535608020131 0.099200345038528745418340651788127467643 0.49807909178070594245642503041316019049 0.49807909178070594245642503041316019049 -0.47016827357574098280216051103358470857 0.19701969247180494546144986676345270691 0.49807909178070594245642503041316019049 -0.49807909178070594245642503041316019049 -0.47016827357574098280216051103358470857 0.19701969247180494546144986676345270691 -0.49807909178070594245642503041316019049 0.49807909178070594245642503041316019049 -0.47016827357574098280216051103358470857 0.19701969247180494546144986676345270691 -0.49807909178070594245642503041316019049 -0.49807909178070594245642503041316019049 -0.47016827357574098280216051103358470857 0.19701969247180494546144986676345270691 0.95089948721448243656573347456644144515 0.95089948721448243656573347456644144515 -0.90350185873612803037779492533363294921 0.011573761697986328172963248398558769736 0.95089948721448243656573347456644144515 -0.95089948721448243656573347456644144515 -0.90350185873612803037779492533363294921 0.011573761697986328172963248398558769736 -0.95089948721448243656573347456644144515 0.95089948721448243656573347456644144515 -0.90350185873612803037779492533363294921 0.011573761697986328172963248398558769736 -0.95089948721448243656573347456644144515 -0.95089948721448243656573347456644144515 -0.90350185873612803037779492533363294921 0.011573761697986328172963248398558769736 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n31-d7-sp.txt000066400000000000000000000122651277740313300240360ustar00rootroot00000000000000 0 0 -0.99990903958359448324157651569821071245 0.066668205424525275886791453990965274088 0 0 -0.21283424648469159495743047454829830674 0.26808048719971487350508383578016326765 0 0 0.67736556563370307561404794332413479832 0.041885798472046210460725670120584684749 0.86409875978771469746212899147839955436 0 -0.86666666666666666666666666666666666667 0.071178024781341107871720116618075801749 0 0.86409875978771469746212899147839955436 -0.86666666666666666666666666666666666667 0.071178024781341107871720116618075801749 -0.86409875978771469746212899147839955436 0 -0.86666666666666666666666666666666666667 0.071178024781341107871720116618075801749 0 -0.86409875978771469746212899147839955436 -0.86666666666666666666666666666666666667 0.071178024781341107871720116618075801749 0.61721339984836764104437785105599968169 0 -0.33333333333333333333333333333333333333 0.0765625 0 0.61721339984836764104437785105599968169 -0.33333333333333333333333333333333333333 0.0765625 -0.61721339984836764104437785105599968169 0 -0.33333333333333333333333333333333333333 0.0765625 0 -0.61721339984836764104437785105599968169 -0.33333333333333333333333333333333333333 0.0765625 0.35415238086811614472192282023591880504 0.35415238086811614472192282023591880504 -0.74142718092090097274899859132692797362 0.17589383239993943496133030969806235827 0.35415238086811614472192282023591880504 -0.35415238086811614472192282023591880504 -0.74142718092090097274899859132692797362 0.17589383239993943496133030969806235827 -0.35415238086811614472192282023591880504 0.35415238086811614472192282023591880504 -0.74142718092090097274899859132692797362 0.17589383239993943496133030969806235827 -0.35415238086811614472192282023591880504 -0.35415238086811614472192282023591880504 -0.74142718092090097274899859132692797362 0.17589383239993943496133030969806235827 0.80272585010008780509805139967826527905 0.80272585010008780509805139967826527905 -0.8397229396404438938817746892937556123 0.039429701216628418845191891303832420129 0.80272585010008780509805139967826527905 -0.80272585010008780509805139967826527905 -0.8397229396404438938817746892937556123 0.039429701216628418845191891303832420129 -0.80272585010008780509805139967826527905 0.80272585010008780509805139967826527905 -0.8397229396404438938817746892937556123 0.039429701216628418845191891303832420129 -0.80272585010008780509805139967826527905 -0.80272585010008780509805139967826527905 -0.8397229396404438938817746892937556123 0.039429701216628418845191891303832420129 0.25413534686185723866998548790851960044 0.25413534686185723866998548790851960044 0.21103986022119982736889633047207386205 0.078717625851263666944851563183733367932 0.25413534686185723866998548790851960044 -0.25413534686185723866998548790851960044 0.21103986022119982736889633047207386205 0.078717625851263666944851563183733367932 -0.25413534686185723866998548790851960044 0.25413534686185723866998548790851960044 0.21103986022119982736889633047207386205 0.078717625851263666944851563183733367932 -0.25413534686185723866998548790851960044 -0.25413534686185723866998548790851960044 0.21103986022119982736889633047207386205 0.078717625851263666944851563183733367932 0.61430510772078528251050043488178085003 0.61430510772078528251050043488178085003 -0.99999999982048339801908931464259502541 0.035476919918997616432307229513622918413 0.61430510772078528251050043488178085003 -0.61430510772078528251050043488178085003 -0.99999999982048339801908931464259502541 0.035476919918997616432307229513622918413 -0.61430510772078528251050043488178085003 0.61430510772078528251050043488178085003 -0.99999999982048339801908931464259502541 0.035476919918997616432307229513622918413 -0.61430510772078528251050043488178085003 -0.61430510772078528251050043488178085003 -0.99999999982048339801908931464259502541 0.035476919918997616432307229513622918413 0.52483269825437554768220460074528261831 0.52483269825437554768220460074528261831 -0.41891384901080493632836824125506837378 0.095249439724424831648115316376411493553 0.52483269825437554768220460074528261831 -0.52483269825437554768220460074528261831 -0.41891384901080493632836824125506837378 0.095249439724424831648115316376411493553 -0.52483269825437554768220460074528261831 0.52483269825437554768220460074528261831 -0.41891384901080493632836824125506837378 0.095249439724424831648115316376411493553 -0.52483269825437554768220460074528261831 -0.52483269825437554768220460074528261831 -0.41891384901080493632836824125506837378 0.095249439724424831648115316376411493553 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n47-d8-sp.txt000066400000000000000000000206311277740313300240420ustar00rootroot00000000000000 0 0 0.16961086821625198841160807357430296303 0.13184265374874503915150962831580955798 0 0 -0.45709920916162097942096244184174038575 0.23294583850972276008807786158154187047 0 0 -0.8571191395690919692972040925801237448 0.1025615399916185433427056721703912695 0.79609608877425818401350057240825839617 0 -0.99999998535272208389601372955851209324 0.025002825067006628763387217678722243502 0 0.79609608877425818401350057240825839617 -0.99999998535272208389601372955851209324 0.025002825067006628763387217678722243502 -0.79609608877425818401350057240825839617 0 -0.99999998535272208389601372955851209324 0.025002825067006628763387217678722243502 0 -0.79609608877425818401350057240825839617 -0.99999998535272208389601372955851209324 0.025002825067006628763387217678722243502 0.56488895874183987384568871426044651743 0 -0.15563259879788280847417645674822833541 0.043496051243830853021390765401449212594 0 0.56488895874183987384568871426044651743 -0.15563259879788280847417645674822833541 0.043496051243830853021390765401449212594 -0.56488895874183987384568871426044651743 0 -0.15563259879788280847417645674822833541 0.043496051243830853021390765401449212594 0 -0.56488895874183987384568871426044651743 -0.15563259879788280847417645674822833541 0.043496051243830853021390765401449212594 0.75302269354894756094500969219941272468 0 -0.70447200540690062790548707515722730722 0.085972592189522311083702670388617702554 0 0.75302269354894756094500969219941272468 -0.70447200540690062790548707515722730722 0.085972592189522311083702670388617702554 -0.75302269354894756094500969219941272468 0 -0.70447200540690062790548707515722730722 0.085972592189522311083702670388617702554 0 -0.75302269354894756094500969219941272468 -0.70447200540690062790548707515722730722 0.085972592189522311083702670388617702554 0.24657794246228701631399967234303066604 0.24657794246228701631399967234303066604 0.34690569585096941192869185686421558358 0.033693598991694192959947383133729992714 0.24657794246228701631399967234303066604 -0.24657794246228701631399967234303066604 0.34690569585096941192869185686421558358 0.033693598991694192959947383133729992714 -0.24657794246228701631399967234303066604 0.24657794246228701631399967234303066604 0.34690569585096941192869185686421558358 0.033693598991694192959947383133729992714 -0.24657794246228701631399967234303066604 -0.24657794246228701631399967234303066604 0.34690569585096941192869185686421558358 0.033693598991694192959947383133729992714 0.733889532546736034455005667208354524 0.733889532546736034455005667208354524 -0.50885838992749887300910718599394991577 0.016574786736306812829168423699380538904 0.733889532546736034455005667208354524 -0.733889532546736034455005667208354524 -0.50885838992749887300910718599394991577 0.016574786736306812829168423699380538904 -0.733889532546736034455005667208354524 0.733889532546736034455005667208354524 -0.50885838992749887300910718599394991577 0.016574786736306812829168423699380538904 -0.733889532546736034455005667208354524 -0.733889532546736034455005667208354524 -0.50885838992749887300910718599394991577 0.016574786736306812829168423699380538904 8.2682671512759671070733214668120998744e-05 8.2682671512759671070733214668120998744e-05 0.71650072530116328406253461877461140784 0.0069686742230647669915684670235521865055 8.2682671512759671070733214668120998744e-05 -8.2682671512759671070733214668120998744e-05 0.71650072530116328406253461877461140784 0.0069686742230647669915684670235521865055 -8.2682671512759671070733214668120998744e-05 8.2682671512759671070733214668120998744e-05 0.71650072530116328406253461877461140784 0.0069686742230647669915684670235521865055 -8.2682671512759671070733214668120998744e-05 -8.2682671512759671070733214668120998744e-05 0.71650072530116328406253461877461140784 0.0069686742230647669915684670235521865055 0.39899655709522770213204971246835352882 0.39899655709522770213204971246835352882 -0.905193536761024932000392660301831356 0.078199915186776001276629590295086773482 0.39899655709522770213204971246835352882 -0.39899655709522770213204971246835352882 -0.905193536761024932000392660301831356 0.078199915186776001276629590295086773482 -0.39899655709522770213204971246835352882 0.39899655709522770213204971246835352882 -0.905193536761024932000392660301831356 0.078199915186776001276629590295086773482 -0.39899655709522770213204971246835352882 -0.39899655709522770213204971246835352882 -0.905193536761024932000392660301831356 0.078199915186776001276629590295086773482 0.36531241447958999003326854299025213837 0.36531241447958999003326854299025213837 -0.19562858755898781208157405487726925012 0.09695835803779916324529325757517456104 0.36531241447958999003326854299025213837 -0.36531241447958999003326854299025213837 -0.19562858755898781208157405487726925012 0.09695835803779916324529325757517456104 -0.36531241447958999003326854299025213837 0.36531241447958999003326854299025213837 -0.19562858755898781208157405487726925012 0.09695835803779916324529325757517456104 -0.36531241447958999003326854299025213837 -0.36531241447958999003326854299025213837 -0.19562858755898781208157405487726925012 0.09695835803779916324529325757517456104 0.48342524404083818448316048507452071227 0.48342524404083818448316048507452071227 -0.6193703578271817921429725882760024584 0.10928549585578987401418986532517092138 0.48342524404083818448316048507452071227 -0.48342524404083818448316048507452071227 -0.6193703578271817921429725882760024584 0.10928549585578987401418986532517092138 -0.48342524404083818448316048507452071227 0.48342524404083818448316048507452071227 -0.6193703578271817921429725882760024584 0.10928549585578987401418986532517092138 -0.48342524404083818448316048507452071227 -0.48342524404083818448316048507452071227 -0.6193703578271817921429725882760024584 0.10928549585578987401418986532517092138 0.63140479760056088062582891340019355538 0.89485619649153056248689063682197549292 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 0.89485619649153056248689063682197549292 0.63140479760056088062582891340019355538 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 0.63140479760056088062582891340019355538 -0.89485619649153056248689063682197549292 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 -0.89485619649153056248689063682197549292 0.63140479760056088062582891340019355538 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 -0.63140479760056088062582891340019355538 0.89485619649153056248689063682197549292 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 0.89485619649153056248689063682197549292 -0.63140479760056088062582891340019355538 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 -0.63140479760056088062582891340019355538 -0.89485619649153056248689063682197549292 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 -0.89485619649153056248689063682197549292 -0.63140479760056088062582891340019355538 -0.90904839155249779567018573275816306293 0.026838430536177238417907867814423429749 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n5-d2-sp.txt000066400000000000000000000015271277740313300237510ustar00rootroot00000000000000 0 0 0.21658207711955775339238838942231815011 0.60287280353093925911579186632475611728 0.71892105581179616210276971993495767914 0 -0.70932703285428855378369530000365161136 0.51594846578393185188771870008547763735 0 0.71892105581179616210276971993495767914 -0.70932703285428855378369530000365161136 0.51594846578393185188771870008547763735 -0.71892105581179616210276971993495767914 0 -0.70932703285428855378369530000365161136 0.51594846578393185188771870008547763735 0 -0.71892105581179616210276971993495767914 -0.70932703285428855378369530000365161136 0.51594846578393185188771870008547763735 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n6-d3-sp.txt000066400000000000000000000020021277740313300237400ustar00rootroot00000000000000 0 0 0.14285714077213670617734974746312582074 0.67254902379402809443607078852738472107 0 0 -0.99999998864829993678698817507850804299 0.30000001617617323518941867705084375434 0.56108361105873963414196154191891982155 0.56108361105873963414196154191891982155 -0.66666666666666666666666666666666666667 0.42352940667411633426029430027210954782 0.56108361105873963414196154191891982155 -0.56108361105873963414196154191891982155 -0.66666666666666666666666666666666666667 0.42352940667411633426029430027210954782 -0.56108361105873963414196154191891982155 0.56108361105873963414196154191891982155 -0.66666666666666666666666666666666666667 0.42352940667411633426029430027210954782 -0.56108361105873963414196154191891982155 -0.56108361105873963414196154191891982155 -0.66666666666666666666666666666666666667 0.42352940667411633426029430027210954782 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n62-d9-sp.txt000066400000000000000000000251421277740313300240420ustar00rootroot00000000000000 0 0 -0.92570813813698889109129119190081512807 0.085460984360913357764893933078028332729 0 0 0.38840052634065219135681708305790886389 0.063448589186874929695131357848153481143 0.92582009586084253032799389643931359042 0 -0.99999999154974290966555556001355192819 0.011128992807985123067277549928909458533 0 0.92582009586084253032799389643931359042 -0.99999999154974290966555556001355192819 0.011128992807985123067277549928909458533 -0.92582009586084253032799389643931359042 0 -0.99999999154974290966555556001355192819 0.011128992807985123067277549928909458533 0 -0.92582009586084253032799389643931359042 -0.99999999154974290966555556001355192819 0.011128992807985123067277549928909458533 0.67609699211636384672984868113196489501 0 -0.46053643095988580287931352750197363634 0.059450110292314583119663538852454940094 0 0.67609699211636384672984868113196489501 -0.46053643095988580287931352750197363634 0.059450110292314583119663538852454940094 -0.67609699211636384672984868113196489501 0 -0.46053643095988580287931352750197363634 0.059450110292314583119663538852454940094 0 -0.67609699211636384672984868113196489501 -0.46053643095988580287931352750197363634 0.059450110292314583119663538852454940094 0.61633217785092524266810713694367497984 0 -0.83333333333333333333333333333333333333 0.0776747274078750789822277466474486484 0 0.61633217785092524266810713694367497984 -0.83333333333333333333333333333333333333 0.0776747274078750789822277466474486484 -0.61633217785092524266810713694367497984 0 -0.83333333333333333333333333333333333333 0.0776747274078750789822277466474486484 0 -0.61633217785092524266810713694367497984 -0.83333333333333333333333333333333333333 0.0776747274078750789822277466474486484 0.4319711692851802893108753357781180147 0 0.066835620891566889973434395390065117459 0.030778150795469403052702032209364808496 0 0.4319711692851802893108753357781180147 0.066835620891566889973434395390065117459 0.030778150795469403052702032209364808496 -0.4319711692851802893108753357781180147 0 0.066835620891566889973434395390065117459 0.030778150795469403052702032209364808496 0 -0.4319711692851802893108753357781180147 0.066835620891566889973434395390065117459 0.030778150795469403052702032209364808496 0.2418018136307698645699176701173330115 0.2418018136307698645699176701173330115 0.32397601743070136249634461603450683373 0.026934866206292627452016019156950031128 0.2418018136307698645699176701173330115 -0.2418018136307698645699176701173330115 0.32397601743070136249634461603450683373 0.026934866206292627452016019156950031128 -0.2418018136307698645699176701173330115 0.2418018136307698645699176701173330115 0.32397601743070136249634461603450683373 0.026934866206292627452016019156950031128 -0.2418018136307698645699176701173330115 -0.2418018136307698645699176701173330115 0.32397601743070136249634461603450683373 0.026934866206292627452016019156950031128 0.84407916290318983449502858785742636196 0.84407916290318983449502858785742636196 -0.69559058038907269643252446934200271874 0.0054906085371215318653035688791270966898 0.84407916290318983449502858785742636196 -0.84407916290318983449502858785742636196 -0.69559058038907269643252446934200271874 0.0054906085371215318653035688791270966898 -0.84407916290318983449502858785742636196 0.84407916290318983449502858785742636196 -0.69559058038907269643252446934200271874 0.0054906085371215318653035688791270966898 -0.84407916290318983449502858785742636196 -0.84407916290318983449502858785742636196 -0.69559058038907269643252446934200271874 0.0054906085371215318653035688791270966898 0.22796693876082527450191978423554002258 0.22796693876082527450191978423554002258 -0.15546892682110902998061305430650131847 0.091321836708580883183025234669307589456 0.22796693876082527450191978423554002258 -0.22796693876082527450191978423554002258 -0.15546892682110902998061305430650131847 0.091321836708580883183025234669307589456 -0.22796693876082527450191978423554002258 0.22796693876082527450191978423554002258 -0.15546892682110902998061305430650131847 0.091321836708580883183025234669307589456 -0.22796693876082527450191978423554002258 -0.22796693876082527450191978423554002258 -0.15546892682110902998061305430650131847 0.091321836708580883183025234669307589456 0.50278497713501010732851661733402034476 0.50278497713501010732851661733402034476 -0.20647126020221948473530582466409396899 0.034425103045059116731460865162898501905 0.50278497713501010732851661733402034476 -0.50278497713501010732851661733402034476 -0.20647126020221948473530582466409396899 0.034425103045059116731460865162898501905 -0.50278497713501010732851661733402034476 0.50278497713501010732851661733402034476 -0.20647126020221948473530582466409396899 0.034425103045059116731460865162898501905 -0.50278497713501010732851661733402034476 -0.50278497713501010732851661733402034476 -0.20647126020221948473530582466409396899 0.034425103045059116731460865162898501905 0.26050107498343109780824156599994159958 0.26050107498343109780824156599994159958 -0.59835855612565852733392737890318400229 0.098966083060889195749931548220643079817 0.26050107498343109780824156599994159958 -0.26050107498343109780824156599994159958 -0.59835855612565852733392737890318400229 0.098966083060889195749931548220643079817 -0.26050107498343109780824156599994159958 0.26050107498343109780824156599994159958 -0.59835855612565852733392737890318400229 0.098966083060889195749931548220643079817 -0.26050107498343109780824156599994159958 -0.26050107498343109780824156599994159958 -0.59835855612565852733392737890318400229 0.098966083060889195749931548220643079817 0.092695873086724294634409475285537266946 0.092695873086724294634409475285537266946 0.73229074155927557470203809617847092006 0.0059165284766696216483252319063621153113 0.092695873086724294634409475285537266946 -0.092695873086724294634409475285537266946 0.73229074155927557470203809617847092006 0.0059165284766696216483252319063621153113 -0.092695873086724294634409475285537266946 0.092695873086724294634409475285537266946 0.73229074155927557470203809617847092006 0.0059165284766696216483252319063621153113 -0.092695873086724294634409475285537266946 -0.092695873086724294634409475285537266946 0.73229074155927557470203809617847092006 0.0059165284766696216483252319063621153113 0.48321616807064450811403139613908012977 0.48321616807064450811403139613908012977 -0.96099197501517696963244605665802872457 0.042549891029853590361699211197576823164 0.48321616807064450811403139613908012977 -0.48321616807064450811403139613908012977 -0.96099197501517696963244605665802872457 0.042549891029853590361699211197576823164 -0.48321616807064450811403139613908012977 0.48321616807064450811403139613908012977 -0.96099197501517696963244605665802872457 0.042549891029853590361699211197576823164 -0.48321616807064450811403139613908012977 -0.48321616807064450811403139613908012977 -0.96099197501517696963244605665802872457 0.042549891029853590361699211197576823164 0.56718550560823240035320376398524873163 0.56718550560823240035320376398524873163 -0.57366279658687978481813471518028589696 0.061512848339540276373149763598941694174 0.56718550560823240035320376398524873163 -0.56718550560823240035320376398524873163 -0.57366279658687978481813471518028589696 0.061512848339540276373149763598941694174 -0.56718550560823240035320376398524873163 0.56718550560823240035320376398524873163 -0.57366279658687978481813471518028589696 0.061512848339540276373149763598941694174 -0.56718550560823240035320376398524873163 -0.56718550560823240035320376398524873163 -0.57366279658687978481813471518028589696 0.061512848339540276373149763598941694174 0.84639499151387610363269282068500210562 0.84639499151387610363269282068500210562 -0.9693044055039805656571133868955522239 0.01226506819386170482790970630106848162 0.84639499151387610363269282068500210562 -0.84639499151387610363269282068500210562 -0.9693044055039805656571133868955522239 0.01226506819386170482790970630106848162 -0.84639499151387610363269282068500210562 0.84639499151387610363269282068500210562 -0.9693044055039805656571133868955522239 0.01226506819386170482790970630106848162 -0.84639499151387610363269282068500210562 -0.84639499151387610363269282068500210562 -0.9693044055039805656571133868955522239 0.01226506819386170482790970630106848162 0.84717786811774533056315715378413225505 0.4641907129661462762986126522881287914 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 0.4641907129661462762986126522881287914 0.84717786811774533056315715378413225505 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 0.84717786811774533056315715378413225505 -0.4641907129661462762986126522881287914 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 -0.4641907129661462762986126522881287914 0.84717786811774533056315715378413225505 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 -0.84717786811774533056315715378413225505 0.4641907129661462762986126522881287914 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 0.4641907129661462762986126522881287914 -0.84717786811774533056315715378413225505 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 -0.84717786811774533056315715378413225505 -0.4641907129661462762986126522881287914 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 -0.4641907129661462762986126522881287914 -0.84717786811774533056315715378413225505 -0.83333333333333333333333333333333333333 0.035512229189103429193484163602033972206 pyfr-1.5.0/pyfr/quadrules/pyr/witherden-vincent-n83-d10-sp.txt000066400000000000000000000342751277740313300241240ustar00rootroot00000000000000 0 0 0.8335915635582545504216363089082427512 0.0064032713667237888900352396740754404729 0 0 -0.29772638731929483125782053014294599572 0.12510914109270313689497865562091419825 0 0 0.48382713592659987946255767367350514622 0.026257761996077744884993081945201819617 0.9211301560146403583275192188149101662 0 -0.87367680544017104618678473155554592542 0.015139712847816799484708864305781950367 0 0.9211301560146403583275192188149101662 -0.87367680544017104618678473155554592542 0.015139712847816799484708864305781950367 -0.9211301560146403583275192188149101662 0 -0.87367680544017104618678473155554592542 0.015139712847816799484708864305781950367 0 -0.9211301560146403583275192188149101662 -0.87367680544017104618678473155554592542 0.015139712847816799484708864305781950367 0.45469488442525374190737620014752106622 0 -0.64653917767653518703751426296454346724 0.10992335931150491339794381086452639803 0 0.45469488442525374190737620014752106622 -0.64653917767653518703751426296454346724 0.10992335931150491339794381086452639803 -0.45469488442525374190737620014752106622 0 -0.64653917767653518703751426296454346724 0.10992335931150491339794381086452639803 0 -0.45469488442525374190737620014752106622 -0.64653917767653518703751426296454346724 0.10992335931150491339794381086452639803 0.34954698449670665618703426052652270092 0 0.20418762141582796229356027682309379013 0.024556675381417956733986284061921577306 0 0.34954698449670665618703426052652270092 0.20418762141582796229356027682309379013 0.024556675381417956733986284061921577306 -0.34954698449670665618703426052652270092 0 0.20418762141582796229356027682309379013 0.024556675381417956733986284061921577306 0 -0.34954698449670665618703426052652270092 0.20418762141582796229356027682309379013 0.024556675381417956733986284061921577306 0.4036909359989290549941040384972850952 0.4036909359989290549941040384972850952 0.054098939536306234614681587161827868581 0.018849056440184169335496436007427270559 0.4036909359989290549941040384972850952 -0.4036909359989290549941040384972850952 0.054098939536306234614681587161827868581 0.018849056440184169335496436007427270559 -0.4036909359989290549941040384972850952 0.4036909359989290549941040384972850952 0.054098939536306234614681587161827868581 0.018849056440184169335496436007427270559 -0.4036909359989290549941040384972850952 -0.4036909359989290549941040384972850952 0.054098939536306234614681587161827868581 0.018849056440184169335496436007427270559 0.37146089090647414146733508749634017582 0.37146089090647414146733508749634017582 -0.30177911620290173994768222380627364654 0.079548495536999982380261599863958558798 0.37146089090647414146733508749634017582 -0.37146089090647414146733508749634017582 -0.30177911620290173994768222380627364654 0.079548495536999982380261599863958558798 -0.37146089090647414146733508749634017582 0.37146089090647414146733508749634017582 -0.30177911620290173994768222380627364654 0.079548495536999982380261599863958558798 -0.37146089090647414146733508749634017582 -0.37146089090647414146733508749634017582 -0.30177911620290173994768222380627364654 0.079548495536999982380261599863958558798 0.29959799664341220986603563452809915211 0.29959799664341220986603563452809915211 -0.98613205424907319746460559817869321699 0.015653314138178086543067828035606638277 0.29959799664341220986603563452809915211 -0.29959799664341220986603563452809915211 -0.98613205424907319746460559817869321699 0.015653314138178086543067828035606638277 -0.29959799664341220986603563452809915211 0.29959799664341220986603563452809915211 -0.98613205424907319746460559817869321699 0.015653314138178086543067828035606638277 -0.29959799664341220986603563452809915211 -0.29959799664341220986603563452809915211 -0.98613205424907319746460559817869321699 0.015653314138178086543067828035606638277 0.15822625455417853696460187646671225705 0.15822625455417853696460187646671225705 0.55052863586639312904708979516957590328 0.01321164115938370158671751695816318467 0.15822625455417853696460187646671225705 -0.15822625455417853696460187646671225705 0.55052863586639312904708979516957590328 0.01321164115938370158671751695816318467 -0.15822625455417853696460187646671225705 0.15822625455417853696460187646671225705 0.55052863586639312904708979516957590328 0.01321164115938370158671751695816318467 -0.15822625455417853696460187646671225705 -0.15822625455417853696460187646671225705 0.55052863586639312904708979516957590328 0.01321164115938370158671751695816318467 0.18199793495199664689817847929133993856 0.18199793495199664689817847929133993856 0.094130036292678266102175169411106014378 0.04248249939111569201880871313257692538 0.18199793495199664689817847929133993856 -0.18199793495199664689817847929133993856 0.094130036292678266102175169411106014378 0.04248249939111569201880871313257692538 -0.18199793495199664689817847929133993856 0.18199793495199664689817847929133993856 0.094130036292678266102175169411106014378 0.04248249939111569201880871313257692538 -0.18199793495199664689817847929133993856 -0.18199793495199664689817847929133993856 0.094130036292678266102175169411106014378 0.04248249939111569201880871313257692538 0.84558414980124129459537713613832697939 0.84558414980124129459537713613832697939 -0.85420317704867900916510706229135574932 0.013577406627154434615745463141085805356 0.84558414980124129459537713613832697939 -0.84558414980124129459537713613832697939 -0.85420317704867900916510706229135574932 0.013577406627154434615745463141085805356 -0.84558414980124129459537713613832697939 0.84558414980124129459537713613832697939 -0.85420317704867900916510706229135574932 0.013577406627154434615745463141085805356 -0.84558414980124129459537713613832697939 -0.84558414980124129459537713613832697939 -0.85420317704867900916510706229135574932 0.013577406627154434615745463141085805356 0.64686940593734291264486164508395007448 0.64686940593734291264486164508395007448 -0.4327553204044903896084514899827863369 0.018255448920823418809917141458083463367 0.64686940593734291264486164508395007448 -0.64686940593734291264486164508395007448 -0.4327553204044903896084514899827863369 0.018255448920823418809917141458083463367 -0.64686940593734291264486164508395007448 0.64686940593734291264486164508395007448 -0.4327553204044903896084514899827863369 0.018255448920823418809917141458083463367 -0.64686940593734291264486164508395007448 -0.64686940593734291264486164508395007448 -0.4327553204044903896084514899827863369 0.018255448920823418809917141458083463367 0.58758702940872080235172874857818290802 0.58758702940872080235172874857818290802 -0.88037395641454691452237186705157604445 0.040101387680976965655189913433625764305 0.58758702940872080235172874857818290802 -0.58758702940872080235172874857818290802 -0.88037395641454691452237186705157604445 0.040101387680976965655189913433625764305 -0.58758702940872080235172874857818290802 0.58758702940872080235172874857818290802 -0.88037395641454691452237186705157604445 0.040101387680976965655189913433625764305 -0.58758702940872080235172874857818290802 -0.58758702940872080235172874857818290802 -0.88037395641454691452237186705157604445 0.040101387680976965655189913433625764305 0.22376205998381611725842742973864304392 0.22376205998381611725842742973864304392 -0.86833824003875333700960736566405613663 0.041640434996784578197489213844819716323 0.22376205998381611725842742973864304392 -0.22376205998381611725842742973864304392 -0.86833824003875333700960736566405613663 0.041640434996784578197489213844819716323 -0.22376205998381611725842742973864304392 0.22376205998381611725842742973864304392 -0.86833824003875333700960736566405613663 0.041640434996784578197489213844819716323 -0.22376205998381611725842742973864304392 -0.22376205998381611725842742973864304392 -0.86833824003875333700960736566405613663 0.041640434996784578197489213844819716323 0.74556570846972106998428795431576226847 0.22471743188490617098996468276780795745 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 0.22471743188490617098996468276780795745 0.74556570846972106998428795431576226847 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 0.74556570846972106998428795431576226847 -0.22471743188490617098996468276780795745 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 -0.22471743188490617098996468276780795745 0.74556570846972106998428795431576226847 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 -0.74556570846972106998428795431576226847 0.22471743188490617098996468276780795745 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 0.22471743188490617098996468276780795745 -0.74556570846972106998428795431576226847 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 -0.74556570846972106998428795431576226847 -0.22471743188490617098996468276780795745 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 -0.22471743188490617098996468276780795745 -0.74556570846972106998428795431576226847 -0.94549948945065210679473240922421954622 0.023758293511727935483135714858684359226 0.40566195273187711340899110766544318165 0.74872676280187880094043851032586166563 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 0.74872676280187880094043851032586166563 0.40566195273187711340899110766544318165 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 0.40566195273187711340899110766544318165 -0.74872676280187880094043851032586166563 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 -0.74872676280187880094043851032586166563 0.40566195273187711340899110766544318165 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 -0.40566195273187711340899110766544318165 0.74872676280187880094043851032586166563 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 0.74872676280187880094043851032586166563 -0.40566195273187711340899110766544318165 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 -0.40566195273187711340899110766544318165 -0.74872676280187880094043851032586166563 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 -0.74872676280187880094043851032586166563 -0.40566195273187711340899110766544318165 -0.67639997414589843421870375009684158879 0.044777923892939049214710728242065071131 0.070742568281209621329314096569945291862 0.60045691112687358169539106741319911554 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 0.60045691112687358169539106741319911554 0.070742568281209621329314096569945291862 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 0.070742568281209621329314096569945291862 -0.60045691112687358169539106741319911554 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 -0.60045691112687358169539106741319911554 0.070742568281209621329314096569945291862 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 -0.070742568281209621329314096569945291862 0.60045691112687358169539106741319911554 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 0.60045691112687358169539106741319911554 -0.070742568281209621329314096569945291862 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 -0.070742568281209621329314096569945291862 -0.60045691112687358169539106741319911554 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 -0.60045691112687358169539106741319911554 -0.070742568281209621329314096569945291862 -0.28305887282189848782440087097630180014 0.02188199761414342991806676205008653974 0.94221914707966808645220493887337761891 0.63756310407853872036884558065034515453 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 0.63756310407853872036884558065034515453 0.94221914707966808645220493887337761891 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 0.94221914707966808645220493887337761891 -0.63756310407853872036884558065034515453 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 -0.63756310407853872036884558065034515453 0.94221914707966808645220493887337761891 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 -0.94221914707966808645220493887337761891 0.63756310407853872036884558065034515453 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 0.63756310407853872036884558065034515453 -0.94221914707966808645220493887337761891 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 -0.94221914707966808645220493887337761891 -0.63756310407853872036884558065034515453 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 -0.63756310407853872036884558065034515453 -0.94221914707966808645220493887337761891 -0.98511871784623050002484940519580993686 0.006724130291414485504002863473684804576 pyfr-1.5.0/pyfr/quadrules/quad/000077500000000000000000000000001277740313300164235ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n100-d17-spu.txt000066400000000000000000000244441277740313300254150ustar00rootroot00000000000000-1.0 -1.0 0.00049382716049382716049382716049382716 -0.919533908166458813828932660822338134 -1.0 0.00296235535224600246947171490567539774 -0.738773865105505075003106174859830725 -1.0 0.00499754093473614338043239603846772984 -0.477924949810444495661175092731257998 -1.0 0.00648983741510408350834627238609875316 -0.165278957666387024626219765958173533 -1.0 0.00727866135964216570347801173148651433 0.165278957666387024626219765958173533 -1.0 0.00727866135964216570347801173148651433 0.477924949810444495661175092731257998 -1.0 0.00648983741510408350834627238609875316 0.738773865105505075003106174859830725 -1.0 0.00499754093473614338043239603846772984 0.919533908166458813828932660822338134 -1.0 0.00296235535224600246947171490567539774 1.0 -1.0 0.00049382716049382716049382716049382716 -1.0 -0.919533908166458813828932660822338134 0.00296235535224600246947171490567539774 -0.919533908166458813828932660822338134 -0.919533908166458813828932660822338134 0.0177704871967855881705037899773020617 -0.738773865105505075003106174859830725 -0.919533908166458813828932660822338134 0.0299790965755703115357410671831142253 -0.477924949810444495661175092731257998 -0.919533908166458813828932660822338134 0.0389310393187258854833948556065025962 -0.165278957666387024626219765958173533 -0.919533908166458813828932660822338134 0.0436630124077423234671157430827986172 0.165278957666387024626219765958173533 -0.919533908166458813828932660822338134 0.0436630124077423234671157430827986172 0.477924949810444495661175092731257998 -0.919533908166458813828932660822338134 0.0389310393187258854833948556065025962 0.738773865105505075003106174859830725 -0.919533908166458813828932660822338134 0.0299790965755703115357410671831142253 0.919533908166458813828932660822338134 -0.919533908166458813828932660822338134 0.0177704871967855881705037899773020617 1.0 -0.919533908166458813828932660822338134 0.00296235535224600246947171490567539774 -1.0 -0.738773865105505075003106174859830725 0.00499754093473614338043239603846772984 -0.919533908166458813828932660822338134 -0.738773865105505075003106174859830725 0.0299790965755703115357410671831142253 -0.738773865105505075003106174859830725 -0.738773865105505075003106174859830725 0.0505752161735858965638636988088875016 -0.477924949810444495661175092731257998 -0.738773865105505075003106174859830725 0.0656772869870738375648705346893903575 -0.165278957666387024626219765958173533 -0.738773865105505075003106174859830725 0.0736602013921602630745501250111880286 0.165278957666387024626219765958173533 -0.738773865105505075003106174859830725 0.0736602013921602630745501250111880286 0.477924949810444495661175092731257998 -0.738773865105505075003106174859830725 0.0656772869870738375648705346893903575 0.738773865105505075003106174859830725 -0.738773865105505075003106174859830725 0.0505752161735858965638636988088875016 0.919533908166458813828932660822338134 -0.738773865105505075003106174859830725 0.0299790965755703115357410671831142253 1.0 -0.738773865105505075003106174859830725 0.00499754093473614338043239603846772984 -1.0 -0.477924949810444495661175092731257998 0.00648983741510408350834627238609875316 -0.919533908166458813828932660822338134 -0.477924949810444495661175092731257998 0.0389310393187258854833948556065025962 -0.738773865105505075003106174859830725 -0.477924949810444495661175092731257998 0.0656772869870738375648705346893903575 -0.477924949810444495661175092731257998 -0.477924949810444495661175092731257998 0.0852889290908318259449848559815313861 -0.165278957666387024626219765958173533 -0.477924949810444495661175092731257998 0.0956555908679481253739857387109207993 0.165278957666387024626219765958173533 -0.477924949810444495661175092731257998 0.0956555908679481253739857387109207993 0.477924949810444495661175092731257998 -0.477924949810444495661175092731257998 0.0852889290908318259449848559815313861 0.738773865105505075003106174859830725 -0.477924949810444495661175092731257998 0.0656772869870738375648705346893903575 0.919533908166458813828932660822338134 -0.477924949810444495661175092731257998 0.0389310393187258854833948556065025962 1.0 -0.477924949810444495661175092731257998 0.00648983741510408350834627238609875316 -1.0 -0.165278957666387024626219765958173533 0.00727866135964216570347801173148651433 -0.919533908166458813828932660822338134 -0.165278957666387024626219765958173533 0.0436630124077423234671157430827986172 -0.738773865105505075003106174859830725 -0.165278957666387024626219765958173533 0.0736602013921602630745501250111880286 -0.477924949810444495661175092731257998 -0.165278957666387024626219765958173533 0.0956555908679481253739857387109207993 -0.165278957666387024626219765958173533 -0.165278957666387024626219765958173533 0.107282295156404579037380909380499185 0.165278957666387024626219765958173533 -0.165278957666387024626219765958173533 0.107282295156404579037380909380499185 0.477924949810444495661175092731257998 -0.165278957666387024626219765958173533 0.0956555908679481253739857387109207993 0.738773865105505075003106174859830725 -0.165278957666387024626219765958173533 0.0736602013921602630745501250111880286 0.919533908166458813828932660822338134 -0.165278957666387024626219765958173533 0.0436630124077423234671157430827986172 1.0 -0.165278957666387024626219765958173533 0.00727866135964216570347801173148651433 -1.0 0.165278957666387024626219765958173533 0.00727866135964216570347801173148651433 -0.919533908166458813828932660822338134 0.165278957666387024626219765958173533 0.0436630124077423234671157430827986172 -0.738773865105505075003106174859830725 0.165278957666387024626219765958173533 0.0736602013921602630745501250111880286 -0.477924949810444495661175092731257998 0.165278957666387024626219765958173533 0.0956555908679481253739857387109207993 -0.165278957666387024626219765958173533 0.165278957666387024626219765958173533 0.107282295156404579037380909380499185 0.165278957666387024626219765958173533 0.165278957666387024626219765958173533 0.107282295156404579037380909380499185 0.477924949810444495661175092731257998 0.165278957666387024626219765958173533 0.0956555908679481253739857387109207993 0.738773865105505075003106174859830725 0.165278957666387024626219765958173533 0.0736602013921602630745501250111880286 0.919533908166458813828932660822338134 0.165278957666387024626219765958173533 0.0436630124077423234671157430827986172 1.0 0.165278957666387024626219765958173533 0.00727866135964216570347801173148651433 -1.0 0.477924949810444495661175092731257998 0.00648983741510408350834627238609875316 -0.919533908166458813828932660822338134 0.477924949810444495661175092731257998 0.0389310393187258854833948556065025962 -0.738773865105505075003106174859830725 0.477924949810444495661175092731257998 0.0656772869870738375648705346893903575 -0.477924949810444495661175092731257998 0.477924949810444495661175092731257998 0.0852889290908318259449848559815313861 -0.165278957666387024626219765958173533 0.477924949810444495661175092731257998 0.0956555908679481253739857387109207993 0.165278957666387024626219765958173533 0.477924949810444495661175092731257998 0.0956555908679481253739857387109207993 0.477924949810444495661175092731257998 0.477924949810444495661175092731257998 0.0852889290908318259449848559815313861 0.738773865105505075003106174859830725 0.477924949810444495661175092731257998 0.0656772869870738375648705346893903575 0.919533908166458813828932660822338134 0.477924949810444495661175092731257998 0.0389310393187258854833948556065025962 1.0 0.477924949810444495661175092731257998 0.00648983741510408350834627238609875316 -1.0 0.738773865105505075003106174859830725 0.00499754093473614338043239603846772984 -0.919533908166458813828932660822338134 0.738773865105505075003106174859830725 0.0299790965755703115357410671831142253 -0.738773865105505075003106174859830725 0.738773865105505075003106174859830725 0.0505752161735858965638636988088875016 -0.477924949810444495661175092731257998 0.738773865105505075003106174859830725 0.0656772869870738375648705346893903575 -0.165278957666387024626219765958173533 0.738773865105505075003106174859830725 0.0736602013921602630745501250111880286 0.165278957666387024626219765958173533 0.738773865105505075003106174859830725 0.0736602013921602630745501250111880286 0.477924949810444495661175092731257998 0.738773865105505075003106174859830725 0.0656772869870738375648705346893903575 0.738773865105505075003106174859830725 0.738773865105505075003106174859830725 0.0505752161735858965638636988088875016 0.919533908166458813828932660822338134 0.738773865105505075003106174859830725 0.0299790965755703115357410671831142253 1.0 0.738773865105505075003106174859830725 0.00499754093473614338043239603846772984 -1.0 0.919533908166458813828932660822338134 0.00296235535224600246947171490567539774 -0.919533908166458813828932660822338134 0.919533908166458813828932660822338134 0.0177704871967855881705037899773020617 -0.738773865105505075003106174859830725 0.919533908166458813828932660822338134 0.0299790965755703115357410671831142253 -0.477924949810444495661175092731257998 0.919533908166458813828932660822338134 0.0389310393187258854833948556065025962 -0.165278957666387024626219765958173533 0.919533908166458813828932660822338134 0.0436630124077423234671157430827986172 0.165278957666387024626219765958173533 0.919533908166458813828932660822338134 0.0436630124077423234671157430827986172 0.477924949810444495661175092731257998 0.919533908166458813828932660822338134 0.0389310393187258854833948556065025962 0.738773865105505075003106174859830725 0.919533908166458813828932660822338134 0.0299790965755703115357410671831142253 0.919533908166458813828932660822338134 0.919533908166458813828932660822338134 0.0177704871967855881705037899773020617 1.0 0.919533908166458813828932660822338134 0.00296235535224600246947171490567539774 -1.0 1.0 0.00049382716049382716049382716049382716 -0.919533908166458813828932660822338134 1.0 0.00296235535224600246947171490567539774 -0.738773865105505075003106174859830725 1.0 0.00499754093473614338043239603846772984 -0.477924949810444495661175092731257998 1.0 0.00648983741510408350834627238609875316 -0.165278957666387024626219765958173533 1.0 0.00727866135964216570347801173148651433 0.165278957666387024626219765958173533 1.0 0.00727866135964216570347801173148651433 0.477924949810444495661175092731257998 1.0 0.00648983741510408350834627238609875316 0.738773865105505075003106174859830725 1.0 0.00499754093473614338043239603846772984 0.919533908166458813828932660822338134 1.0 0.00296235535224600246947171490567539774 1.0 1.0 0.00049382716049382716049382716049382716 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n121-d19-spu.txt000066400000000000000000000275021277740313300254200ustar00rootroot00000000000000-1.0 -1.0 0.000330578512396694214876033057851239669 -0.934001430408059134332274136099383635 -1.0 0.00199295042303627026293460817418819473 -0.784483473663144418622417816108458104 -1.0 0.0034030887596419128019662094890806349 -0.565235326996205006470963969477751664 -1.0 0.00450996553207324207345608848039768642 -0.295758135586939391431911515559057509 -1.0 0.0052159840868910561578040436969370042 0.0 -1.0 0.00545850173555801261428967056672684378 0.295758135586939391431911515559057509 -1.0 0.0052159840868910561578040436969370042 0.565235326996205006470963969477751664 -1.0 0.00450996553207324207345608848039768642 0.784483473663144418622417816108458104 -1.0 0.0034030887596419128019662094890806349 0.934001430408059134332274136099383635 -1.0 0.00199295042303627026293460817418819473 1.0 -1.0 0.000330578512396694214876033057851239669 -1.0 -0.934001430408059134332274136099383635 0.00199295042303627026293460817418819473 -0.934001430408059134332274136099383635 -0.934001430408059134332274136099383635 0.0120148504507583570171689634058494737 -0.784483473663144418622417816108458104 -0.934001430408059134332274136099383635 0.0205161162290539372732118249814010811 -0.565235326996205006470963969477751664 -0.934001430408059134332274136099383635 0.027189116587948705616173826089973763 -0.295758135586939391431911515559057509 -0.934001430408059134332274136099383635 0.0314454730198729523226924479791274732 0.0 -0.934001430408059134332274136099383635 0.0329075331126492839384435578996214487 0.295758135586939391431911515559057509 -0.934001430408059134332274136099383635 0.0314454730198729523226924479791274732 0.565235326996205006470963969477751664 -0.934001430408059134332274136099383635 0.027189116587948705616173826089973763 0.784483473663144418622417816108458104 -0.934001430408059134332274136099383635 0.0205161162290539372732118249814010811 0.934001430408059134332274136099383635 -0.934001430408059134332274136099383635 0.0120148504507583570171689634058494737 1.0 -0.934001430408059134332274136099383635 0.00199295042303627026293460817418819473 -1.0 -0.784483473663144418622417816108458104 0.0034030887596419128019662094890806349 -0.934001430408059134332274136099383635 -0.784483473663144418622417816108458104 0.0205161162290539372732118249814010811 -0.784483473663144418622417816108458104 -0.784483473663144418622417816108458104 0.0350325646456534260020793311284006564 -0.565235326996205006470963969477751664 -0.784483473663144418622417816108458104 0.0464271343509269987458934966262890391 -0.295758135586939391431911515559057509 -0.784483473663144418622417816108458104 0.0536951318701243692711764111133680069 0.0 -0.784483473663144418622417816108458104 0.0561916918498091200276284971217910025 0.295758135586939391431911515559057509 -0.784483473663144418622417816108458104 0.0536951318701243692711764111133680069 0.565235326996205006470963969477751664 -0.784483473663144418622417816108458104 0.0464271343509269987458934966262890391 0.784483473663144418622417816108458104 -0.784483473663144418622417816108458104 0.0350325646456534260020793311284006564 0.934001430408059134332274136099383635 -0.784483473663144418622417816108458104 0.0205161162290539372732118249814010811 1.0 -0.784483473663144418622417816108458104 0.0034030887596419128019662094890806349 -1.0 -0.565235326996205006470963969477751664 0.00450996553207324207345608848039768642 -0.934001430408059134332274136099383635 -0.565235326996205006470963969477751664 0.027189116587948705616173826089973763 -0.784483473663144418622417816108458104 -0.565235326996205006470963969477751664 0.0464271343509269987458934966262890391 -0.565235326996205006470963969477751664 -0.565235326996205006470963969477751664 0.0615278620289782614696302128449272766 -0.295758135586939391431911515559057509 -0.565235326996205006470963969477751664 0.0711598230543565870462416209830384806 0.0 -0.565235326996205006470963969477751664 0.0744684054194890381773792427944930152 0.295758135586939391431911515559057509 -0.565235326996205006470963969477751664 0.0711598230543565870462416209830384806 0.565235326996205006470963969477751664 -0.565235326996205006470963969477751664 0.0615278620289782614696302128449272766 0.784483473663144418622417816108458104 -0.565235326996205006470963969477751664 0.0464271343509269987458934966262890391 0.934001430408059134332274136099383635 -0.565235326996205006470963969477751664 0.027189116587948705616173826089973763 1.0 -0.565235326996205006470963969477751664 0.00450996553207324207345608848039768642 -1.0 -0.295758135586939391431911515559057509 0.0052159840868910561578040436969370042 -0.934001430408059134332274136099383635 -0.295758135586939391431911515559057509 0.0314454730198729523226924479791274732 -0.784483473663144418622417816108458104 -0.295758135586939391431911515559057509 0.0536951318701243692711764111133680069 -0.565235326996205006470963969477751664 -0.295758135586939391431911515559057509 0.0711598230543565870462416209830384806 -0.295758135586939391431911515559057509 -0.295758135586939391431911515559057509 0.0822996322339696927452728823655062533 0.0 -0.295758135586939391431911515559057509 0.0861261610275868622720699943871160261 0.295758135586939391431911515559057509 -0.295758135586939391431911515559057509 0.0822996322339696927452728823655062533 0.565235326996205006470963969477751664 -0.295758135586939391431911515559057509 0.0711598230543565870462416209830384806 0.784483473663144418622417816108458104 -0.295758135586939391431911515559057509 0.0536951318701243692711764111133680069 0.934001430408059134332274136099383635 -0.295758135586939391431911515559057509 0.0314454730198729523226924479791274732 1.0 -0.295758135586939391431911515559057509 0.0052159840868910561578040436969370042 -1.0 0.0 0.00545850173555801261428967056672684378 -0.934001430408059134332274136099383635 0.0 0.0329075331126492839384435578996214487 -0.784483473663144418622417816108458104 0.0 0.0561916918498091200276284971217910025 -0.565235326996205006470963969477751664 0.0 0.0744684054194890381773792427944930152 -0.295758135586939391431911515559057509 0.0 0.0861261610275868622720699943871160261 0.0 0.0 0.0901306046211967535122418368004561437 0.295758135586939391431911515559057509 0.0 0.0861261610275868622720699943871160261 0.565235326996205006470963969477751664 0.0 0.0744684054194890381773792427944930152 0.784483473663144418622417816108458104 0.0 0.0561916918498091200276284971217910025 0.934001430408059134332274136099383635 0.0 0.0329075331126492839384435578996214487 1.0 0.0 0.00545850173555801261428967056672684378 -1.0 0.295758135586939391431911515559057509 0.0052159840868910561578040436969370042 -0.934001430408059134332274136099383635 0.295758135586939391431911515559057509 0.0314454730198729523226924479791274732 -0.784483473663144418622417816108458104 0.295758135586939391431911515559057509 0.0536951318701243692711764111133680069 -0.565235326996205006470963969477751664 0.295758135586939391431911515559057509 0.0711598230543565870462416209830384806 -0.295758135586939391431911515559057509 0.295758135586939391431911515559057509 0.0822996322339696927452728823655062533 0.0 0.295758135586939391431911515559057509 0.0861261610275868622720699943871160261 0.295758135586939391431911515559057509 0.295758135586939391431911515559057509 0.0822996322339696927452728823655062533 0.565235326996205006470963969477751664 0.295758135586939391431911515559057509 0.0711598230543565870462416209830384806 0.784483473663144418622417816108458104 0.295758135586939391431911515559057509 0.0536951318701243692711764111133680069 0.934001430408059134332274136099383635 0.295758135586939391431911515559057509 0.0314454730198729523226924479791274732 1.0 0.295758135586939391431911515559057509 0.0052159840868910561578040436969370042 -1.0 0.565235326996205006470963969477751664 0.00450996553207324207345608848039768642 -0.934001430408059134332274136099383635 0.565235326996205006470963969477751664 0.027189116587948705616173826089973763 -0.784483473663144418622417816108458104 0.565235326996205006470963969477751664 0.0464271343509269987458934966262890391 -0.565235326996205006470963969477751664 0.565235326996205006470963969477751664 0.0615278620289782614696302128449272766 -0.295758135586939391431911515559057509 0.565235326996205006470963969477751664 0.0711598230543565870462416209830384806 0.0 0.565235326996205006470963969477751664 0.0744684054194890381773792427944930152 0.295758135586939391431911515559057509 0.565235326996205006470963969477751664 0.0711598230543565870462416209830384806 0.565235326996205006470963969477751664 0.565235326996205006470963969477751664 0.0615278620289782614696302128449272766 0.784483473663144418622417816108458104 0.565235326996205006470963969477751664 0.0464271343509269987458934966262890391 0.934001430408059134332274136099383635 0.565235326996205006470963969477751664 0.027189116587948705616173826089973763 1.0 0.565235326996205006470963969477751664 0.00450996553207324207345608848039768642 -1.0 0.784483473663144418622417816108458104 0.0034030887596419128019662094890806349 -0.934001430408059134332274136099383635 0.784483473663144418622417816108458104 0.0205161162290539372732118249814010811 -0.784483473663144418622417816108458104 0.784483473663144418622417816108458104 0.0350325646456534260020793311284006564 -0.565235326996205006470963969477751664 0.784483473663144418622417816108458104 0.0464271343509269987458934966262890391 -0.295758135586939391431911515559057509 0.784483473663144418622417816108458104 0.0536951318701243692711764111133680069 0.0 0.784483473663144418622417816108458104 0.0561916918498091200276284971217910025 0.295758135586939391431911515559057509 0.784483473663144418622417816108458104 0.0536951318701243692711764111133680069 0.565235326996205006470963969477751664 0.784483473663144418622417816108458104 0.0464271343509269987458934966262890391 0.784483473663144418622417816108458104 0.784483473663144418622417816108458104 0.0350325646456534260020793311284006564 0.934001430408059134332274136099383635 0.784483473663144418622417816108458104 0.0205161162290539372732118249814010811 1.0 0.784483473663144418622417816108458104 0.0034030887596419128019662094890806349 -1.0 0.934001430408059134332274136099383635 0.00199295042303627026293460817418819473 -0.934001430408059134332274136099383635 0.934001430408059134332274136099383635 0.0120148504507583570171689634058494737 -0.784483473663144418622417816108458104 0.934001430408059134332274136099383635 0.0205161162290539372732118249814010811 -0.565235326996205006470963969477751664 0.934001430408059134332274136099383635 0.027189116587948705616173826089973763 -0.295758135586939391431911515559057509 0.934001430408059134332274136099383635 0.0314454730198729523226924479791274732 0.0 0.934001430408059134332274136099383635 0.0329075331126492839384435578996214487 0.295758135586939391431911515559057509 0.934001430408059134332274136099383635 0.0314454730198729523226924479791274732 0.565235326996205006470963969477751664 0.934001430408059134332274136099383635 0.027189116587948705616173826089973763 0.784483473663144418622417816108458104 0.934001430408059134332274136099383635 0.0205161162290539372732118249814010811 0.934001430408059134332274136099383635 0.934001430408059134332274136099383635 0.0120148504507583570171689634058494737 1.0 0.934001430408059134332274136099383635 0.00199295042303627026293460817418819473 -1.0 1.0 0.000330578512396694214876033057851239669 -0.934001430408059134332274136099383635 1.0 0.00199295042303627026293460817418819473 -0.784483473663144418622417816108458104 1.0 0.0034030887596419128019662094890806349 -0.565235326996205006470963969477751664 1.0 0.00450996553207324207345608848039768642 -0.295758135586939391431911515559057509 1.0 0.0052159840868910561578040436969370042 0.0 1.0 0.00545850173555801261428967056672684378 0.295758135586939391431911515559057509 1.0 0.0052159840868910561578040436969370042 0.565235326996205006470963969477751664 1.0 0.00450996553207324207345608848039768642 0.784483473663144418622417816108458104 1.0 0.0034030887596419128019662094890806349 0.934001430408059134332274136099383635 1.0 0.00199295042303627026293460817418819473 1.0 1.0 0.000330578512396694214876033057851239669 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n144-d21-spu.txt000066400000000000000000000361741277740313300254230ustar00rootroot00000000000000-1.0 -1.0 0.000229568411386593204775022956841138659 -0.944899272222882223407580138303218714 -1.0 0.00138915935474539591921731203233453464 -0.819279321644006678348641581716902661 -1.0 0.00239355614491469871461622822273242831 -0.632876153031860677662404854443655858 -1.0 0.00321982451153062341451972844495251925 -0.399530940965348932264349791566966901 -1.0 0.0038072061090788072771703698810241846 -0.136552932854927554864061855739693897 -1.0 0.00411220061985903298485285361363034607 0.136552932854927554864061855739693897 -1.0 0.00411220061985903298485285361363034607 0.399530940965348932264349791566966901 -1.0 0.0038072061090788072771703698810241846 0.632876153031860677662404854443655858 -1.0 0.00321982451153062341451972844495251925 0.819279321644006678348641581716902661 -1.0 0.00239355614491469871461622822273242831 0.944899272222882223407580138303218714 -1.0 0.00138915935474539591921731203233453464 1.0 -1.0 0.000229568411386593204775022956841138659 -1.0 -0.944899272222882223407580138303218714 0.00138915935474539591921731203233453464 -0.944899272222882223407580138303218714 -0.944899272222882223407580138303218714 0.00840605073329066450392279826671023248 -0.819279321644006678348641581716902661 -0.944899272222882223407580138303218714 0.0144838346431610235007756638457123016 -0.632876153031860677662404854443655858 -0.944899272222882223407580138303218714 0.0194837317286611010922683472154251689 -0.399530940965348932264349791566966901 -0.944899272222882223407580138303218714 0.023038082417028531142731508883674881 -0.136552932854927554864061855739693897 -0.944899272222882223407580138303218714 0.0248836585363094145094269638902221678 0.136552932854927554864061855739693897 -0.944899272222882223407580138303218714 0.0248836585363094145094269638902221678 0.399530940965348932264349791566966901 -0.944899272222882223407580138303218714 0.023038082417028531142731508883674881 0.632876153031860677662404854443655858 -0.944899272222882223407580138303218714 0.0194837317286611010922683472154251689 0.819279321644006678348641581716902661 -0.944899272222882223407580138303218714 0.0144838346431610235007756638457123016 0.944899272222882223407580138303218714 -0.944899272222882223407580138303218714 0.00840605073329066450392279826671023248 1.0 -0.944899272222882223407580138303218714 0.00138915935474539591921731203233453464 -1.0 -0.819279321644006678348641581716902661 0.00239355614491469871461622822273242831 -0.944899272222882223407580138303218714 -0.819279321644006678348641581716902661 0.0144838346431610235007756638457123016 -0.819279321644006678348641581716902661 -0.819279321644006678348641581716902661 0.0249560075981494302264235019952295928 -0.632876153031860677662404854443655858 -0.819279321644006678348641581716902661 0.0335709547257474761419894232816897519 -0.399530940965348932264349791566966901 -0.819279321644006678348641581716902661 0.0396951894309033196055530145786420019 -0.136552932854927554864061855739693897 -0.819279321644006678348641581716902661 0.0428751630214941669753132307763341918 0.136552932854927554864061855739693897 -0.819279321644006678348641581716902661 0.0428751630214941669753132307763341918 0.399530940965348932264349791566966901 -0.819279321644006678348641581716902661 0.0396951894309033196055530145786420019 0.632876153031860677662404854443655858 -0.819279321644006678348641581716902661 0.0335709547257474761419894232816897519 0.819279321644006678348641581716902661 -0.819279321644006678348641581716902661 0.0249560075981494302264235019952295928 0.944899272222882223407580138303218714 -0.819279321644006678348641581716902661 0.0144838346431610235007756638457123016 1.0 -0.819279321644006678348641581716902661 0.00239355614491469871461622822273242831 -1.0 -0.632876153031860677662404854443655858 0.00321982451153062341451972844495251925 -0.944899272222882223407580138303218714 -0.632876153031860677662404854443655858 0.0194837317286611010922683472154251689 -0.819279321644006678348641581716902661 -0.632876153031860677662404854443655858 0.0335709547257474761419894232816897519 -0.632876153031860677662404854443655858 -0.632876153031860677662404854443655858 0.0451598276192926873863925282205504981 -0.399530940965348932264349791566966901 -0.632876153031860677662404854443655858 0.0533981808578084470867450578516982404 -0.136552932854927554864061855739693897 -0.632876153031860677662404854443655858 0.0576758983179808102363869923525500916 0.136552932854927554864061855739693897 -0.632876153031860677662404854443655858 0.0576758983179808102363869923525500916 0.399530940965348932264349791566966901 -0.632876153031860677662404854443655858 0.0533981808578084470867450578516982404 0.632876153031860677662404854443655858 -0.632876153031860677662404854443655858 0.0451598276192926873863925282205504981 0.819279321644006678348641581716902661 -0.632876153031860677662404854443655858 0.0335709547257474761419894232816897519 0.944899272222882223407580138303218714 -0.632876153031860677662404854443655858 0.0194837317286611010922683472154251689 1.0 -0.632876153031860677662404854443655858 0.00321982451153062341451972844495251925 -1.0 -0.399530940965348932264349791566966901 0.0038072061090788072771703698810241846 -0.944899272222882223407580138303218714 -0.399530940965348932264349791566966901 0.023038082417028531142731508883674881 -0.819279321644006678348641581716902661 -0.399530940965348932264349791566966901 0.0396951894309033196055530145786420019 -0.632876153031860677662404854443655858 -0.399530940965348932264349791566966901 0.0533981808578084470867450578516982404 -0.399530940965348932264349791566966901 -0.399530940965348932264349791566966901 0.0631394287631224526877951630480032365 -0.136552932854927554864061855739693897 -0.399530940965348932264349791566966901 0.068197515621259722493249297904553639 0.136552932854927554864061855739693897 -0.399530940965348932264349791566966901 0.068197515621259722493249297904553639 0.399530940965348932264349791566966901 -0.399530940965348932264349791566966901 0.0631394287631224526877951630480032365 0.632876153031860677662404854443655858 -0.399530940965348932264349791566966901 0.0533981808578084470867450578516982404 0.819279321644006678348641581716902661 -0.399530940965348932264349791566966901 0.0396951894309033196055530145786420019 0.944899272222882223407580138303218714 -0.399530940965348932264349791566966901 0.023038082417028531142731508883674881 1.0 -0.399530940965348932264349791566966901 0.0038072061090788072771703698810241846 -1.0 -0.136552932854927554864061855739693897 0.00411220061985903298485285361363034607 -0.944899272222882223407580138303218714 -0.136552932854927554864061855739693897 0.0248836585363094145094269638902221678 -0.819279321644006678348641581716902661 -0.136552932854927554864061855739693897 0.0428751630214941669753132307763341918 -0.632876153031860677662404854443655858 -0.136552932854927554864061855739693897 0.0576758983179808102363869923525500916 -0.399530940965348932264349791566966901 -0.136552932854927554864061855739693897 0.068197515621259722493249297904553639 -0.136552932854927554864061855739693897 -0.136552932854927554864061855739693897 0.0736608047937930298010589999623124041 0.136552932854927554864061855739693897 -0.136552932854927554864061855739693897 0.0736608047937930298010589999623124041 0.399530940965348932264349791566966901 -0.136552932854927554864061855739693897 0.068197515621259722493249297904553639 0.632876153031860677662404854443655858 -0.136552932854927554864061855739693897 0.0576758983179808102363869923525500916 0.819279321644006678348641581716902661 -0.136552932854927554864061855739693897 0.0428751630214941669753132307763341918 0.944899272222882223407580138303218714 -0.136552932854927554864061855739693897 0.0248836585363094145094269638902221678 1.0 -0.136552932854927554864061855739693897 0.00411220061985903298485285361363034607 -1.0 0.136552932854927554864061855739693897 0.00411220061985903298485285361363034607 -0.944899272222882223407580138303218714 0.136552932854927554864061855739693897 0.0248836585363094145094269638902221678 -0.819279321644006678348641581716902661 0.136552932854927554864061855739693897 0.0428751630214941669753132307763341918 -0.632876153031860677662404854443655858 0.136552932854927554864061855739693897 0.0576758983179808102363869923525500916 -0.399530940965348932264349791566966901 0.136552932854927554864061855739693897 0.068197515621259722493249297904553639 -0.136552932854927554864061855739693897 0.136552932854927554864061855739693897 0.0736608047937930298010589999623124041 0.136552932854927554864061855739693897 0.136552932854927554864061855739693897 0.0736608047937930298010589999623124041 0.399530940965348932264349791566966901 0.136552932854927554864061855739693897 0.068197515621259722493249297904553639 0.632876153031860677662404854443655858 0.136552932854927554864061855739693897 0.0576758983179808102363869923525500916 0.819279321644006678348641581716902661 0.136552932854927554864061855739693897 0.0428751630214941669753132307763341918 0.944899272222882223407580138303218714 0.136552932854927554864061855739693897 0.0248836585363094145094269638902221678 1.0 0.136552932854927554864061855739693897 0.00411220061985903298485285361363034607 -1.0 0.399530940965348932264349791566966901 0.0038072061090788072771703698810241846 -0.944899272222882223407580138303218714 0.399530940965348932264349791566966901 0.023038082417028531142731508883674881 -0.819279321644006678348641581716902661 0.399530940965348932264349791566966901 0.0396951894309033196055530145786420019 -0.632876153031860677662404854443655858 0.399530940965348932264349791566966901 0.0533981808578084470867450578516982404 -0.399530940965348932264349791566966901 0.399530940965348932264349791566966901 0.0631394287631224526877951630480032365 -0.136552932854927554864061855739693897 0.399530940965348932264349791566966901 0.068197515621259722493249297904553639 0.136552932854927554864061855739693897 0.399530940965348932264349791566966901 0.068197515621259722493249297904553639 0.399530940965348932264349791566966901 0.399530940965348932264349791566966901 0.0631394287631224526877951630480032365 0.632876153031860677662404854443655858 0.399530940965348932264349791566966901 0.0533981808578084470867450578516982404 0.819279321644006678348641581716902661 0.399530940965348932264349791566966901 0.0396951894309033196055530145786420019 0.944899272222882223407580138303218714 0.399530940965348932264349791566966901 0.023038082417028531142731508883674881 1.0 0.399530940965348932264349791566966901 0.0038072061090788072771703698810241846 -1.0 0.632876153031860677662404854443655858 0.00321982451153062341451972844495251925 -0.944899272222882223407580138303218714 0.632876153031860677662404854443655858 0.0194837317286611010922683472154251689 -0.819279321644006678348641581716902661 0.632876153031860677662404854443655858 0.0335709547257474761419894232816897519 -0.632876153031860677662404854443655858 0.632876153031860677662404854443655858 0.0451598276192926873863925282205504981 -0.399530940965348932264349791566966901 0.632876153031860677662404854443655858 0.0533981808578084470867450578516982404 -0.136552932854927554864061855739693897 0.632876153031860677662404854443655858 0.0576758983179808102363869923525500916 0.136552932854927554864061855739693897 0.632876153031860677662404854443655858 0.0576758983179808102363869923525500916 0.399530940965348932264349791566966901 0.632876153031860677662404854443655858 0.0533981808578084470867450578516982404 0.632876153031860677662404854443655858 0.632876153031860677662404854443655858 0.0451598276192926873863925282205504981 0.819279321644006678348641581716902661 0.632876153031860677662404854443655858 0.0335709547257474761419894232816897519 0.944899272222882223407580138303218714 0.632876153031860677662404854443655858 0.0194837317286611010922683472154251689 1.0 0.632876153031860677662404854443655858 0.00321982451153062341451972844495251925 -1.0 0.819279321644006678348641581716902661 0.00239355614491469871461622822273242831 -0.944899272222882223407580138303218714 0.819279321644006678348641581716902661 0.0144838346431610235007756638457123016 -0.819279321644006678348641581716902661 0.819279321644006678348641581716902661 0.0249560075981494302264235019952295928 -0.632876153031860677662404854443655858 0.819279321644006678348641581716902661 0.0335709547257474761419894232816897519 -0.399530940965348932264349791566966901 0.819279321644006678348641581716902661 0.0396951894309033196055530145786420019 -0.136552932854927554864061855739693897 0.819279321644006678348641581716902661 0.0428751630214941669753132307763341918 0.136552932854927554864061855739693897 0.819279321644006678348641581716902661 0.0428751630214941669753132307763341918 0.399530940965348932264349791566966901 0.819279321644006678348641581716902661 0.0396951894309033196055530145786420019 0.632876153031860677662404854443655858 0.819279321644006678348641581716902661 0.0335709547257474761419894232816897519 0.819279321644006678348641581716902661 0.819279321644006678348641581716902661 0.0249560075981494302264235019952295928 0.944899272222882223407580138303218714 0.819279321644006678348641581716902661 0.0144838346431610235007756638457123016 1.0 0.819279321644006678348641581716902661 0.00239355614491469871461622822273242831 -1.0 0.944899272222882223407580138303218714 0.00138915935474539591921731203233453464 -0.944899272222882223407580138303218714 0.944899272222882223407580138303218714 0.00840605073329066450392279826671023248 -0.819279321644006678348641581716902661 0.944899272222882223407580138303218714 0.0144838346431610235007756638457123016 -0.632876153031860677662404854443655858 0.944899272222882223407580138303218714 0.0194837317286611010922683472154251689 -0.399530940965348932264349791566966901 0.944899272222882223407580138303218714 0.023038082417028531142731508883674881 -0.136552932854927554864061855739693897 0.944899272222882223407580138303218714 0.0248836585363094145094269638902221678 0.136552932854927554864061855739693897 0.944899272222882223407580138303218714 0.0248836585363094145094269638902221678 0.399530940965348932264349791566966901 0.944899272222882223407580138303218714 0.023038082417028531142731508883674881 0.632876153031860677662404854443655858 0.944899272222882223407580138303218714 0.0194837317286611010922683472154251689 0.819279321644006678348641581716902661 0.944899272222882223407580138303218714 0.0144838346431610235007756638457123016 0.944899272222882223407580138303218714 0.944899272222882223407580138303218714 0.00840605073329066450392279826671023248 1.0 0.944899272222882223407580138303218714 0.00138915935474539591921731203233453464 -1.0 1.0 0.000229568411386593204775022956841138659 -0.944899272222882223407580138303218714 1.0 0.00138915935474539591921731203233453464 -0.819279321644006678348641581716902661 1.0 0.00239355614491469871461622822273242831 -0.632876153031860677662404854443655858 1.0 0.00321982451153062341451972844495251925 -0.399530940965348932264349791566966901 1.0 0.0038072061090788072771703698810241846 -0.136552932854927554864061855739693897 1.0 0.00411220061985903298485285361363034607 0.136552932854927554864061855739693897 1.0 0.00411220061985903298485285361363034607 0.399530940965348932264349791566966901 1.0 0.0038072061090788072771703698810241846 0.632876153031860677662404854443655858 1.0 0.00321982451153062341451972844495251925 0.819279321644006678348641581716902661 1.0 0.00239355614491469871461622822273242831 0.944899272222882223407580138303218714 1.0 0.00138915935474539591921731203233453464 1.0 1.0 0.000229568411386593204775022956841138659 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n16-d5-spu.txt000066400000000000000000000024641277740313300252560ustar00rootroot00000000000000-1.0 -1.0 0.0277777777777777777777777777777777778 -0.447213595499957939281834733746255247 -1.0 0.138888888888888888888888888888888889 0.447213595499957939281834733746255247 -1.0 0.138888888888888888888888888888888889 1.0 -1.0 0.0277777777777777777777777777777777778 -1.0 -0.447213595499957939281834733746255247 0.138888888888888888888888888888888889 -0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.694444444444444444444444444444444444 0.447213595499957939281834733746255247 -0.447213595499957939281834733746255247 0.694444444444444444444444444444444444 1.0 -0.447213595499957939281834733746255247 0.138888888888888888888888888888888889 -1.0 0.447213595499957939281834733746255247 0.138888888888888888888888888888888889 -0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.694444444444444444444444444444444444 0.447213595499957939281834733746255247 0.447213595499957939281834733746255247 0.694444444444444444444444444444444444 1.0 0.447213595499957939281834733746255247 0.138888888888888888888888888888888889 -1.0 1.0 0.0277777777777777777777777777777777778 -0.447213595499957939281834733746255247 1.0 0.138888888888888888888888888888888889 0.447213595499957939281834733746255247 1.0 0.138888888888888888888888888888888889 1.0 1.0 0.0277777777777777777777777777777777778 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n169-d23-spu.txt000066400000000000000000000417441277740313300254330ustar00rootroot00000000000000-1.0 -1.0 0.000164365548980933596318211702827087442 -0.953309846642163911896905464755449152 -1.0 0.000997457522395114458892166517091456219 -0.84634756465187231686592560709875336 -1.0 0.00173053752166164550153736875114578063 -0.686188469081757426072759039566355553 -1.0 0.00235444698978910374368582383008731696 -0.482909821091336201746937233636933621 -1.0 0.00283035632777064212930171805614610638 -0.249286930106239992568673700374226981 -1.0 0.00312840756803431226228946344051482324 0.0 -1.0 0.00322988268376213764159152104540049928 0.249286930106239992568673700374226981 -1.0 0.00312840756803431226228946344051482324 0.482909821091336201746937233636933621 -1.0 0.00283035632777064212930171805614610638 0.686188469081757426072759039566355553 -1.0 0.00235444698978910374368582383008731696 0.84634756465187231686592560709875336 -1.0 0.00173053752166164550153736875114578063 0.953309846642163911896905464755449152 -1.0 0.000997457522395114458892166517091456219 1.0 -1.0 0.000164365548980933596318211702827087442 -1.0 -0.953309846642163911896905464755449152 0.000997457522395114458892166517091456219 -0.953309846642163911896905464755449152 -0.953309846642163911896905464755449152 0.00605310246065013999584547747747012828 -0.84634756465187231686592560709875336 -0.953309846642163911896905464755449152 0.0105018215767869860030521246905824112 -0.686188469081757426072759039566355553 -0.953309846642163911896905464755449152 0.0142880358786018853076072242370469298 -0.482909821091336201746937233636933621 -0.953309846642163911896905464755449152 0.0171761067188168840414584140691986788 -0.249286930106239992568673700374226981 -0.953309846642163911896905464755449152 0.0189848400787174884703516507386284957 0.0 -0.953309846642163911896905464755449152 0.0196006450217008590327638612062309701 0.249286930106239992568673700374226981 -0.953309846642163911896905464755449152 0.0189848400787174884703516507386284957 0.482909821091336201746937233636933621 -0.953309846642163911896905464755449152 0.0171761067188168840414584140691986788 0.686188469081757426072759039566355553 -0.953309846642163911896905464755449152 0.0142880358786018853076072242370469298 0.84634756465187231686592560709875336 -0.953309846642163911896905464755449152 0.0105018215767869860030521246905824112 0.953309846642163911896905464755449152 -0.953309846642163911896905464755449152 0.00605310246065013999584547747747012828 1.0 -0.953309846642163911896905464755449152 0.000997457522395114458892166517091456219 -1.0 -0.84634756465187231686592560709875336 0.00173053752166164550153736875114578063 -0.953309846642163911896905464755449152 -0.84634756465187231686592560709875336 0.0105018215767869860030521246905824112 -0.84634756465187231686592560709875336 -0.84634756465187231686592560709875336 0.0182201205328388027753326743961863034 -0.686188469081757426072759039566355553 -0.84634756465187231686592560709875336 0.0247890076956819849907164796088389763 -0.482909821091336201746937233636933621 -0.84634756465187231686592560709875336 0.0297996621265672614078224975601033643 -0.249286930106239992568673700374226981 -0.84634756465187231686592560709875336 0.0329377215182826315660197991045859966 0.0 -0.84634756465187231686592560709875336 0.0340061114355780737508676369558561135 0.249286930106239992568673700374226981 -0.84634756465187231686592560709875336 0.0329377215182826315660197991045859966 0.482909821091336201746937233636933621 -0.84634756465187231686592560709875336 0.0297996621265672614078224975601033643 0.686188469081757426072759039566355553 -0.84634756465187231686592560709875336 0.0247890076956819849907164796088389763 0.84634756465187231686592560709875336 -0.84634756465187231686592560709875336 0.0182201205328388027753326743961863034 0.953309846642163911896905464755449152 -0.84634756465187231686592560709875336 0.0105018215767869860030521246905824112 1.0 -0.84634756465187231686592560709875336 0.00173053752166164550153736875114578063 -1.0 -0.686188469081757426072759039566355553 0.00235444698978910374368582383008731696 -0.953309846642163911896905464755449152 -0.686188469081757426072759039566355553 0.0142880358786018853076072242370469298 -0.84634756465187231686592560709875336 -0.686188469081757426072759039566355553 0.0247890076956819849907164796088389763 -0.686188469081757426072759039566355553 -0.686188469081757426072759039566355553 0.0337261710990908975767083942049606143 -0.482909821091336201746937233636933621 -0.686188469081757426072759039566355553 0.0405433132263205922471616495625451525 -0.249286930106239992568673700374226981 -0.686188469081757426072759039566355553 0.0448127349499879380014457773460816962 0.0 -0.686188469081757426072759039566355553 0.0462663107281553802803378199145000745 0.249286930106239992568673700374226981 -0.686188469081757426072759039566355553 0.0448127349499879380014457773460816962 0.482909821091336201746937233636933621 -0.686188469081757426072759039566355553 0.0405433132263205922471616495625451525 0.686188469081757426072759039566355553 -0.686188469081757426072759039566355553 0.0337261710990908975767083942049606143 0.84634756465187231686592560709875336 -0.686188469081757426072759039566355553 0.0247890076956819849907164796088389763 0.953309846642163911896905464755449152 -0.686188469081757426072759039566355553 0.0142880358786018853076072242370469298 1.0 -0.686188469081757426072759039566355553 0.00235444698978910374368582383008731696 -1.0 -0.482909821091336201746937233636933621 0.00283035632777064212930171805614610638 -0.953309846642163911896905464755449152 -0.482909821091336201746937233636933621 0.0171761067188168840414584140691986788 -0.84634756465187231686592560709875336 -0.482909821091336201746937233636933621 0.0297996621265672614078224975601033643 -0.686188469081757426072759039566355553 -0.482909821091336201746937233636933621 0.0405433132263205922471616495625451525 -0.482909821091336201746937233636933621 -0.482909821091336201746937233636933621 0.0487384186760485979207673340804963802 -0.249286930106239992568673700374226981 -0.482909821091336201746937233636933621 0.0538708276212955324373837609132268525 0.0 -0.482909821091336201746937233636933621 0.0556182177385811518032772682753595255 0.249286930106239992568673700374226981 -0.482909821091336201746937233636933621 0.0538708276212955324373837609132268525 0.482909821091336201746937233636933621 -0.482909821091336201746937233636933621 0.0487384186760485979207673340804963802 0.686188469081757426072759039566355553 -0.482909821091336201746937233636933621 0.0405433132263205922471616495625451525 0.84634756465187231686592560709875336 -0.482909821091336201746937233636933621 0.0297996621265672614078224975601033643 0.953309846642163911896905464755449152 -0.482909821091336201746937233636933621 0.0171761067188168840414584140691986788 1.0 -0.482909821091336201746937233636933621 0.00283035632777064212930171805614610638 -1.0 -0.249286930106239992568673700374226981 0.00312840756803431226228946344051482324 -0.953309846642163911896905464755449152 -0.249286930106239992568673700374226981 0.0189848400787174884703516507386284957 -0.84634756465187231686592560709875336 -0.249286930106239992568673700374226981 0.0329377215182826315660197991045859966 -0.686188469081757426072759039566355553 -0.249286930106239992568673700374226981 0.0448127349499879380014457773460816962 -0.482909821091336201746937233636933621 -0.249286930106239992568673700374226981 0.0538708276212955324373837609132268525 -0.249286930106239992568673700374226981 -0.249286930106239992568673700374226981 0.0595437059189918468851734859083903326 0.0 -0.249286930106239992568673700374226981 0.0614751053027332136718284218174560314 0.249286930106239992568673700374226981 -0.249286930106239992568673700374226981 0.0595437059189918468851734859083903326 0.482909821091336201746937233636933621 -0.249286930106239992568673700374226981 0.0538708276212955324373837609132268525 0.686188469081757426072759039566355553 -0.249286930106239992568673700374226981 0.0448127349499879380014457773460816962 0.84634756465187231686592560709875336 -0.249286930106239992568673700374226981 0.0329377215182826315660197991045859966 0.953309846642163911896905464755449152 -0.249286930106239992568673700374226981 0.0189848400787174884703516507386284957 1.0 -0.249286930106239992568673700374226981 0.00312840756803431226228946344051482324 -1.0 0.0 0.00322988268376213764159152104540049928 -0.953309846642163911896905464755449152 0.0 0.0196006450217008590327638612062309701 -0.84634756465187231686592560709875336 0.0 0.0340061114355780737508676369558561135 -0.686188469081757426072759039566355553 0.0 0.0462663107281553802803378199145000745 -0.482909821091336201746937233636933621 0.0 0.0556182177385811518032772682753595255 -0.249286930106239992568673700374226981 0.0 0.0614751053027332136718284218174560314 0.0 0.0 0.0634691528458718397269442246528714592 0.249286930106239992568673700374226981 0.0 0.0614751053027332136718284218174560314 0.482909821091336201746937233636933621 0.0 0.0556182177385811518032772682753595255 0.686188469081757426072759039566355553 0.0 0.0462663107281553802803378199145000745 0.84634756465187231686592560709875336 0.0 0.0340061114355780737508676369558561135 0.953309846642163911896905464755449152 0.0 0.0196006450217008590327638612062309701 1.0 0.0 0.00322988268376213764159152104540049928 -1.0 0.249286930106239992568673700374226981 0.00312840756803431226228946344051482324 -0.953309846642163911896905464755449152 0.249286930106239992568673700374226981 0.0189848400787174884703516507386284957 -0.84634756465187231686592560709875336 0.249286930106239992568673700374226981 0.0329377215182826315660197991045859966 -0.686188469081757426072759039566355553 0.249286930106239992568673700374226981 0.0448127349499879380014457773460816962 -0.482909821091336201746937233636933621 0.249286930106239992568673700374226981 0.0538708276212955324373837609132268525 -0.249286930106239992568673700374226981 0.249286930106239992568673700374226981 0.0595437059189918468851734859083903326 0.0 0.249286930106239992568673700374226981 0.0614751053027332136718284218174560314 0.249286930106239992568673700374226981 0.249286930106239992568673700374226981 0.0595437059189918468851734859083903326 0.482909821091336201746937233636933621 0.249286930106239992568673700374226981 0.0538708276212955324373837609132268525 0.686188469081757426072759039566355553 0.249286930106239992568673700374226981 0.0448127349499879380014457773460816962 0.84634756465187231686592560709875336 0.249286930106239992568673700374226981 0.0329377215182826315660197991045859966 0.953309846642163911896905464755449152 0.249286930106239992568673700374226981 0.0189848400787174884703516507386284957 1.0 0.249286930106239992568673700374226981 0.00312840756803431226228946344051482324 -1.0 0.482909821091336201746937233636933621 0.00283035632777064212930171805614610638 -0.953309846642163911896905464755449152 0.482909821091336201746937233636933621 0.0171761067188168840414584140691986788 -0.84634756465187231686592560709875336 0.482909821091336201746937233636933621 0.0297996621265672614078224975601033643 -0.686188469081757426072759039566355553 0.482909821091336201746937233636933621 0.0405433132263205922471616495625451525 -0.482909821091336201746937233636933621 0.482909821091336201746937233636933621 0.0487384186760485979207673340804963802 -0.249286930106239992568673700374226981 0.482909821091336201746937233636933621 0.0538708276212955324373837609132268525 0.0 0.482909821091336201746937233636933621 0.0556182177385811518032772682753595255 0.249286930106239992568673700374226981 0.482909821091336201746937233636933621 0.0538708276212955324373837609132268525 0.482909821091336201746937233636933621 0.482909821091336201746937233636933621 0.0487384186760485979207673340804963802 0.686188469081757426072759039566355553 0.482909821091336201746937233636933621 0.0405433132263205922471616495625451525 0.84634756465187231686592560709875336 0.482909821091336201746937233636933621 0.0297996621265672614078224975601033643 0.953309846642163911896905464755449152 0.482909821091336201746937233636933621 0.0171761067188168840414584140691986788 1.0 0.482909821091336201746937233636933621 0.00283035632777064212930171805614610638 -1.0 0.686188469081757426072759039566355553 0.00235444698978910374368582383008731696 -0.953309846642163911896905464755449152 0.686188469081757426072759039566355553 0.0142880358786018853076072242370469298 -0.84634756465187231686592560709875336 0.686188469081757426072759039566355553 0.0247890076956819849907164796088389763 -0.686188469081757426072759039566355553 0.686188469081757426072759039566355553 0.0337261710990908975767083942049606143 -0.482909821091336201746937233636933621 0.686188469081757426072759039566355553 0.0405433132263205922471616495625451525 -0.249286930106239992568673700374226981 0.686188469081757426072759039566355553 0.0448127349499879380014457773460816962 0.0 0.686188469081757426072759039566355553 0.0462663107281553802803378199145000745 0.249286930106239992568673700374226981 0.686188469081757426072759039566355553 0.0448127349499879380014457773460816962 0.482909821091336201746937233636933621 0.686188469081757426072759039566355553 0.0405433132263205922471616495625451525 0.686188469081757426072759039566355553 0.686188469081757426072759039566355553 0.0337261710990908975767083942049606143 0.84634756465187231686592560709875336 0.686188469081757426072759039566355553 0.0247890076956819849907164796088389763 0.953309846642163911896905464755449152 0.686188469081757426072759039566355553 0.0142880358786018853076072242370469298 1.0 0.686188469081757426072759039566355553 0.00235444698978910374368582383008731696 -1.0 0.84634756465187231686592560709875336 0.00173053752166164550153736875114578063 -0.953309846642163911896905464755449152 0.84634756465187231686592560709875336 0.0105018215767869860030521246905824112 -0.84634756465187231686592560709875336 0.84634756465187231686592560709875336 0.0182201205328388027753326743961863034 -0.686188469081757426072759039566355553 0.84634756465187231686592560709875336 0.0247890076956819849907164796088389763 -0.482909821091336201746937233636933621 0.84634756465187231686592560709875336 0.0297996621265672614078224975601033643 -0.249286930106239992568673700374226981 0.84634756465187231686592560709875336 0.0329377215182826315660197991045859966 0.0 0.84634756465187231686592560709875336 0.0340061114355780737508676369558561135 0.249286930106239992568673700374226981 0.84634756465187231686592560709875336 0.0329377215182826315660197991045859966 0.482909821091336201746937233636933621 0.84634756465187231686592560709875336 0.0297996621265672614078224975601033643 0.686188469081757426072759039566355553 0.84634756465187231686592560709875336 0.0247890076956819849907164796088389763 0.84634756465187231686592560709875336 0.84634756465187231686592560709875336 0.0182201205328388027753326743961863034 0.953309846642163911896905464755449152 0.84634756465187231686592560709875336 0.0105018215767869860030521246905824112 1.0 0.84634756465187231686592560709875336 0.00173053752166164550153736875114578063 -1.0 0.953309846642163911896905464755449152 0.000997457522395114458892166517091456219 -0.953309846642163911896905464755449152 0.953309846642163911896905464755449152 0.00605310246065013999584547747747012828 -0.84634756465187231686592560709875336 0.953309846642163911896905464755449152 0.0105018215767869860030521246905824112 -0.686188469081757426072759039566355553 0.953309846642163911896905464755449152 0.0142880358786018853076072242370469298 -0.482909821091336201746937233636933621 0.953309846642163911896905464755449152 0.0171761067188168840414584140691986788 -0.249286930106239992568673700374226981 0.953309846642163911896905464755449152 0.0189848400787174884703516507386284957 0.0 0.953309846642163911896905464755449152 0.0196006450217008590327638612062309701 0.249286930106239992568673700374226981 0.953309846642163911896905464755449152 0.0189848400787174884703516507386284957 0.482909821091336201746937233636933621 0.953309846642163911896905464755449152 0.0171761067188168840414584140691986788 0.686188469081757426072759039566355553 0.953309846642163911896905464755449152 0.0142880358786018853076072242370469298 0.84634756465187231686592560709875336 0.953309846642163911896905464755449152 0.0105018215767869860030521246905824112 0.953309846642163911896905464755449152 0.953309846642163911896905464755449152 0.00605310246065013999584547747747012828 1.0 0.953309846642163911896905464755449152 0.000997457522395114458892166517091456219 -1.0 1.0 0.000164365548980933596318211702827087442 -0.953309846642163911896905464755449152 1.0 0.000997457522395114458892166517091456219 -0.84634756465187231686592560709875336 1.0 0.00173053752166164550153736875114578063 -0.686188469081757426072759039566355553 1.0 0.00235444698978910374368582383008731696 -0.482909821091336201746937233636933621 1.0 0.00283035632777064212930171805614610638 -0.249286930106239992568673700374226981 1.0 0.00312840756803431226228946344051482324 0.0 1.0 0.00322988268376213764159152104540049928 0.249286930106239992568673700374226981 1.0 0.00312840756803431226228946344051482324 0.482909821091336201746937233636933621 1.0 0.00283035632777064212930171805614610638 0.686188469081757426072759039566355553 1.0 0.00235444698978910374368582383008731696 0.84634756465187231686592560709875336 1.0 0.00173053752166164550153736875114578063 0.953309846642163911896905464755449152 1.0 0.000997457522395114458892166517091456219 1.0 1.0 0.000164365548980933596318211702827087442 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n196-d25-spu.txt000066400000000000000000000516541277740313300254360ustar00rootroot00000000000000-1.0 -1.0 0.00012075836251660427484603308779132955 -0.959935045267260901355100162015424389 -1.0 0.000734475653820673457517260008198382693 -0.867801053830347251000220202908264213 -1.0 0.0012811720428429851817691941830181344 -0.728868599091326140584672400520881596 -1.0 0.00175848188750496859794308788997356748 -0.550639402928647055316622705859080634 -1.0 0.00214094669641116613890474481731741222 -0.342724013342712845043903403641674645 -1.0 0.00240798080230517313045233542806777597 -0.116331868883703867658776709736160168 -1.0 0.00254519554360941822955635557464438671 0.116331868883703867658776709736160168 -1.0 0.00254519554360941822955635557464438671 0.342724013342712845043903403641674645 -1.0 0.00240798080230517313045233542806777597 0.550639402928647055316622705859080634 -1.0 0.00214094669641116613890474481731741222 0.728868599091326140584672400520881596 -1.0 0.00175848188750496859794308788997356748 0.867801053830347251000220202908264213 -1.0 0.0012811720428429851817691941830181344 0.959935045267260901355100162015424389 -1.0 0.000734475653820673457517260008198382693 1.0 -1.0 0.00012075836251660427484603308779132955 -1.0 -0.959935045267260901355100162015424389 0.000734475653820673457517260008198382693 -0.959935045267260901355100162015424389 -0.959935045267260901355100162015424389 0.00446722259902398697283109473172202667 -0.867801053830347251000220202908264213 -0.959935045267260901355100162015424389 0.00779233548893546256701579874415191907 -0.728868599091326140584672400520881596 -0.959935045267260901355100162015424389 0.0106954260321262137757630094313658869 -0.550639402928647055316622705859080634 -0.959935045267260901355100162015424389 0.0130216507732587634722126235805618495 -0.342724013342712845043903403641674645 -0.959935045267260901355100162015424389 0.0146458037133249378131713748863230123 -0.116331868883703867658776709736160168 -0.959935045267260901355100162015424389 0.015480370237191246575559499363729748 0.116331868883703867658776709736160168 -0.959935045267260901355100162015424389 0.015480370237191246575559499363729748 0.342724013342712845043903403641674645 -0.959935045267260901355100162015424389 0.0146458037133249378131713748863230123 0.550639402928647055316622705859080634 -0.959935045267260901355100162015424389 0.0130216507732587634722126235805618495 0.728868599091326140584672400520881596 -0.959935045267260901355100162015424389 0.0106954260321262137757630094313658869 0.867801053830347251000220202908264213 -0.959935045267260901355100162015424389 0.00779233548893546256701579874415191907 0.959935045267260901355100162015424389 -0.959935045267260901355100162015424389 0.00446722259902398697283109473172202667 1.0 -0.959935045267260901355100162015424389 0.000734475653820673457517260008198382693 -1.0 -0.867801053830347251000220202908264213 0.0012811720428429851817691941830181344 -0.959935045267260901355100162015424389 -0.867801053830347251000220202908264213 0.00779233548893546256701579874415191907 -0.867801053830347251000220202908264213 -0.867801053830347251000220202908264213 0.0135924483336445963330634270110704845 -0.728868599091326140584672400520881596 -0.867801053830347251000220202908264213 0.0186564125677619458895256988466979538 -0.550639402928647055316622705859080634 -0.867801053830347251000220202908264213 0.0227141292370694616621151437917938459 -0.342724013342712845043903403641674645 -0.867801053830347251000220202908264213 0.0255471970580241713656551622022670473 -0.116331868883703867658776709736160168 -0.867801053830347251000220202908264213 0.0270029611704330285418522458756508451 0.116331868883703867658776709736160168 -0.867801053830347251000220202908264213 0.0270029611704330285418522458756508451 0.342724013342712845043903403641674645 -0.867801053830347251000220202908264213 0.0255471970580241713656551622022670473 0.550639402928647055316622705859080634 -0.867801053830347251000220202908264213 0.0227141292370694616621151437917938459 0.728868599091326140584672400520881596 -0.867801053830347251000220202908264213 0.0186564125677619458895256988466979538 0.867801053830347251000220202908264213 -0.867801053830347251000220202908264213 0.0135924483336445963330634270110704845 0.959935045267260901355100162015424389 -0.867801053830347251000220202908264213 0.00779233548893546256701579874415191907 1.0 -0.867801053830347251000220202908264213 0.0012811720428429851817691941830181344 -1.0 -0.728868599091326140584672400520881596 0.00175848188750496859794308788997356748 -0.959935045267260901355100162015424389 -0.728868599091326140584672400520881596 0.0106954260321262137757630094313658869 -0.867801053830347251000220202908264213 -0.728868599091326140584672400520881596 0.0186564125677619458895256988466979538 -0.728868599091326140584672400520881596 -0.728868599091326140584672400520881596 0.0256069930416442296887264160715978323 -0.550639402928647055316622705859080634 -0.728868599091326140584672400520881596 0.0311764411945795655605496054222118996 -0.342724013342712845043903403641674645 -0.728868599091326140584672400520881596 0.0350649887765006814728491564156638491 -0.116331868883703867658776709736160168 -0.728868599091326140584672400520881596 0.0370631082628345374274640239100836513 0.116331868883703867658776709736160168 -0.728868599091326140584672400520881596 0.0370631082628345374274640239100836513 0.342724013342712845043903403641674645 -0.728868599091326140584672400520881596 0.0350649887765006814728491564156638491 0.550639402928647055316622705859080634 -0.728868599091326140584672400520881596 0.0311764411945795655605496054222118996 0.728868599091326140584672400520881596 -0.728868599091326140584672400520881596 0.0256069930416442296887264160715978323 0.867801053830347251000220202908264213 -0.728868599091326140584672400520881596 0.0186564125677619458895256988466979538 0.959935045267260901355100162015424389 -0.728868599091326140584672400520881596 0.0106954260321262137757630094313658869 1.0 -0.728868599091326140584672400520881596 0.00175848188750496859794308788997356748 -1.0 -0.550639402928647055316622705859080634 0.00214094669641116613890474481731741222 -0.959935045267260901355100162015424389 -0.550639402928647055316622705859080634 0.0130216507732587634722126235805618495 -0.867801053830347251000220202908264213 -0.550639402928647055316622705859080634 0.0227141292370694616621151437917938459 -0.728868599091326140584672400520881596 -0.550639402928647055316622705859080634 0.0311764411945795655605496054222118996 -0.550639402928647055316622705859080634 -0.550639402928647055316622705859080634 0.0379572284796726498778855105870004462 -0.342724013342712845043903403641674645 -0.550639402928647055316622705859080634 0.0426915241005185704354795003276203519 -0.116331868883703867658776709736160168 -0.550639402928647055316622705859080634 0.0451242288919059414931846498493787068 0.116331868883703867658776709736160168 -0.550639402928647055316622705859080634 0.0451242288919059414931846498493787068 0.342724013342712845043903403641674645 -0.550639402928647055316622705859080634 0.0426915241005185704354795003276203519 0.550639402928647055316622705859080634 -0.550639402928647055316622705859080634 0.0379572284796726498778855105870004462 0.728868599091326140584672400520881596 -0.550639402928647055316622705859080634 0.0311764411945795655605496054222118996 0.867801053830347251000220202908264213 -0.550639402928647055316622705859080634 0.0227141292370694616621151437917938459 0.959935045267260901355100162015424389 -0.550639402928647055316622705859080634 0.0130216507732587634722126235805618495 1.0 -0.550639402928647055316622705859080634 0.00214094669641116613890474481731741222 -1.0 -0.342724013342712845043903403641674645 0.00240798080230517313045233542806777597 -0.959935045267260901355100162015424389 -0.342724013342712845043903403641674645 0.0146458037133249378131713748863230123 -0.867801053830347251000220202908264213 -0.342724013342712845043903403641674645 0.0255471970580241713656551622022670473 -0.728868599091326140584672400520881596 -0.342724013342712845043903403641674645 0.0350649887765006814728491564156638491 -0.550639402928647055316622705859080634 -0.342724013342712845043903403641674645 0.0426915241005185704354795003276203519 -0.342724013342712845043903403641674645 -0.342724013342712845043903403641674645 0.0480163147581020668078941509069513317 -0.116331868883703867658776709736160168 -0.342724013342712845043903403641674645 0.0507524438009951538456608437872742447 0.116331868883703867658776709736160168 -0.342724013342712845043903403641674645 0.0507524438009951538456608437872742447 0.342724013342712845043903403641674645 -0.342724013342712845043903403641674645 0.0480163147581020668078941509069513317 0.550639402928647055316622705859080634 -0.342724013342712845043903403641674645 0.0426915241005185704354795003276203519 0.728868599091326140584672400520881596 -0.342724013342712845043903403641674645 0.0350649887765006814728491564156638491 0.867801053830347251000220202908264213 -0.342724013342712845043903403641674645 0.0255471970580241713656551622022670473 0.959935045267260901355100162015424389 -0.342724013342712845043903403641674645 0.0146458037133249378131713748863230123 1.0 -0.342724013342712845043903403641674645 0.00240798080230517313045233542806777597 -1.0 -0.116331868883703867658776709736160168 0.00254519554360941822955635557464438671 -0.959935045267260901355100162015424389 -0.116331868883703867658776709736160168 0.015480370237191246575559499363729748 -0.867801053830347251000220202908264213 -0.116331868883703867658776709736160168 0.0270029611704330285418522458756508451 -0.728868599091326140584672400520881596 -0.116331868883703867658776709736160168 0.0370631082628345374274640239100836513 -0.550639402928647055316622705859080634 -0.116331868883703867658776709736160168 0.0451242288919059414931846498493787068 -0.342724013342712845043903403641674645 -0.116331868883703867658776709736160168 0.0507524438009951538456608437872742447 -0.116331868883703867658776709736160168 -0.116331868883703867658776709736160168 0.0536444865614877327763507389318776077 0.116331868883703867658776709736160168 -0.116331868883703867658776709736160168 0.0536444865614877327763507389318776077 0.342724013342712845043903403641674645 -0.116331868883703867658776709736160168 0.0507524438009951538456608437872742447 0.550639402928647055316622705859080634 -0.116331868883703867658776709736160168 0.0451242288919059414931846498493787068 0.728868599091326140584672400520881596 -0.116331868883703867658776709736160168 0.0370631082628345374274640239100836513 0.867801053830347251000220202908264213 -0.116331868883703867658776709736160168 0.0270029611704330285418522458756508451 0.959935045267260901355100162015424389 -0.116331868883703867658776709736160168 0.015480370237191246575559499363729748 1.0 -0.116331868883703867658776709736160168 0.00254519554360941822955635557464438671 -1.0 0.116331868883703867658776709736160168 0.00254519554360941822955635557464438671 -0.959935045267260901355100162015424389 0.116331868883703867658776709736160168 0.015480370237191246575559499363729748 -0.867801053830347251000220202908264213 0.116331868883703867658776709736160168 0.0270029611704330285418522458756508451 -0.728868599091326140584672400520881596 0.116331868883703867658776709736160168 0.0370631082628345374274640239100836513 -0.550639402928647055316622705859080634 0.116331868883703867658776709736160168 0.0451242288919059414931846498493787068 -0.342724013342712845043903403641674645 0.116331868883703867658776709736160168 0.0507524438009951538456608437872742447 -0.116331868883703867658776709736160168 0.116331868883703867658776709736160168 0.0536444865614877327763507389318776077 0.116331868883703867658776709736160168 0.116331868883703867658776709736160168 0.0536444865614877327763507389318776077 0.342724013342712845043903403641674645 0.116331868883703867658776709736160168 0.0507524438009951538456608437872742447 0.550639402928647055316622705859080634 0.116331868883703867658776709736160168 0.0451242288919059414931846498493787068 0.728868599091326140584672400520881596 0.116331868883703867658776709736160168 0.0370631082628345374274640239100836513 0.867801053830347251000220202908264213 0.116331868883703867658776709736160168 0.0270029611704330285418522458756508451 0.959935045267260901355100162015424389 0.116331868883703867658776709736160168 0.015480370237191246575559499363729748 1.0 0.116331868883703867658776709736160168 0.00254519554360941822955635557464438671 -1.0 0.342724013342712845043903403641674645 0.00240798080230517313045233542806777597 -0.959935045267260901355100162015424389 0.342724013342712845043903403641674645 0.0146458037133249378131713748863230123 -0.867801053830347251000220202908264213 0.342724013342712845043903403641674645 0.0255471970580241713656551622022670473 -0.728868599091326140584672400520881596 0.342724013342712845043903403641674645 0.0350649887765006814728491564156638491 -0.550639402928647055316622705859080634 0.342724013342712845043903403641674645 0.0426915241005185704354795003276203519 -0.342724013342712845043903403641674645 0.342724013342712845043903403641674645 0.0480163147581020668078941509069513317 -0.116331868883703867658776709736160168 0.342724013342712845043903403641674645 0.0507524438009951538456608437872742447 0.116331868883703867658776709736160168 0.342724013342712845043903403641674645 0.0507524438009951538456608437872742447 0.342724013342712845043903403641674645 0.342724013342712845043903403641674645 0.0480163147581020668078941509069513317 0.550639402928647055316622705859080634 0.342724013342712845043903403641674645 0.0426915241005185704354795003276203519 0.728868599091326140584672400520881596 0.342724013342712845043903403641674645 0.0350649887765006814728491564156638491 0.867801053830347251000220202908264213 0.342724013342712845043903403641674645 0.0255471970580241713656551622022670473 0.959935045267260901355100162015424389 0.342724013342712845043903403641674645 0.0146458037133249378131713748863230123 1.0 0.342724013342712845043903403641674645 0.00240798080230517313045233542806777597 -1.0 0.550639402928647055316622705859080634 0.00214094669641116613890474481731741222 -0.959935045267260901355100162015424389 0.550639402928647055316622705859080634 0.0130216507732587634722126235805618495 -0.867801053830347251000220202908264213 0.550639402928647055316622705859080634 0.0227141292370694616621151437917938459 -0.728868599091326140584672400520881596 0.550639402928647055316622705859080634 0.0311764411945795655605496054222118996 -0.550639402928647055316622705859080634 0.550639402928647055316622705859080634 0.0379572284796726498778855105870004462 -0.342724013342712845043903403641674645 0.550639402928647055316622705859080634 0.0426915241005185704354795003276203519 -0.116331868883703867658776709736160168 0.550639402928647055316622705859080634 0.0451242288919059414931846498493787068 0.116331868883703867658776709736160168 0.550639402928647055316622705859080634 0.0451242288919059414931846498493787068 0.342724013342712845043903403641674645 0.550639402928647055316622705859080634 0.0426915241005185704354795003276203519 0.550639402928647055316622705859080634 0.550639402928647055316622705859080634 0.0379572284796726498778855105870004462 0.728868599091326140584672400520881596 0.550639402928647055316622705859080634 0.0311764411945795655605496054222118996 0.867801053830347251000220202908264213 0.550639402928647055316622705859080634 0.0227141292370694616621151437917938459 0.959935045267260901355100162015424389 0.550639402928647055316622705859080634 0.0130216507732587634722126235805618495 1.0 0.550639402928647055316622705859080634 0.00214094669641116613890474481731741222 -1.0 0.728868599091326140584672400520881596 0.00175848188750496859794308788997356748 -0.959935045267260901355100162015424389 0.728868599091326140584672400520881596 0.0106954260321262137757630094313658869 -0.867801053830347251000220202908264213 0.728868599091326140584672400520881596 0.0186564125677619458895256988466979538 -0.728868599091326140584672400520881596 0.728868599091326140584672400520881596 0.0256069930416442296887264160715978323 -0.550639402928647055316622705859080634 0.728868599091326140584672400520881596 0.0311764411945795655605496054222118996 -0.342724013342712845043903403641674645 0.728868599091326140584672400520881596 0.0350649887765006814728491564156638491 -0.116331868883703867658776709736160168 0.728868599091326140584672400520881596 0.0370631082628345374274640239100836513 0.116331868883703867658776709736160168 0.728868599091326140584672400520881596 0.0370631082628345374274640239100836513 0.342724013342712845043903403641674645 0.728868599091326140584672400520881596 0.0350649887765006814728491564156638491 0.550639402928647055316622705859080634 0.728868599091326140584672400520881596 0.0311764411945795655605496054222118996 0.728868599091326140584672400520881596 0.728868599091326140584672400520881596 0.0256069930416442296887264160715978323 0.867801053830347251000220202908264213 0.728868599091326140584672400520881596 0.0186564125677619458895256988466979538 0.959935045267260901355100162015424389 0.728868599091326140584672400520881596 0.0106954260321262137757630094313658869 1.0 0.728868599091326140584672400520881596 0.00175848188750496859794308788997356748 -1.0 0.867801053830347251000220202908264213 0.0012811720428429851817691941830181344 -0.959935045267260901355100162015424389 0.867801053830347251000220202908264213 0.00779233548893546256701579874415191907 -0.867801053830347251000220202908264213 0.867801053830347251000220202908264213 0.0135924483336445963330634270110704845 -0.728868599091326140584672400520881596 0.867801053830347251000220202908264213 0.0186564125677619458895256988466979538 -0.550639402928647055316622705859080634 0.867801053830347251000220202908264213 0.0227141292370694616621151437917938459 -0.342724013342712845043903403641674645 0.867801053830347251000220202908264213 0.0255471970580241713656551622022670473 -0.116331868883703867658776709736160168 0.867801053830347251000220202908264213 0.0270029611704330285418522458756508451 0.116331868883703867658776709736160168 0.867801053830347251000220202908264213 0.0270029611704330285418522458756508451 0.342724013342712845043903403641674645 0.867801053830347251000220202908264213 0.0255471970580241713656551622022670473 0.550639402928647055316622705859080634 0.867801053830347251000220202908264213 0.0227141292370694616621151437917938459 0.728868599091326140584672400520881596 0.867801053830347251000220202908264213 0.0186564125677619458895256988466979538 0.867801053830347251000220202908264213 0.867801053830347251000220202908264213 0.0135924483336445963330634270110704845 0.959935045267260901355100162015424389 0.867801053830347251000220202908264213 0.00779233548893546256701579874415191907 1.0 0.867801053830347251000220202908264213 0.0012811720428429851817691941830181344 -1.0 0.959935045267260901355100162015424389 0.000734475653820673457517260008198382693 -0.959935045267260901355100162015424389 0.959935045267260901355100162015424389 0.00446722259902398697283109473172202667 -0.867801053830347251000220202908264213 0.959935045267260901355100162015424389 0.00779233548893546256701579874415191907 -0.728868599091326140584672400520881596 0.959935045267260901355100162015424389 0.0106954260321262137757630094313658869 -0.550639402928647055316622705859080634 0.959935045267260901355100162015424389 0.0130216507732587634722126235805618495 -0.342724013342712845043903403641674645 0.959935045267260901355100162015424389 0.0146458037133249378131713748863230123 -0.116331868883703867658776709736160168 0.959935045267260901355100162015424389 0.015480370237191246575559499363729748 0.116331868883703867658776709736160168 0.959935045267260901355100162015424389 0.015480370237191246575559499363729748 0.342724013342712845043903403641674645 0.959935045267260901355100162015424389 0.0146458037133249378131713748863230123 0.550639402928647055316622705859080634 0.959935045267260901355100162015424389 0.0130216507732587634722126235805618495 0.728868599091326140584672400520881596 0.959935045267260901355100162015424389 0.0106954260321262137757630094313658869 0.867801053830347251000220202908264213 0.959935045267260901355100162015424389 0.00779233548893546256701579874415191907 0.959935045267260901355100162015424389 0.959935045267260901355100162015424389 0.00446722259902398697283109473172202667 1.0 0.959935045267260901355100162015424389 0.000734475653820673457517260008198382693 -1.0 1.0 0.00012075836251660427484603308779132955 -0.959935045267260901355100162015424389 1.0 0.000734475653820673457517260008198382693 -0.867801053830347251000220202908264213 1.0 0.0012811720428429851817691941830181344 -0.728868599091326140584672400520881596 1.0 0.00175848188750496859794308788997356748 -0.550639402928647055316622705859080634 1.0 0.00214094669641116613890474481731741222 -0.342724013342712845043903403641674645 1.0 0.00240798080230517313045233542806777597 -0.116331868883703867658776709736160168 1.0 0.00254519554360941822955635557464438671 0.116331868883703867658776709736160168 1.0 0.00254519554360941822955635557464438671 0.342724013342712845043903403641674645 1.0 0.00240798080230517313045233542806777597 0.550639402928647055316622705859080634 1.0 0.00214094669641116613890474481731741222 0.728868599091326140584672400520881596 1.0 0.00175848188750496859794308788997356748 0.867801053830347251000220202908264213 1.0 0.0012811720428429851817691941830181344 0.959935045267260901355100162015424389 1.0 0.000734475653820673457517260008198382693 1.0 1.0 0.00012075836251660427484603308779132955 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n25-d7-spu.txt000066400000000000000000000033531277740313300252560ustar00rootroot00000000000000-1.0 -1.0 0.01 -0.654653670707977143798292456246858356 -1.0 0.0544444444444444444444444444444444444 0.0 -1.0 0.0711111111111111111111111111111111111 0.654653670707977143798292456246858356 -1.0 0.0544444444444444444444444444444444444 1.0 -1.0 0.01 -1.0 -0.654653670707977143798292456246858356 0.0544444444444444444444444444444444444 -0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.296419753086419753086419753086419753 0.0 -0.654653670707977143798292456246858356 0.387160493827160493827160493827160494 0.654653670707977143798292456246858356 -0.654653670707977143798292456246858356 0.296419753086419753086419753086419753 1.0 -0.654653670707977143798292456246858356 0.0544444444444444444444444444444444444 -1.0 0.0 0.0711111111111111111111111111111111111 -0.654653670707977143798292456246858356 0.0 0.387160493827160493827160493827160494 0.0 0.0 0.505679012345679012345679012345679012 0.654653670707977143798292456246858356 0.0 0.387160493827160493827160493827160494 1.0 0.0 0.0711111111111111111111111111111111111 -1.0 0.654653670707977143798292456246858356 0.0544444444444444444444444444444444444 -0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.296419753086419753086419753086419753 0.0 0.654653670707977143798292456246858356 0.387160493827160493827160493827160494 0.654653670707977143798292456246858356 0.654653670707977143798292456246858356 0.296419753086419753086419753086419753 1.0 0.654653670707977143798292456246858356 0.0544444444444444444444444444444444444 -1.0 1.0 0.01 -0.654653670707977143798292456246858356 1.0 0.0544444444444444444444444444444444444 0.0 1.0 0.0711111111111111111111111111111111111 0.654653670707977143798292456246858356 1.0 0.0544444444444444444444444444444444444 1.0 1.0 0.01 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n36-d9-spu.txt000066400000000000000000000061001277740313300252530ustar00rootroot00000000000000-1.0 -1.0 0.00444444444444444444444444444444444444 -0.76505532392946469285100297395933815 -1.0 0.0252316637531897986877741872141349768 -0.285231516480645096314150994040879072 -1.0 0.0369905584690324235344480350080872454 0.285231516480645096314150994040879072 -1.0 0.0369905584690324235344480350080872454 0.76505532392946469285100297395933815 -1.0 0.0252316637531897986877741872141349768 1.0 -1.0 0.00444444444444444444444444444444444444 -1.0 -0.76505532392946469285100297395933815 0.0252316637531897986877741872141349768 -0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.143243292544657181628838620997889676 -0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.21 0.285231516480645096314150994040879072 -0.76505532392946469285100297395933815 0.21 0.76505532392946469285100297395933815 -0.76505532392946469285100297395933815 0.143243292544657181628838620997889676 1.0 -0.76505532392946469285100297395933815 0.0252316637531897986877741872141349768 -1.0 -0.285231516480645096314150994040879072 0.0369905584690324235344480350080872454 -0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.21 -0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.307867818566453929482272490113221435 0.285231516480645096314150994040879072 -0.285231516480645096314150994040879072 0.307867818566453929482272490113221435 0.76505532392946469285100297395933815 -0.285231516480645096314150994040879072 0.21 1.0 -0.285231516480645096314150994040879072 0.0369905584690324235344480350080872454 -1.0 0.285231516480645096314150994040879072 0.0369905584690324235344480350080872454 -0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.21 -0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.307867818566453929482272490113221435 0.285231516480645096314150994040879072 0.285231516480645096314150994040879072 0.307867818566453929482272490113221435 0.76505532392946469285100297395933815 0.285231516480645096314150994040879072 0.21 1.0 0.285231516480645096314150994040879072 0.0369905584690324235344480350080872454 -1.0 0.76505532392946469285100297395933815 0.0252316637531897986877741872141349768 -0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.143243292544657181628838620997889676 -0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.21 0.285231516480645096314150994040879072 0.76505532392946469285100297395933815 0.21 0.76505532392946469285100297395933815 0.76505532392946469285100297395933815 0.143243292544657181628838620997889676 1.0 0.76505532392946469285100297395933815 0.0252316637531897986877741872141349768 -1.0 1.0 0.00444444444444444444444444444444444444 -0.76505532392946469285100297395933815 1.0 0.0252316637531897986877741872141349768 -0.285231516480645096314150994040879072 1.0 0.0369905584690324235344480350080872454 0.285231516480645096314150994040879072 1.0 0.0369905584690324235344480350080872454 0.76505532392946469285100297395933815 1.0 0.0252316637531897986877741872141349768 1.0 1.0 0.00444444444444444444444444444444444444 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n4-d1-spu.txt000066400000000000000000000000641277740313300251610ustar00rootroot00000000000000-1.0 -1.0 1.0 1.0 -1.0 1.0 -1.0 1.0 1.0 1.0 1.0 1.0 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n49-d11-spu.txt000066400000000000000000000103251277740313300253340ustar00rootroot00000000000000-1.0 -1.0 0.00226757369614512471655328798185941043 -0.83022389627856692987203221396746514 -1.0 0.0131821927315031403814619241090507759 -0.468848793470714213803771881908766329 -1.0 0.0205593038671363154008510010610172513 0.0 -1.0 0.0232199546485260770975056689342403628 0.468848793470714213803771881908766329 -1.0 0.0205593038671363154008510010610172513 0.83022389627856692987203221396746514 -1.0 0.0131821927315031403814619241090507759 1.0 -1.0 0.00226757369614512471655328798185941043 -1.0 -0.83022389627856692987203221396746514 0.0131821927315031403814619241090507759 -0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0766326604978279533659493491100224839 -0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.119518367346938775510204081632653061 0.0 -0.83022389627856692987203221396746514 0.134985653570592157506170102876679945 0.468848793470714213803771881908766329 -0.83022389627856692987203221396746514 0.119518367346938775510204081632653061 0.83022389627856692987203221396746514 -0.83022389627856692987203221396746514 0.0766326604978279533659493491100224839 1.0 -0.83022389627856692987203221396746514 0.0131821927315031403814619241090507759 -1.0 -0.468848793470714213803771881908766329 0.0205593038671363154008510010610172513 -0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.119518367346938775510204081632653061 -0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.186404074196049597654458814155283639 0.0 -0.468848793470714213803771881908766329 0.210527271599475869704714250864816654 0.468848793470714213803771881908766329 -0.468848793470714213803771881908766329 0.186404074196049597654458814155283639 0.83022389627856692987203221396746514 -0.468848793470714213803771881908766329 0.119518367346938775510204081632653061 1.0 -0.468848793470714213803771881908766329 0.0205593038671363154008510010610172513 -1.0 0.0 0.0232199546485260770975056689342403628 -0.83022389627856692987203221396746514 0.0 0.134985653570592157506170102876679945 -0.468848793470714213803771881908766329 0.0 0.210527271599475869704714250864816654 0.0 0.0 0.237772335600907029478458049886621315 0.468848793470714213803771881908766329 0.0 0.210527271599475869704714250864816654 0.83022389627856692987203221396746514 0.0 0.134985653570592157506170102876679945 1.0 0.0 0.0232199546485260770975056689342403628 -1.0 0.468848793470714213803771881908766329 0.0205593038671363154008510010610172513 -0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.119518367346938775510204081632653061 -0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.186404074196049597654458814155283639 0.0 0.468848793470714213803771881908766329 0.210527271599475869704714250864816654 0.468848793470714213803771881908766329 0.468848793470714213803771881908766329 0.186404074196049597654458814155283639 0.83022389627856692987203221396746514 0.468848793470714213803771881908766329 0.119518367346938775510204081632653061 1.0 0.468848793470714213803771881908766329 0.0205593038671363154008510010610172513 -1.0 0.83022389627856692987203221396746514 0.0131821927315031403814619241090507759 -0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0766326604978279533659493491100224839 -0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.119518367346938775510204081632653061 0.0 0.83022389627856692987203221396746514 0.134985653570592157506170102876679945 0.468848793470714213803771881908766329 0.83022389627856692987203221396746514 0.119518367346938775510204081632653061 0.83022389627856692987203221396746514 0.83022389627856692987203221396746514 0.0766326604978279533659493491100224839 1.0 0.83022389627856692987203221396746514 0.0131821927315031403814619241090507759 -1.0 1.0 0.00226757369614512471655328798185941043 -0.83022389627856692987203221396746514 1.0 0.0131821927315031403814619241090507759 -0.468848793470714213803771881908766329 1.0 0.0205593038671363154008510010610172513 0.0 1.0 0.0232199546485260770975056689342403628 0.468848793470714213803771881908766329 1.0 0.0205593038671363154008510010610172513 0.83022389627856692987203221396746514 1.0 0.0131821927315031403814619241090507759 1.0 1.0 0.00226757369614512471655328798185941043 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n64-d13-spu.txt000066400000000000000000000144641277740313300253430ustar00rootroot00000000000000-1.0 -1.0 0.00127551020408163265306122448979591837 -0.871740148509606615337445761220663438 -1.0 0.00752515096941092997796400234913415444 -0.59170018143314230214451073139795319 -1.0 0.0121829533029822987415800241824195776 -0.209299217902478868768657260345351255 -1.0 0.0147306712378108529131090346929360639 0.209299217902478868768657260345351255 -1.0 0.0147306712378108529131090346929360639 0.59170018143314230214451073139795319 -1.0 0.0121829533029822987415800241824195776 0.871740148509606615337445761220663438 -1.0 0.00752515096941092997796400234913415444 1.0 -1.0 0.00127551020408163265306122448979591837 -1.0 -0.871740148509606615337445761220663438 0.00752515096941092997796400234913415444 -0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0443962713361421872166437836722206532 -0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0718759932808486639707454380157174239 -0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.086906811557104258217638841738684093 0.209299217902478868768657260345351255 -0.871740148509606615337445761220663438 0.086906811557104258217638841738684093 0.59170018143314230214451073139795319 -0.871740148509606615337445761220663438 0.0718759932808486639707454380157174239 0.871740148509606615337445761220663438 -0.871740148509606615337445761220663438 0.0443962713361421872166437836722206532 1.0 -0.871740148509606615337445761220663438 0.00752515096941092997796400234913415444 -1.0 -0.59170018143314230214451073139795319 0.0121829533029822987415800241824195776 -0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0718759932808486639707454380157174239 -0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.116364691327195485238031920967867562 -0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.140699054572477916813883293941743608 0.209299217902478868768657260345351255 -0.59170018143314230214451073139795319 0.140699054572477916813883293941743608 0.59170018143314230214451073139795319 -0.59170018143314230214451073139795319 0.116364691327195485238031920967867562 0.871740148509606615337445761220663438 -0.59170018143314230214451073139795319 0.0718759932808486639707454380157174239 1.0 -0.59170018143314230214451073139795319 0.0121829533029822987415800241824195776 -1.0 -0.209299217902478868768657260345351255 0.0147306712378108529131090346929360639 -0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.086906811557104258217638841738684093 -0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.140699054572477916813883293941743608 -0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.170122257291310853622421801028846025 0.209299217902478868768657260345351255 -0.209299217902478868768657260345351255 0.170122257291310853622421801028846025 0.59170018143314230214451073139795319 -0.209299217902478868768657260345351255 0.140699054572477916813883293941743608 0.871740148509606615337445761220663438 -0.209299217902478868768657260345351255 0.086906811557104258217638841738684093 1.0 -0.209299217902478868768657260345351255 0.0147306712378108529131090346929360639 -1.0 0.209299217902478868768657260345351255 0.0147306712378108529131090346929360639 -0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.086906811557104258217638841738684093 -0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.140699054572477916813883293941743608 -0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.170122257291310853622421801028846025 0.209299217902478868768657260345351255 0.209299217902478868768657260345351255 0.170122257291310853622421801028846025 0.59170018143314230214451073139795319 0.209299217902478868768657260345351255 0.140699054572477916813883293941743608 0.871740148509606615337445761220663438 0.209299217902478868768657260345351255 0.086906811557104258217638841738684093 1.0 0.209299217902478868768657260345351255 0.0147306712378108529131090346929360639 -1.0 0.59170018143314230214451073139795319 0.0121829533029822987415800241824195776 -0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0718759932808486639707454380157174239 -0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.116364691327195485238031920967867562 -0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.140699054572477916813883293941743608 0.209299217902478868768657260345351255 0.59170018143314230214451073139795319 0.140699054572477916813883293941743608 0.59170018143314230214451073139795319 0.59170018143314230214451073139795319 0.116364691327195485238031920967867562 0.871740148509606615337445761220663438 0.59170018143314230214451073139795319 0.0718759932808486639707454380157174239 1.0 0.59170018143314230214451073139795319 0.0121829533029822987415800241824195776 -1.0 0.871740148509606615337445761220663438 0.00752515096941092997796400234913415444 -0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0443962713361421872166437836722206532 -0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0718759932808486639707454380157174239 -0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.086906811557104258217638841738684093 0.209299217902478868768657260345351255 0.871740148509606615337445761220663438 0.086906811557104258217638841738684093 0.59170018143314230214451073139795319 0.871740148509606615337445761220663438 0.0718759932808486639707454380157174239 0.871740148509606615337445761220663438 0.871740148509606615337445761220663438 0.0443962713361421872166437836722206532 1.0 0.871740148509606615337445761220663438 0.00752515096941092997796400234913415444 -1.0 1.0 0.00127551020408163265306122448979591837 -0.871740148509606615337445761220663438 1.0 0.00752515096941092997796400234913415444 -0.59170018143314230214451073139795319 1.0 0.0121829533029822987415800241824195776 -0.209299217902478868768657260345351255 1.0 0.0147306712378108529131090346929360639 0.209299217902478868768657260345351255 1.0 0.0147306712378108529131090346929360639 0.59170018143314230214451073139795319 1.0 0.0121829533029822987415800241824195776 0.871740148509606615337445761220663438 1.0 0.00752515096941092997796400234913415444 1.0 1.0 0.00127551020408163265306122448979591837 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n81-d15-spu.txt000066400000000000000000000171131277740313300253360ustar00rootroot00000000000000-1.0 -1.0 0.000771604938271604938271604938271604938 -0.899757995411460157312345244418337958 -1.0 0.00459709337668904236239832555636689738 -0.677186279510737753445885427091342451 -1.0 0.00762607534722671486890848940498257572 -0.363117463826178158710752068708659213 -1.0 0.00962301419369573180875365367054773022 0.0 -1.0 0.010319979843789367598891408415217939 0.363117463826178158710752068708659213 -1.0 0.00962301419369573180875365367054773022 0.677186279510737753445885427091342451 -1.0 0.00762607534722671486890848940498257572 0.899757995411460157312345244418337958 -1.0 0.00459709337668904236239832555636689738 1.0 -1.0 0.000771604938271604938271604938271604938 -1.0 -0.899757995411460157312345244418337958 0.00459709337668904236239832555636689738 -0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0273887146981417469511799043122462853 -0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0454348834876523057478661242949655387 -0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0573323116784557891418201961041947899 0.0 -0.899757995411460157312345244418337958 0.0614847166397332816861503395228695892 0.363117463826178158710752068708659213 -0.899757995411460157312345244418337958 0.0573323116784557891418201961041947899 0.677186279510737753445885427091342451 -0.899757995411460157312345244418337958 0.0454348834876523057478661242949655387 0.899757995411460157312345244418337958 -0.899757995411460157312345244418337958 0.0273887146981417469511799043122462853 1.0 -0.899757995411460157312345244418337958 0.00459709337668904236239832555636689738 -1.0 -0.677186279510737753445885427091342451 0.00762607534722671486890848940498257572 -0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0454348834876523057478661242949655387 -0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0753715046612464614414615193908951594 -0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0951080373758882955032055302186378111 0.0 -0.677186279510737753445885427091342451 0.101996423256295915438527910539783282 0.363117463826178158710752068708659213 -0.677186279510737753445885427091342451 0.0951080373758882955032055302186378111 0.677186279510737753445885427091342451 -0.677186279510737753445885427091342451 0.0753715046612464614414615193908951594 0.899757995411460157312345244418337958 -0.677186279510737753445885427091342451 0.0454348834876523057478661242949655387 1.0 -0.677186279510737753445885427091342451 0.00762607534722671486890848940498257572 -1.0 -0.363117463826178158710752068708659213 0.00962301419369573180875365367054773022 -0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0573323116784557891418201961041947899 -0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0951080373758882955032055302186378111 -0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.120012713215002091945180780008275095 0.0 -0.363117463826178158710752068708659213 0.128704869020008873432342744276125724 0.363117463826178158710752068708659213 -0.363117463826178158710752068708659213 0.120012713215002091945180780008275095 0.677186279510737753445885427091342451 -0.363117463826178158710752068708659213 0.0951080373758882955032055302186378111 0.899757995411460157312345244418337958 -0.363117463826178158710752068708659213 0.0573323116784557891418201961041947899 1.0 -0.363117463826178158710752068708659213 0.00962301419369573180875365367054773022 -1.0 0.0 0.010319979843789367598891408415217939 -0.899757995411460157312345244418337958 0.0 0.0614847166397332816861503395228695892 -0.677186279510737753445885427091342451 0.0 0.101996423256295915438527910539783282 -0.363117463826178158710752068708659213 0.0 0.128704869020008873432342744276125724 0.0 0.0 0.138026571233179590808356600387698541 0.363117463826178158710752068708659213 0.0 0.128704869020008873432342744276125724 0.677186279510737753445885427091342451 0.0 0.101996423256295915438527910539783282 0.899757995411460157312345244418337958 0.0 0.0614847166397332816861503395228695892 1.0 0.0 0.010319979843789367598891408415217939 -1.0 0.363117463826178158710752068708659213 0.00962301419369573180875365367054773022 -0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0573323116784557891418201961041947899 -0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0951080373758882955032055302186378111 -0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.120012713215002091945180780008275095 0.0 0.363117463826178158710752068708659213 0.128704869020008873432342744276125724 0.363117463826178158710752068708659213 0.363117463826178158710752068708659213 0.120012713215002091945180780008275095 0.677186279510737753445885427091342451 0.363117463826178158710752068708659213 0.0951080373758882955032055302186378111 0.899757995411460157312345244418337958 0.363117463826178158710752068708659213 0.0573323116784557891418201961041947899 1.0 0.363117463826178158710752068708659213 0.00962301419369573180875365367054773022 -1.0 0.677186279510737753445885427091342451 0.00762607534722671486890848940498257572 -0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0454348834876523057478661242949655387 -0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0753715046612464614414615193908951594 -0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0951080373758882955032055302186378111 0.0 0.677186279510737753445885427091342451 0.101996423256295915438527910539783282 0.363117463826178158710752068708659213 0.677186279510737753445885427091342451 0.0951080373758882955032055302186378111 0.677186279510737753445885427091342451 0.677186279510737753445885427091342451 0.0753715046612464614414615193908951594 0.899757995411460157312345244418337958 0.677186279510737753445885427091342451 0.0454348834876523057478661242949655387 1.0 0.677186279510737753445885427091342451 0.00762607534722671486890848940498257572 -1.0 0.899757995411460157312345244418337958 0.00459709337668904236239832555636689738 -0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0273887146981417469511799043122462853 -0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0454348834876523057478661242949655387 -0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0573323116784557891418201961041947899 0.0 0.899757995411460157312345244418337958 0.0614847166397332816861503395228695892 0.363117463826178158710752068708659213 0.899757995411460157312345244418337958 0.0573323116784557891418201961041947899 0.677186279510737753445885427091342451 0.899757995411460157312345244418337958 0.0454348834876523057478661242949655387 0.899757995411460157312345244418337958 0.899757995411460157312345244418337958 0.0273887146981417469511799043122462853 1.0 0.899757995411460157312345244418337958 0.00459709337668904236239832555636689738 -1.0 1.0 0.000771604938271604938271604938271604938 -0.899757995411460157312345244418337958 1.0 0.00459709337668904236239832555636689738 -0.677186279510737753445885427091342451 1.0 0.00762607534722671486890848940498257572 -0.363117463826178158710752068708659213 1.0 0.00962301419369573180875365367054773022 0.0 1.0 0.010319979843789367598891408415217939 0.363117463826178158710752068708659213 1.0 0.00962301419369573180875365367054773022 0.677186279510737753445885427091342451 1.0 0.00762607534722671486890848940498257572 0.899757995411460157312345244418337958 1.0 0.00459709337668904236239832555636689738 1.0 1.0 0.000771604938271604938271604938271604938 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-lobatto-n9-d3-spu.txt000066400000000000000000000006541277740313300251750ustar00rootroot00000000000000-1.0 -1.0 0.111111111111111111111111111111111111 0.0 -1.0 0.444444444444444444444444444444444444 1.0 -1.0 0.111111111111111111111111111111111111 -1.0 0.0 0.444444444444444444444444444444444444 0.0 0.0 1.77777777777777777777777777777777778 1.0 0.0 0.444444444444444444444444444444444444 -1.0 1.0 0.111111111111111111111111111111111111 0.0 1.0 0.444444444444444444444444444444444444 1.0 1.0 0.111111111111111111111111111111111111 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n1-d1-spu.txt000066400000000000000000000000141277740313300235070ustar00rootroot000000000000000.0 0.0 4.0 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n100-d19-spu.txt000066400000000000000000000271601277740313300237530ustar00rootroot00000000000000-0.973906528517171720077964012084452053 -0.973906528517171720077964012084452053 0.0044450681519276421157286829151239241 -0.865063366688984510732096688423493049 -0.973906528517171720077964012084452053 0.00996412235661632515548501170716677482 -0.679409568299024406234327365114873576 -0.973906528517171720077964012084452053 0.0146067823086411055702574054128474762 -0.433395394129247190799265943165784162 -0.973906528517171720077964012084452053 0.017952374153987651728766367924636774 -0.148874338981631210884826001129719985 -0.973906528517171720077964012084452053 0.0197029973375154130233313419335568438 0.148874338981631210884826001129719985 -0.973906528517171720077964012084452053 0.0197029973375154130233313419335568438 0.433395394129247190799265943165784162 -0.973906528517171720077964012084452053 0.017952374153987651728766367924636774 0.679409568299024406234327365114873576 -0.973906528517171720077964012084452053 0.0146067823086411055702574054128474762 0.865063366688984510732096688423493049 -0.973906528517171720077964012084452053 0.00996412235661632515548501170716677482 0.973906528517171720077964012084452053 -0.973906528517171720077964012084452053 0.0044450681519276421157286829151239241 -0.973906528517171720077964012084452053 -0.865063366688984510732096688423493049 0.00996412235661632515548501170716677482 -0.865063366688984510732096688423493049 -0.865063366688984510732096688423493049 0.0223357057629287465803873702603839535 -0.679409568299024406234327365114873576 -0.865063366688984510732096688423493049 0.0327427524585067049527172020557242102 -0.433395394129247190799265943165784162 -0.865063366688984510732096688423493049 0.0402422744822296467615834002037977887 -0.148874338981631210884826001129719985 -0.865063366688984510732096688423493049 0.0441664940902991696956033554306246052 0.148874338981631210884826001129719985 -0.865063366688984510732096688423493049 0.0441664940902991696956033554306246052 0.433395394129247190799265943165784162 -0.865063366688984510732096688423493049 0.0402422744822296467615834002037977887 0.679409568299024406234327365114873576 -0.865063366688984510732096688423493049 0.0327427524585067049527172020557242102 0.865063366688984510732096688423493049 -0.865063366688984510732096688423493049 0.0223357057629287465803873702603839535 0.973906528517171720077964012084452053 -0.865063366688984510732096688423493049 0.00996412235661632515548501170716677482 -0.973906528517171720077964012084452053 -0.679409568299024406234327365114873576 0.0146067823086411055702574054128474762 -0.865063366688984510732096688423493049 -0.679409568299024406234327365114873576 0.0327427524585067049527172020557242102 -0.679409568299024406234327365114873576 -0.679409568299024406234327365114873576 0.047998834240484302018848855693725252 -0.433395394129247190799265943165784162 -0.679409568299024406234327365114873576 0.0589926660802390438797409796837495904 -0.148874338981631210884826001129719985 -0.679409568299024406234327365114873576 0.0647453274281108875739704913821166637 0.148874338981631210884826001129719985 -0.679409568299024406234327365114873576 0.0647453274281108875739704913821166637 0.433395394129247190799265943165784162 -0.679409568299024406234327365114873576 0.0589926660802390438797409796837495904 0.679409568299024406234327365114873576 -0.679409568299024406234327365114873576 0.047998834240484302018848855693725252 0.865063366688984510732096688423493049 -0.679409568299024406234327365114873576 0.0327427524585067049527172020557242102 0.973906528517171720077964012084452053 -0.679409568299024406234327365114873576 0.0146067823086411055702574054128474762 -0.973906528517171720077964012084452053 -0.433395394129247190799265943165784162 0.017952374153987651728766367924636774 -0.865063366688984510732096688423493049 -0.433395394129247190799265943165784162 0.0402422744822296467615834002037977887 -0.679409568299024406234327365114873576 -0.433395394129247190799265943165784162 0.0589926660802390438797409796837495904 -0.433395394129247190799265943165784162 -0.433395394129247190799265943165784162 0.0725045661279683639708449778808087378 -0.148874338981631210884826001129719985 -0.433395394129247190799265943165784162 0.079574838465571648750291195876476462 0.148874338981631210884826001129719985 -0.433395394129247190799265943165784162 0.079574838465571648750291195876476462 0.433395394129247190799265943165784162 -0.433395394129247190799265943165784162 0.0725045661279683639708449778808087378 0.679409568299024406234327365114873576 -0.433395394129247190799265943165784162 0.0589926660802390438797409796837495904 0.865063366688984510732096688423493049 -0.433395394129247190799265943165784162 0.0402422744822296467615834002037977887 0.973906528517171720077964012084452053 -0.433395394129247190799265943165784162 0.017952374153987651728766367924636774 -0.973906528517171720077964012084452053 -0.148874338981631210884826001129719985 0.0197029973375154130233313419335568438 -0.865063366688984510732096688423493049 -0.148874338981631210884826001129719985 0.0441664940902991696956033554306246052 -0.679409568299024406234327365114873576 -0.148874338981631210884826001129719985 0.0647453274281108875739704913821166637 -0.433395394129247190799265943165784162 -0.148874338981631210884826001129719985 0.079574838465571648750291195876476462 -0.148874338981631210884826001129719985 -0.148874338981631210884826001129719985 0.0873345673932557511306966100285637548 0.148874338981631210884826001129719985 -0.148874338981631210884826001129719985 0.0873345673932557511306966100285637548 0.433395394129247190799265943165784162 -0.148874338981631210884826001129719985 0.079574838465571648750291195876476462 0.679409568299024406234327365114873576 -0.148874338981631210884826001129719985 0.0647453274281108875739704913821166637 0.865063366688984510732096688423493049 -0.148874338981631210884826001129719985 0.0441664940902991696956033554306246052 0.973906528517171720077964012084452053 -0.148874338981631210884826001129719985 0.0197029973375154130233313419335568438 -0.973906528517171720077964012084452053 0.148874338981631210884826001129719985 0.0197029973375154130233313419335568438 -0.865063366688984510732096688423493049 0.148874338981631210884826001129719985 0.0441664940902991696956033554306246052 -0.679409568299024406234327365114873576 0.148874338981631210884826001129719985 0.0647453274281108875739704913821166637 -0.433395394129247190799265943165784162 0.148874338981631210884826001129719985 0.079574838465571648750291195876476462 -0.148874338981631210884826001129719985 0.148874338981631210884826001129719985 0.0873345673932557511306966100285637548 0.148874338981631210884826001129719985 0.148874338981631210884826001129719985 0.0873345673932557511306966100285637548 0.433395394129247190799265943165784162 0.148874338981631210884826001129719985 0.079574838465571648750291195876476462 0.679409568299024406234327365114873576 0.148874338981631210884826001129719985 0.0647453274281108875739704913821166637 0.865063366688984510732096688423493049 0.148874338981631210884826001129719985 0.0441664940902991696956033554306246052 0.973906528517171720077964012084452053 0.148874338981631210884826001129719985 0.0197029973375154130233313419335568438 -0.973906528517171720077964012084452053 0.433395394129247190799265943165784162 0.017952374153987651728766367924636774 -0.865063366688984510732096688423493049 0.433395394129247190799265943165784162 0.0402422744822296467615834002037977887 -0.679409568299024406234327365114873576 0.433395394129247190799265943165784162 0.0589926660802390438797409796837495904 -0.433395394129247190799265943165784162 0.433395394129247190799265943165784162 0.0725045661279683639708449778808087378 -0.148874338981631210884826001129719985 0.433395394129247190799265943165784162 0.079574838465571648750291195876476462 0.148874338981631210884826001129719985 0.433395394129247190799265943165784162 0.079574838465571648750291195876476462 0.433395394129247190799265943165784162 0.433395394129247190799265943165784162 0.0725045661279683639708449778808087378 0.679409568299024406234327365114873576 0.433395394129247190799265943165784162 0.0589926660802390438797409796837495904 0.865063366688984510732096688423493049 0.433395394129247190799265943165784162 0.0402422744822296467615834002037977887 0.973906528517171720077964012084452053 0.433395394129247190799265943165784162 0.017952374153987651728766367924636774 -0.973906528517171720077964012084452053 0.679409568299024406234327365114873576 0.0146067823086411055702574054128474762 -0.865063366688984510732096688423493049 0.679409568299024406234327365114873576 0.0327427524585067049527172020557242102 -0.679409568299024406234327365114873576 0.679409568299024406234327365114873576 0.047998834240484302018848855693725252 -0.433395394129247190799265943165784162 0.679409568299024406234327365114873576 0.0589926660802390438797409796837495904 -0.148874338981631210884826001129719985 0.679409568299024406234327365114873576 0.0647453274281108875739704913821166637 0.148874338981631210884826001129719985 0.679409568299024406234327365114873576 0.0647453274281108875739704913821166637 0.433395394129247190799265943165784162 0.679409568299024406234327365114873576 0.0589926660802390438797409796837495904 0.679409568299024406234327365114873576 0.679409568299024406234327365114873576 0.047998834240484302018848855693725252 0.865063366688984510732096688423493049 0.679409568299024406234327365114873576 0.0327427524585067049527172020557242102 0.973906528517171720077964012084452053 0.679409568299024406234327365114873576 0.0146067823086411055702574054128474762 -0.973906528517171720077964012084452053 0.865063366688984510732096688423493049 0.00996412235661632515548501170716677482 -0.865063366688984510732096688423493049 0.865063366688984510732096688423493049 0.0223357057629287465803873702603839535 -0.679409568299024406234327365114873576 0.865063366688984510732096688423493049 0.0327427524585067049527172020557242102 -0.433395394129247190799265943165784162 0.865063366688984510732096688423493049 0.0402422744822296467615834002037977887 -0.148874338981631210884826001129719985 0.865063366688984510732096688423493049 0.0441664940902991696956033554306246052 0.148874338981631210884826001129719985 0.865063366688984510732096688423493049 0.0441664940902991696956033554306246052 0.433395394129247190799265943165784162 0.865063366688984510732096688423493049 0.0402422744822296467615834002037977887 0.679409568299024406234327365114873576 0.865063366688984510732096688423493049 0.0327427524585067049527172020557242102 0.865063366688984510732096688423493049 0.865063366688984510732096688423493049 0.0223357057629287465803873702603839535 0.973906528517171720077964012084452053 0.865063366688984510732096688423493049 0.00996412235661632515548501170716677482 -0.973906528517171720077964012084452053 0.973906528517171720077964012084452053 0.0044450681519276421157286829151239241 -0.865063366688984510732096688423493049 0.973906528517171720077964012084452053 0.00996412235661632515548501170716677482 -0.679409568299024406234327365114873576 0.973906528517171720077964012084452053 0.0146067823086411055702574054128474762 -0.433395394129247190799265943165784162 0.973906528517171720077964012084452053 0.017952374153987651728766367924636774 -0.148874338981631210884826001129719985 0.973906528517171720077964012084452053 0.0197029973375154130233313419335568438 0.148874338981631210884826001129719985 0.973906528517171720077964012084452053 0.0197029973375154130233313419335568438 0.433395394129247190799265943165784162 0.973906528517171720077964012084452053 0.017952374153987651728766367924636774 0.679409568299024406234327365114873576 0.973906528517171720077964012084452053 0.0146067823086411055702574054128474762 0.865063366688984510732096688423493049 0.973906528517171720077964012084452053 0.00996412235661632515548501170716677482 0.973906528517171720077964012084452053 0.973906528517171720077964012084452053 0.0044450681519276421157286829151239241 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n121-d21-spu.txt000066400000000000000000000324561277740313300237530ustar00rootroot00000000000000-0.978228658146056992803938001122857391 -0.978228658146056992803938001122857391 0.0030989893647679320859579804459566656 -0.887062599768095299075157769303927267 -0.978228658146056992803938001122857391 0.00699087922603092920408314927876483601 -0.730152005574049324093416252031153458 -0.978228658146056992803938001122857391 0.0103705091101167231670290035699064321 -0.519096129206811815925725669458609554 -0.978228658146056992803938001122857391 0.0129815627352624243282741771341720553 -0.269543155952344972331531985400861525 -0.978228658146056992803938001122857391 0.0146299524245041160042174453809792062 0.0 -0.978228658146056992803938001122857391 0.015193348510983083386383929265538767 0.269543155952344972331531985400861525 -0.978228658146056992803938001122857391 0.0146299524245041160042174453809792062 0.519096129206811815925725669458609554 -0.978228658146056992803938001122857391 0.0129815627352624243282741771341720553 0.730152005574049324093416252031153458 -0.978228658146056992803938001122857391 0.0103705091101167231670290035699064321 0.887062599768095299075157769303927267 -0.978228658146056992803938001122857391 0.00699087922603092920408314927876483601 0.978228658146056992803938001122857391 -0.978228658146056992803938001122857391 0.0030989893647679320859579804459566656 -0.978228658146056992803938001122857391 -0.887062599768095299075157769303927267 0.00699087922603092920408314927876483601 -0.887062599768095299075157769303927267 -0.887062599768095299075157769303927267 0.0157704291949419498389991106042036283 -0.730152005574049324093416252031153458 -0.887062599768095299075157769303927267 0.0233943935159998802125044362492467018 -0.519096129206811815925725669458609554 -0.887062599768095299075157769303927267 0.0292845591143741585074458972686596885 -0.269543155952344972331531985400861525 -0.887062599768095299075157769303927267 0.0330030917966527482354972877942090931 0.0 -0.887062599768095299075157769303927267 0.0342740332338099172723288360577123051 0.269543155952344972331531985400861525 -0.887062599768095299075157769303927267 0.0330030917966527482354972877942090931 0.519096129206811815925725669458609554 -0.887062599768095299075157769303927267 0.0292845591143741585074458972686596885 0.730152005574049324093416252031153458 -0.887062599768095299075157769303927267 0.0233943935159998802125044362492467018 0.887062599768095299075157769303927267 -0.887062599768095299075157769303927267 0.0157704291949419498389991106042036283 0.978228658146056992803938001122857391 -0.887062599768095299075157769303927267 0.00699087922603092920408314927876483601 -0.978228658146056992803938001122857391 -0.730152005574049324093416252031153458 0.0103705091101167231670290035699064321 -0.887062599768095299075157769303927267 -0.730152005574049324093416252031153458 0.0233943935159998802125044362492467018 -0.730152005574049324093416252031153458 -0.730152005574049324093416252031153458 0.0347040426874997179054118994747575071 -0.519096129206811815925725669458609554 -0.730152005574049324093416252031153458 0.0434417155928743134530064854407711775 -0.269543155952344972331531985400861525 -0.730152005574049324093416252031153458 0.0489579140295809752220298330533537835 0.0 -0.730152005574049324093416252031153458 0.0508432719833252829322319672872405794 0.269543155952344972331531985400861525 -0.730152005574049324093416252031153458 0.0489579140295809752220298330533537835 0.519096129206811815925725669458609554 -0.730152005574049324093416252031153458 0.0434417155928743134530064854407711775 0.730152005574049324093416252031153458 -0.730152005574049324093416252031153458 0.0347040426874997179054118994747575071 0.887062599768095299075157769303927267 -0.730152005574049324093416252031153458 0.0233943935159998802125044362492467018 0.978228658146056992803938001122857391 -0.730152005574049324093416252031153458 0.0103705091101167231670290035699064321 -0.978228658146056992803938001122857391 -0.519096129206811815925725669458609554 0.0129815627352624243282741771341720553 -0.887062599768095299075157769303927267 -0.519096129206811815925725669458609554 0.0292845591143741585074458972686596885 -0.730152005574049324093416252031153458 -0.519096129206811815925725669458609554 0.0434417155928743134530064854407711775 -0.519096129206811815925725669458609554 -0.519096129206811815925725669458609554 0.0543793318445846728791866404253740988 -0.269543155952344972331531985400861525 -0.519096129206811815925725669458609554 0.0612843810862277441517412315083461843 0.0 -0.519096129206811815925725669458609554 0.06364442843733433319773854613170387 0.269543155952344972331531985400861525 -0.519096129206811815925725669458609554 0.0612843810862277441517412315083461843 0.519096129206811815925725669458609554 -0.519096129206811815925725669458609554 0.0543793318445846728791866404253740988 0.730152005574049324093416252031153458 -0.519096129206811815925725669458609554 0.0434417155928743134530064854407711775 0.887062599768095299075157769303927267 -0.519096129206811815925725669458609554 0.0292845591143741585074458972686596885 0.978228658146056992803938001122857391 -0.519096129206811815925725669458609554 0.0129815627352624243282741771341720553 -0.978228658146056992803938001122857391 -0.269543155952344972331531985400861525 0.0146299524245041160042174453809792062 -0.887062599768095299075157769303927267 -0.269543155952344972331531985400861525 0.0330030917966527482354972877942090931 -0.730152005574049324093416252031153458 -0.269543155952344972331531985400861525 0.0489579140295809752220298330533537835 -0.519096129206811815925725669458609554 -0.269543155952344972331531985400861525 0.0612843810862277441517412315083461843 -0.269543155952344972331531985400861525 -0.269543155952344972331531985400861525 0.0690662286152382190241876243814352275 0.0 -0.269543155952344972331531985400861525 0.0717259531160857190860308955443714016 0.269543155952344972331531985400861525 -0.269543155952344972331531985400861525 0.0690662286152382190241876243814352275 0.519096129206811815925725669458609554 -0.269543155952344972331531985400861525 0.0612843810862277441517412315083461843 0.730152005574049324093416252031153458 -0.269543155952344972331531985400861525 0.0489579140295809752220298330533537835 0.887062599768095299075157769303927267 -0.269543155952344972331531985400861525 0.0330030917966527482354972877942090931 0.978228658146056992803938001122857391 -0.269543155952344972331531985400861525 0.0146299524245041160042174453809792062 -0.978228658146056992803938001122857391 0.0 0.015193348510983083386383929265538767 -0.887062599768095299075157769303927267 0.0 0.0342740332338099172723288360577123051 -0.730152005574049324093416252031153458 0.0 0.0508432719833252829322319672872405794 -0.519096129206811815925725669458609554 0.0 0.06364442843733433319773854613170387 -0.269543155952344972331531985400861525 0.0 0.0717259531160857190860308955443714016 0.0 0.0 0.0744881029927245896795387080995505319 0.269543155952344972331531985400861525 0.0 0.0717259531160857190860308955443714016 0.519096129206811815925725669458609554 0.0 0.06364442843733433319773854613170387 0.730152005574049324093416252031153458 0.0 0.0508432719833252829322319672872405794 0.887062599768095299075157769303927267 0.0 0.0342740332338099172723288360577123051 0.978228658146056992803938001122857391 0.0 0.015193348510983083386383929265538767 -0.978228658146056992803938001122857391 0.269543155952344972331531985400861525 0.0146299524245041160042174453809792062 -0.887062599768095299075157769303927267 0.269543155952344972331531985400861525 0.0330030917966527482354972877942090931 -0.730152005574049324093416252031153458 0.269543155952344972331531985400861525 0.0489579140295809752220298330533537835 -0.519096129206811815925725669458609554 0.269543155952344972331531985400861525 0.0612843810862277441517412315083461843 -0.269543155952344972331531985400861525 0.269543155952344972331531985400861525 0.0690662286152382190241876243814352275 0.0 0.269543155952344972331531985400861525 0.0717259531160857190860308955443714016 0.269543155952344972331531985400861525 0.269543155952344972331531985400861525 0.0690662286152382190241876243814352275 0.519096129206811815925725669458609554 0.269543155952344972331531985400861525 0.0612843810862277441517412315083461843 0.730152005574049324093416252031153458 0.269543155952344972331531985400861525 0.0489579140295809752220298330533537835 0.887062599768095299075157769303927267 0.269543155952344972331531985400861525 0.0330030917966527482354972877942090931 0.978228658146056992803938001122857391 0.269543155952344972331531985400861525 0.0146299524245041160042174453809792062 -0.978228658146056992803938001122857391 0.519096129206811815925725669458609554 0.0129815627352624243282741771341720553 -0.887062599768095299075157769303927267 0.519096129206811815925725669458609554 0.0292845591143741585074458972686596885 -0.730152005574049324093416252031153458 0.519096129206811815925725669458609554 0.0434417155928743134530064854407711775 -0.519096129206811815925725669458609554 0.519096129206811815925725669458609554 0.0543793318445846728791866404253740988 -0.269543155952344972331531985400861525 0.519096129206811815925725669458609554 0.0612843810862277441517412315083461843 0.0 0.519096129206811815925725669458609554 0.06364442843733433319773854613170387 0.269543155952344972331531985400861525 0.519096129206811815925725669458609554 0.0612843810862277441517412315083461843 0.519096129206811815925725669458609554 0.519096129206811815925725669458609554 0.0543793318445846728791866404253740988 0.730152005574049324093416252031153458 0.519096129206811815925725669458609554 0.0434417155928743134530064854407711775 0.887062599768095299075157769303927267 0.519096129206811815925725669458609554 0.0292845591143741585074458972686596885 0.978228658146056992803938001122857391 0.519096129206811815925725669458609554 0.0129815627352624243282741771341720553 -0.978228658146056992803938001122857391 0.730152005574049324093416252031153458 0.0103705091101167231670290035699064321 -0.887062599768095299075157769303927267 0.730152005574049324093416252031153458 0.0233943935159998802125044362492467018 -0.730152005574049324093416252031153458 0.730152005574049324093416252031153458 0.0347040426874997179054118994747575071 -0.519096129206811815925725669458609554 0.730152005574049324093416252031153458 0.0434417155928743134530064854407711775 -0.269543155952344972331531985400861525 0.730152005574049324093416252031153458 0.0489579140295809752220298330533537835 0.0 0.730152005574049324093416252031153458 0.0508432719833252829322319672872405794 0.269543155952344972331531985400861525 0.730152005574049324093416252031153458 0.0489579140295809752220298330533537835 0.519096129206811815925725669458609554 0.730152005574049324093416252031153458 0.0434417155928743134530064854407711775 0.730152005574049324093416252031153458 0.730152005574049324093416252031153458 0.0347040426874997179054118994747575071 0.887062599768095299075157769303927267 0.730152005574049324093416252031153458 0.0233943935159998802125044362492467018 0.978228658146056992803938001122857391 0.730152005574049324093416252031153458 0.0103705091101167231670290035699064321 -0.978228658146056992803938001122857391 0.887062599768095299075157769303927267 0.00699087922603092920408314927876483601 -0.887062599768095299075157769303927267 0.887062599768095299075157769303927267 0.0157704291949419498389991106042036283 -0.730152005574049324093416252031153458 0.887062599768095299075157769303927267 0.0233943935159998802125044362492467018 -0.519096129206811815925725669458609554 0.887062599768095299075157769303927267 0.0292845591143741585074458972686596885 -0.269543155952344972331531985400861525 0.887062599768095299075157769303927267 0.0330030917966527482354972877942090931 0.0 0.887062599768095299075157769303927267 0.0342740332338099172723288360577123051 0.269543155952344972331531985400861525 0.887062599768095299075157769303927267 0.0330030917966527482354972877942090931 0.519096129206811815925725669458609554 0.887062599768095299075157769303927267 0.0292845591143741585074458972686596885 0.730152005574049324093416252031153458 0.887062599768095299075157769303927267 0.0233943935159998802125044362492467018 0.887062599768095299075157769303927267 0.887062599768095299075157769303927267 0.0157704291949419498389991106042036283 0.978228658146056992803938001122857391 0.887062599768095299075157769303927267 0.00699087922603092920408314927876483601 -0.978228658146056992803938001122857391 0.978228658146056992803938001122857391 0.0030989893647679320859579804459566656 -0.887062599768095299075157769303927267 0.978228658146056992803938001122857391 0.00699087922603092920408314927876483601 -0.730152005574049324093416252031153458 0.978228658146056992803938001122857391 0.0103705091101167231670290035699064321 -0.519096129206811815925725669458609554 0.978228658146056992803938001122857391 0.0129815627352624243282741771341720553 -0.269543155952344972331531985400861525 0.978228658146056992803938001122857391 0.0146299524245041160042174453809792062 0.0 0.978228658146056992803938001122857391 0.015193348510983083386383929265538767 0.269543155952344972331531985400861525 0.978228658146056992803938001122857391 0.0146299524245041160042174453809792062 0.519096129206811815925725669458609554 0.978228658146056992803938001122857391 0.0129815627352624243282741771341720553 0.730152005574049324093416252031153458 0.978228658146056992803938001122857391 0.0103705091101167231670290035699064321 0.887062599768095299075157769303927267 0.978228658146056992803938001122857391 0.00699087922603092920408314927876483601 0.978228658146056992803938001122857391 0.978228658146056992803938001122857391 0.0030989893647679320859579804459566656 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n144-d23-spu.txt000066400000000000000000000412441277740313300237550ustar00rootroot00000000000000-0.981560634246719250690549090149280823 -0.981560634246719250690549090149280823 0.00222551236318054678115128330935814828 -0.904117256370474856678465866119096193 -0.981560634246719250690549090149280823 0.00504489867677599569695403892274707604 -0.769902674194304687036893833212818076 -0.981560634246719250690549090149280823 0.00755174899722291605121807798099772971 -0.58731795428661744729670241894053428 -0.981560634246719250690549090149280823 0.00958449169844262713782227993930055215 -0.367831498998180193752691536643717561 -0.981560634246719250690549090149280823 0.0110150889549367919242539848337262597 -0.12523340851146891547244136946385313 -0.981560634246719250690549090149280823 0.0117535956959529496032162964988872944 0.12523340851146891547244136946385313 -0.981560634246719250690549090149280823 0.0117535956959529496032162964988872944 0.367831498998180193752691536643717561 -0.981560634246719250690549090149280823 0.0110150889549367919242539848337262597 0.58731795428661744729670241894053428 -0.981560634246719250690549090149280823 0.00958449169844262713782227993930055215 0.769902674194304687036893833212818076 -0.981560634246719250690549090149280823 0.00755174899722291605121807798099772971 0.904117256370474856678465866119096193 -0.981560634246719250690549090149280823 0.00504489867677599569695403892274707604 0.981560634246719250690549090149280823 -0.981560634246719250690549090149280823 0.00222551236318054678115128330935814828 -0.981560634246719250690549090149280823 -0.904117256370474856678465866119096193 0.00504489867677599569695403892274707604 -0.904117256370474856678465866119096193 -0.904117256370474856678465866119096193 0.0114360194443329883245562617926456885 -0.769902674194304687036893833212818076 -0.904117256370474856678465866119096193 0.0171186685608825894820284888250972603 -0.58731795428661744729670241894053428 -0.904117256370474856678465866119096193 0.0217265876779679159905822704017308993 -0.367831498998180193752691536643717561 -0.904117256370474856678465866119096193 0.0249695344823489249676746275301833154 -0.12523340851146891547244136946385313 -0.904117256370474856678465866119096193 0.0266436171530100164984590307215919845 0.12523340851146891547244136946385313 -0.904117256370474856678465866119096193 0.0266436171530100164984590307215919845 0.367831498998180193752691536643717561 -0.904117256370474856678465866119096193 0.0249695344823489249676746275301833154 0.58731795428661744729670241894053428 -0.904117256370474856678465866119096193 0.0217265876779679159905822704017308993 0.769902674194304687036893833212818076 -0.904117256370474856678465866119096193 0.0171186685608825894820284888250972603 0.904117256370474856678465866119096193 -0.904117256370474856678465866119096193 0.0114360194443329883245562617926456885 0.981560634246719250690549090149280823 -0.904117256370474856678465866119096193 0.00504489867677599569695403892274707604 -0.981560634246719250690549090149280823 -0.769902674194304687036893833212818076 0.00755174899722291605121807798099772971 -0.904117256370474856678465866119096193 -0.769902674194304687036893833212818076 0.0171186685608825894820284888250972603 -0.769902674194304687036893833212818076 -0.769902674194304687036893833212818076 0.0256250712692314951687466124526505015 -0.58731795428661744729670241894053428 -0.769902674194304687036893833212818076 0.032522702084281166411468982655516959 -0.367831498998180193752691536643717561 -0.769902674194304687036893833212818076 0.0373770949764060342626176612500786362 -0.12523340851146891547244136946385313 -0.769902674194304687036893833212818076 0.0398830426553220249585727063790179852 0.12523340851146891547244136946385313 -0.769902674194304687036893833212818076 0.0398830426553220249585727063790179852 0.367831498998180193752691536643717561 -0.769902674194304687036893833212818076 0.0373770949764060342626176612500786362 0.58731795428661744729670241894053428 -0.769902674194304687036893833212818076 0.032522702084281166411468982655516959 0.769902674194304687036893833212818076 -0.769902674194304687036893833212818076 0.0256250712692314951687466124526505015 0.904117256370474856678465866119096193 -0.769902674194304687036893833212818076 0.0171186685608825894820284888250972603 0.981560634246719250690549090149280823 -0.769902674194304687036893833212818076 0.00755174899722291605121807798099772971 -0.981560634246719250690549090149280823 -0.58731795428661744729670241894053428 0.00958449169844262713782227993930055215 -0.904117256370474856678465866119096193 -0.58731795428661744729670241894053428 0.0217265876779679159905822704017308993 -0.769902674194304687036893833212818076 -0.58731795428661744729670241894053428 0.032522702084281166411468982655516959 -0.58731795428661744729670241894053428 -0.58731795428661744729670241894053428 0.0412770032812723608229740139847591663 -0.367831498998180193752691536643717561 -0.58731795428661744729670241894053428 0.0474380778075389929242967549761226514 -0.12523340851146891547244136946385313 -0.58731795428661744729670241894053428 0.0506185641735628584619201538523681483 0.12523340851146891547244136946385313 -0.58731795428661744729670241894053428 0.0506185641735628584619201538523681483 0.367831498998180193752691536643717561 -0.58731795428661744729670241894053428 0.0474380778075389929242967549761226514 0.58731795428661744729670241894053428 -0.58731795428661744729670241894053428 0.0412770032812723608229740139847591663 0.769902674194304687036893833212818076 -0.58731795428661744729670241894053428 0.032522702084281166411468982655516959 0.904117256370474856678465866119096193 -0.58731795428661744729670241894053428 0.0217265876779679159905822704017308993 0.981560634246719250690549090149280823 -0.58731795428661744729670241894053428 0.00958449169844262713782227993930055215 -0.981560634246719250690549090149280823 -0.367831498998180193752691536643717561 0.0110150889549367919242539848337262597 -0.904117256370474856678465866119096193 -0.367831498998180193752691536643717561 0.0249695344823489249676746275301833154 -0.769902674194304687036893833212818076 -0.367831498998180193752691536643717561 0.0373770949764060342626176612500786362 -0.58731795428661744729670241894053428 -0.367831498998180193752691536643717561 0.0474380778075389929242967549761226514 -0.367831498998180193752691536643717561 -0.367831498998180193752691536643717561 0.0545187646191149554205576209465581688 -0.12523340851146891547244136946385313 -0.367831498998180193752691536643717561 0.0581739756980091092614492493882090247 0.12523340851146891547244136946385313 -0.367831498998180193752691536643717561 0.0581739756980091092614492493882090247 0.367831498998180193752691536643717561 -0.367831498998180193752691536643717561 0.0545187646191149554205576209465581688 0.58731795428661744729670241894053428 -0.367831498998180193752691536643717561 0.0474380778075389929242967549761226514 0.769902674194304687036893833212818076 -0.367831498998180193752691536643717561 0.0373770949764060342626176612500786362 0.904117256370474856678465866119096193 -0.367831498998180193752691536643717561 0.0249695344823489249676746275301833154 0.981560634246719250690549090149280823 -0.367831498998180193752691536643717561 0.0110150889549367919242539848337262597 -0.981560634246719250690549090149280823 -0.12523340851146891547244136946385313 0.0117535956959529496032162964988872944 -0.904117256370474856678465866119096193 -0.12523340851146891547244136946385313 0.0266436171530100164984590307215919845 -0.769902674194304687036893833212818076 -0.12523340851146891547244136946385313 0.0398830426553220249585727063790179852 -0.58731795428661744729670241894053428 -0.12523340851146891547244136946385313 0.0506185641735628584619201538523681483 -0.367831498998180193752691536643717561 -0.12523340851146891547244136946385313 0.0581739756980091092614492493882090247 -0.12523340851146891547244136946385313 -0.12523340851146891547244136946385313 0.0620742504375458262169449992028767736 0.12523340851146891547244136946385313 -0.12523340851146891547244136946385313 0.0620742504375458262169449992028767736 0.367831498998180193752691536643717561 -0.12523340851146891547244136946385313 0.0581739756980091092614492493882090247 0.58731795428661744729670241894053428 -0.12523340851146891547244136946385313 0.0506185641735628584619201538523681483 0.769902674194304687036893833212818076 -0.12523340851146891547244136946385313 0.0398830426553220249585727063790179852 0.904117256370474856678465866119096193 -0.12523340851146891547244136946385313 0.0266436171530100164984590307215919845 0.981560634246719250690549090149280823 -0.12523340851146891547244136946385313 0.0117535956959529496032162964988872944 -0.981560634246719250690549090149280823 0.12523340851146891547244136946385313 0.0117535956959529496032162964988872944 -0.904117256370474856678465866119096193 0.12523340851146891547244136946385313 0.0266436171530100164984590307215919845 -0.769902674194304687036893833212818076 0.12523340851146891547244136946385313 0.0398830426553220249585727063790179852 -0.58731795428661744729670241894053428 0.12523340851146891547244136946385313 0.0506185641735628584619201538523681483 -0.367831498998180193752691536643717561 0.12523340851146891547244136946385313 0.0581739756980091092614492493882090247 -0.12523340851146891547244136946385313 0.12523340851146891547244136946385313 0.0620742504375458262169449992028767736 0.12523340851146891547244136946385313 0.12523340851146891547244136946385313 0.0620742504375458262169449992028767736 0.367831498998180193752691536643717561 0.12523340851146891547244136946385313 0.0581739756980091092614492493882090247 0.58731795428661744729670241894053428 0.12523340851146891547244136946385313 0.0506185641735628584619201538523681483 0.769902674194304687036893833212818076 0.12523340851146891547244136946385313 0.0398830426553220249585727063790179852 0.904117256370474856678465866119096193 0.12523340851146891547244136946385313 0.0266436171530100164984590307215919845 0.981560634246719250690549090149280823 0.12523340851146891547244136946385313 0.0117535956959529496032162964988872944 -0.981560634246719250690549090149280823 0.367831498998180193752691536643717561 0.0110150889549367919242539848337262597 -0.904117256370474856678465866119096193 0.367831498998180193752691536643717561 0.0249695344823489249676746275301833154 -0.769902674194304687036893833212818076 0.367831498998180193752691536643717561 0.0373770949764060342626176612500786362 -0.58731795428661744729670241894053428 0.367831498998180193752691536643717561 0.0474380778075389929242967549761226514 -0.367831498998180193752691536643717561 0.367831498998180193752691536643717561 0.0545187646191149554205576209465581688 -0.12523340851146891547244136946385313 0.367831498998180193752691536643717561 0.0581739756980091092614492493882090247 0.12523340851146891547244136946385313 0.367831498998180193752691536643717561 0.0581739756980091092614492493882090247 0.367831498998180193752691536643717561 0.367831498998180193752691536643717561 0.0545187646191149554205576209465581688 0.58731795428661744729670241894053428 0.367831498998180193752691536643717561 0.0474380778075389929242967549761226514 0.769902674194304687036893833212818076 0.367831498998180193752691536643717561 0.0373770949764060342626176612500786362 0.904117256370474856678465866119096193 0.367831498998180193752691536643717561 0.0249695344823489249676746275301833154 0.981560634246719250690549090149280823 0.367831498998180193752691536643717561 0.0110150889549367919242539848337262597 -0.981560634246719250690549090149280823 0.58731795428661744729670241894053428 0.00958449169844262713782227993930055215 -0.904117256370474856678465866119096193 0.58731795428661744729670241894053428 0.0217265876779679159905822704017308993 -0.769902674194304687036893833212818076 0.58731795428661744729670241894053428 0.032522702084281166411468982655516959 -0.58731795428661744729670241894053428 0.58731795428661744729670241894053428 0.0412770032812723608229740139847591663 -0.367831498998180193752691536643717561 0.58731795428661744729670241894053428 0.0474380778075389929242967549761226514 -0.12523340851146891547244136946385313 0.58731795428661744729670241894053428 0.0506185641735628584619201538523681483 0.12523340851146891547244136946385313 0.58731795428661744729670241894053428 0.0506185641735628584619201538523681483 0.367831498998180193752691536643717561 0.58731795428661744729670241894053428 0.0474380778075389929242967549761226514 0.58731795428661744729670241894053428 0.58731795428661744729670241894053428 0.0412770032812723608229740139847591663 0.769902674194304687036893833212818076 0.58731795428661744729670241894053428 0.032522702084281166411468982655516959 0.904117256370474856678465866119096193 0.58731795428661744729670241894053428 0.0217265876779679159905822704017308993 0.981560634246719250690549090149280823 0.58731795428661744729670241894053428 0.00958449169844262713782227993930055215 -0.981560634246719250690549090149280823 0.769902674194304687036893833212818076 0.00755174899722291605121807798099772971 -0.904117256370474856678465866119096193 0.769902674194304687036893833212818076 0.0171186685608825894820284888250972603 -0.769902674194304687036893833212818076 0.769902674194304687036893833212818076 0.0256250712692314951687466124526505015 -0.58731795428661744729670241894053428 0.769902674194304687036893833212818076 0.032522702084281166411468982655516959 -0.367831498998180193752691536643717561 0.769902674194304687036893833212818076 0.0373770949764060342626176612500786362 -0.12523340851146891547244136946385313 0.769902674194304687036893833212818076 0.0398830426553220249585727063790179852 0.12523340851146891547244136946385313 0.769902674194304687036893833212818076 0.0398830426553220249585727063790179852 0.367831498998180193752691536643717561 0.769902674194304687036893833212818076 0.0373770949764060342626176612500786362 0.58731795428661744729670241894053428 0.769902674194304687036893833212818076 0.032522702084281166411468982655516959 0.769902674194304687036893833212818076 0.769902674194304687036893833212818076 0.0256250712692314951687466124526505015 0.904117256370474856678465866119096193 0.769902674194304687036893833212818076 0.0171186685608825894820284888250972603 0.981560634246719250690549090149280823 0.769902674194304687036893833212818076 0.00755174899722291605121807798099772971 -0.981560634246719250690549090149280823 0.904117256370474856678465866119096193 0.00504489867677599569695403892274707604 -0.904117256370474856678465866119096193 0.904117256370474856678465866119096193 0.0114360194443329883245562617926456885 -0.769902674194304687036893833212818076 0.904117256370474856678465866119096193 0.0171186685608825894820284888250972603 -0.58731795428661744729670241894053428 0.904117256370474856678465866119096193 0.0217265876779679159905822704017308993 -0.367831498998180193752691536643717561 0.904117256370474856678465866119096193 0.0249695344823489249676746275301833154 -0.12523340851146891547244136946385313 0.904117256370474856678465866119096193 0.0266436171530100164984590307215919845 0.12523340851146891547244136946385313 0.904117256370474856678465866119096193 0.0266436171530100164984590307215919845 0.367831498998180193752691536643717561 0.904117256370474856678465866119096193 0.0249695344823489249676746275301833154 0.58731795428661744729670241894053428 0.904117256370474856678465866119096193 0.0217265876779679159905822704017308993 0.769902674194304687036893833212818076 0.904117256370474856678465866119096193 0.0171186685608825894820284888250972603 0.904117256370474856678465866119096193 0.904117256370474856678465866119096193 0.0114360194443329883245562617926456885 0.981560634246719250690549090149280823 0.904117256370474856678465866119096193 0.00504489867677599569695403892274707604 -0.981560634246719250690549090149280823 0.981560634246719250690549090149280823 0.00222551236318054678115128330935814828 -0.904117256370474856678465866119096193 0.981560634246719250690549090149280823 0.00504489867677599569695403892274707604 -0.769902674194304687036893833212818076 0.981560634246719250690549090149280823 0.00755174899722291605121807798099772971 -0.58731795428661744729670241894053428 0.981560634246719250690549090149280823 0.00958449169844262713782227993930055215 -0.367831498998180193752691536643717561 0.981560634246719250690549090149280823 0.0110150889549367919242539848337262597 -0.12523340851146891547244136946385313 0.981560634246719250690549090149280823 0.0117535956959529496032162964988872944 0.12523340851146891547244136946385313 0.981560634246719250690549090149280823 0.0117535956959529496032162964988872944 0.367831498998180193752691536643717561 0.981560634246719250690549090149280823 0.0110150889549367919242539848337262597 0.58731795428661744729670241894053428 0.981560634246719250690549090149280823 0.00958449169844262713782227993930055215 0.769902674194304687036893833212818076 0.981560634246719250690549090149280823 0.00755174899722291605121807798099772971 0.904117256370474856678465866119096193 0.981560634246719250690549090149280823 0.00504489867677599569695403892274707604 0.981560634246719250690549090149280823 0.981560634246719250690549090149280823 0.00222551236318054678115128330935814828 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n16-d7-spu.txt000066400000000000000000000035401277740313300236120ustar00rootroot00000000000000-0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.121002993285602005521212097370147555 -0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.226851851851851851851851851851851852 0.339981043584856264802665759103244687 -0.861136311594052575223946488892809505 0.226851851851851851851851851851851852 0.861136311594052575223946488892809505 -0.861136311594052575223946488892809505 0.121002993285602005521212097370147555 -0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.226851851851851851851851851851851852 -0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.425293303010694290775084198926148741 0.339981043584856264802665759103244687 -0.339981043584856264802665759103244687 0.425293303010694290775084198926148741 0.861136311594052575223946488892809505 -0.339981043584856264802665759103244687 0.226851851851851851851851851851851852 -0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.226851851851851851851851851851851852 -0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.425293303010694290775084198926148741 0.339981043584856264802665759103244687 0.339981043584856264802665759103244687 0.425293303010694290775084198926148741 0.861136311594052575223946488892809505 0.339981043584856264802665759103244687 0.226851851851851851851851851851851852 -0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.121002993285602005521212097370147555 -0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.226851851851851851851851851851851852 0.339981043584856264802665759103244687 0.861136311594052575223946488892809505 0.226851851851851851851851851851851852 0.861136311594052575223946488892809505 0.861136311594052575223946488892809505 0.121002993285602005521212097370147555 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n169-d25-spu.txt000066400000000000000000000452371277740313300237740ustar00rootroot00000000000000-0.984183054718588149472829448807109611 -0.984183054718588149472829448807109611 0.00163895464183811884121253988300638206 -0.917598399222977965206547836500719512 -0.984183054718588149472829448807109611 0.00372944723841864450729591633589047115 -0.80157809073330991279420648958285989 -0.984183054718588149472829448807109611 0.00562215584951401005699858568595417265 -0.64234933944034022064398460699551565 -0.984183054718588149472829448807109611 0.0072120627340884822660977124010879361 -0.448492751036446852877912852127639868 -0.984183054718588149472829448807109611 0.0084132258587925054742426402578299239 -0.230458315955134794065528121097988835 -0.984183054718588149472829448807109611 0.00916084934807396397495080353063099104 0.0 -0.984183054718588149472829448807109611 0.00941461818918030879844678821317236629 0.230458315955134794065528121097988835 -0.984183054718588149472829448807109611 0.00916084934807396397495080353063099104 0.448492751036446852877912852127639868 -0.984183054718588149472829448807109611 0.0084132258587925054742426402578299239 0.64234933944034022064398460699551565 -0.984183054718588149472829448807109611 0.0072120627340884822660977124010879361 0.80157809073330991279420648958285989 -0.984183054718588149472829448807109611 0.00562215584951401005699858568595417265 0.917598399222977965206547836500719512 -0.984183054718588149472829448807109611 0.00372944723841864450729591633589047115 0.984183054718588149472829448807109611 -0.984183054718588149472829448807109611 0.00163895464183811884121253988300638206 -0.984183054718588149472829448807109611 -0.917598399222977965206547836500719512 0.00372944723841864450729591633589047115 -0.917598399222977965206547836500719512 -0.917598399222977965206547836500719512 0.00848637073235260245542886788331796942 -0.80157809073330991279420648958285989 -0.917598399222977965206547836500719512 0.0127932360491769100411874064208713895 -0.64234933944034022064398460699551565 -0.917598399222977965206547836500719512 0.0164110749378535595329168271916532139 -0.448492751036446852877912852127639868 -0.917598399222977965206547836500719512 0.0191443259894468415836819049495856156 -0.230458315955134794065528121097988835 -0.917598399222977965206547836500719512 0.0208455459538691650762583504811938585 0.0 -0.917598399222977965206547836500719512 0.0214229978732214494353050053825692057 0.230458315955134794065528121097988835 -0.917598399222977965206547836500719512 0.0208455459538691650762583504811938585 0.448492751036446852877912852127639868 -0.917598399222977965206547836500719512 0.0191443259894468415836819049495856156 0.64234933944034022064398460699551565 -0.917598399222977965206547836500719512 0.0164110749378535595329168271916532139 0.80157809073330991279420648958285989 -0.917598399222977965206547836500719512 0.0127932360491769100411874064208713895 0.917598399222977965206547836500719512 -0.917598399222977965206547836500719512 0.00848637073235260245542886788331796942 0.984183054718588149472829448807109611 -0.917598399222977965206547836500719512 0.00372944723841864450729591633589047115 -0.984183054718588149472829448807109611 -0.80157809073330991279420648958285989 0.00562215584951401005699858568595417265 -0.917598399222977965206547836500719512 -0.80157809073330991279420648958285989 0.0127932360491769100411874064208713895 -0.80157809073330991279420648958285989 -0.80157809073330991279420648958285989 0.0192858518407653505656012021834901332 -0.64234933944034022064398460699551565 -0.80157809073330991279420648958285989 0.0247397576799580922595494296271152051 -0.448492751036446852877912852127639868 -0.80157809073330991279420648958285989 0.0288601440014498759913365323587247721 -0.230458315955134794065528121097988835 -0.80157809073330991279420648958285989 0.031424739546805417568337372925735892 0.0 -0.80157809073330991279420648958285989 0.032295250504235163961182495333959806 0.230458315955134794065528121097988835 -0.80157809073330991279420648958285989 0.031424739546805417568337372925735892 0.448492751036446852877912852127639868 -0.80157809073330991279420648958285989 0.0288601440014498759913365323587247721 0.64234933944034022064398460699551565 -0.80157809073330991279420648958285989 0.0247397576799580922595494296271152051 0.80157809073330991279420648958285989 -0.80157809073330991279420648958285989 0.0192858518407653505656012021834901332 0.917598399222977965206547836500719512 -0.80157809073330991279420648958285989 0.0127932360491769100411874064208713895 0.984183054718588149472829448807109611 -0.80157809073330991279420648958285989 0.00562215584951401005699858568595417265 -0.984183054718588149472829448807109611 -0.64234933944034022064398460699551565 0.0072120627340884822660977124010879361 -0.917598399222977965206547836500719512 -0.64234933944034022064398460699551565 0.0164110749378535595329168271916532139 -0.80157809073330991279420648958285989 -0.64234933944034022064398460699551565 0.0247397576799580922595494296271152051 -0.64234933944034022064398460699551565 -0.64234933944034022064398460699551565 0.0317359904616355410860061728659314781 -0.448492751036446852877912852127639868 -0.64234933944034022064398460699551565 0.0370215936065301401621325039506713743 -0.230458315955134794065528121097988835 -0.64234933944034022064398460699551565 0.0403114390778659910219855764674814336 0.0 -0.64234933944034022064398460699551565 0.0414281245280278639027169389843147089 0.230458315955134794065528121097988835 -0.64234933944034022064398460699551565 0.0403114390778659910219855764674814336 0.448492751036446852877912852127639868 -0.64234933944034022064398460699551565 0.0370215936065301401621325039506713743 0.64234933944034022064398460699551565 -0.64234933944034022064398460699551565 0.0317359904616355410860061728659314781 0.80157809073330991279420648958285989 -0.64234933944034022064398460699551565 0.0247397576799580922595494296271152051 0.917598399222977965206547836500719512 -0.64234933944034022064398460699551565 0.0164110749378535595329168271916532139 0.984183054718588149472829448807109611 -0.64234933944034022064398460699551565 0.0072120627340884822660977124010879361 -0.984183054718588149472829448807109611 -0.448492751036446852877912852127639868 0.0084132258587925054742426402578299239 -0.917598399222977965206547836500719512 -0.448492751036446852877912852127639868 0.0191443259894468415836819049495856156 -0.80157809073330991279420648958285989 -0.448492751036446852877912852127639868 0.0288601440014498759913365323587247721 -0.64234933944034022064398460699551565 -0.448492751036446852877912852127639868 0.0370215936065301401621325039506713743 -0.448492751036446852877912852127639868 -0.448492751036446852877912852127639868 0.0431875096138543017489271319791801871 -0.230458315955134794065528121097988835 -0.448492751036446852877912852127639868 0.0470252761463125626038787519518574241 0.0 -0.448492751036446852877912852127639868 0.0483279446410045494966475077164069325 0.230458315955134794065528121097988835 -0.448492751036446852877912852127639868 0.0470252761463125626038787519518574241 0.448492751036446852877912852127639868 -0.448492751036446852877912852127639868 0.0431875096138543017489271319791801871 0.64234933944034022064398460699551565 -0.448492751036446852877912852127639868 0.0370215936065301401621325039506713743 0.80157809073330991279420648958285989 -0.448492751036446852877912852127639868 0.0288601440014498759913365323587247721 0.917598399222977965206547836500719512 -0.448492751036446852877912852127639868 0.0191443259894468415836819049495856156 0.984183054718588149472829448807109611 -0.448492751036446852877912852127639868 0.0084132258587925054742426402578299239 -0.984183054718588149472829448807109611 -0.230458315955134794065528121097988835 0.00916084934807396397495080353063099104 -0.917598399222977965206547836500719512 -0.230458315955134794065528121097988835 0.0208455459538691650762583504811938585 -0.80157809073330991279420648958285989 -0.230458315955134794065528121097988835 0.031424739546805417568337372925735892 -0.64234933944034022064398460699551565 -0.230458315955134794065528121097988835 0.0403114390778659910219855764674814336 -0.448492751036446852877912852127639868 -0.230458315955134794065528121097988835 0.0470252761463125626038787519518574241 -0.230458315955134794065528121097988835 -0.230458315955134794065528121097988835 0.051204077669890846311326793452447907 0.0 -0.230458315955134794065528121097988835 0.0526225050401585837107050744608582243 0.230458315955134794065528121097988835 -0.230458315955134794065528121097988835 0.051204077669890846311326793452447907 0.448492751036446852877912852127639868 -0.230458315955134794065528121097988835 0.0470252761463125626038787519518574241 0.64234933944034022064398460699551565 -0.230458315955134794065528121097988835 0.0403114390778659910219855764674814336 0.80157809073330991279420648958285989 -0.230458315955134794065528121097988835 0.031424739546805417568337372925735892 0.917598399222977965206547836500719512 -0.230458315955134794065528121097988835 0.0208455459538691650762583504811938585 0.984183054718588149472829448807109611 -0.230458315955134794065528121097988835 0.00916084934807396397495080353063099104 -0.984183054718588149472829448807109611 0.0 0.00941461818918030879844678821317236629 -0.917598399222977965206547836500719512 0.0 0.0214229978732214494353050053825692057 -0.80157809073330991279420648958285989 0.0 0.032295250504235163961182495333959806 -0.64234933944034022064398460699551565 0.0 0.0414281245280278639027169389843147089 -0.448492751036446852877912852127639868 0.0 0.0483279446410045494966475077164069325 -0.230458315955134794065528121097988835 0.0 0.0526225050401585837107050744608582243 0.0 0.0 0.054080224910091981779171410355109409 0.230458315955134794065528121097988835 0.0 0.0526225050401585837107050744608582243 0.448492751036446852877912852127639868 0.0 0.0483279446410045494966475077164069325 0.64234933944034022064398460699551565 0.0 0.0414281245280278639027169389843147089 0.80157809073330991279420648958285989 0.0 0.032295250504235163961182495333959806 0.917598399222977965206547836500719512 0.0 0.0214229978732214494353050053825692057 0.984183054718588149472829448807109611 0.0 0.00941461818918030879844678821317236629 -0.984183054718588149472829448807109611 0.230458315955134794065528121097988835 0.00916084934807396397495080353063099104 -0.917598399222977965206547836500719512 0.230458315955134794065528121097988835 0.0208455459538691650762583504811938585 -0.80157809073330991279420648958285989 0.230458315955134794065528121097988835 0.031424739546805417568337372925735892 -0.64234933944034022064398460699551565 0.230458315955134794065528121097988835 0.0403114390778659910219855764674814336 -0.448492751036446852877912852127639868 0.230458315955134794065528121097988835 0.0470252761463125626038787519518574241 -0.230458315955134794065528121097988835 0.230458315955134794065528121097988835 0.051204077669890846311326793452447907 0.0 0.230458315955134794065528121097988835 0.0526225050401585837107050744608582243 0.230458315955134794065528121097988835 0.230458315955134794065528121097988835 0.051204077669890846311326793452447907 0.448492751036446852877912852127639868 0.230458315955134794065528121097988835 0.0470252761463125626038787519518574241 0.64234933944034022064398460699551565 0.230458315955134794065528121097988835 0.0403114390778659910219855764674814336 0.80157809073330991279420648958285989 0.230458315955134794065528121097988835 0.031424739546805417568337372925735892 0.917598399222977965206547836500719512 0.230458315955134794065528121097988835 0.0208455459538691650762583504811938585 0.984183054718588149472829448807109611 0.230458315955134794065528121097988835 0.00916084934807396397495080353063099104 -0.984183054718588149472829448807109611 0.448492751036446852877912852127639868 0.0084132258587925054742426402578299239 -0.917598399222977965206547836500719512 0.448492751036446852877912852127639868 0.0191443259894468415836819049495856156 -0.80157809073330991279420648958285989 0.448492751036446852877912852127639868 0.0288601440014498759913365323587247721 -0.64234933944034022064398460699551565 0.448492751036446852877912852127639868 0.0370215936065301401621325039506713743 -0.448492751036446852877912852127639868 0.448492751036446852877912852127639868 0.0431875096138543017489271319791801871 -0.230458315955134794065528121097988835 0.448492751036446852877912852127639868 0.0470252761463125626038787519518574241 0.0 0.448492751036446852877912852127639868 0.0483279446410045494966475077164069325 0.230458315955134794065528121097988835 0.448492751036446852877912852127639868 0.0470252761463125626038787519518574241 0.448492751036446852877912852127639868 0.448492751036446852877912852127639868 0.0431875096138543017489271319791801871 0.64234933944034022064398460699551565 0.448492751036446852877912852127639868 0.0370215936065301401621325039506713743 0.80157809073330991279420648958285989 0.448492751036446852877912852127639868 0.0288601440014498759913365323587247721 0.917598399222977965206547836500719512 0.448492751036446852877912852127639868 0.0191443259894468415836819049495856156 0.984183054718588149472829448807109611 0.448492751036446852877912852127639868 0.0084132258587925054742426402578299239 -0.984183054718588149472829448807109611 0.64234933944034022064398460699551565 0.0072120627340884822660977124010879361 -0.917598399222977965206547836500719512 0.64234933944034022064398460699551565 0.0164110749378535595329168271916532139 -0.80157809073330991279420648958285989 0.64234933944034022064398460699551565 0.0247397576799580922595494296271152051 -0.64234933944034022064398460699551565 0.64234933944034022064398460699551565 0.0317359904616355410860061728659314781 -0.448492751036446852877912852127639868 0.64234933944034022064398460699551565 0.0370215936065301401621325039506713743 -0.230458315955134794065528121097988835 0.64234933944034022064398460699551565 0.0403114390778659910219855764674814336 0.0 0.64234933944034022064398460699551565 0.0414281245280278639027169389843147089 0.230458315955134794065528121097988835 0.64234933944034022064398460699551565 0.0403114390778659910219855764674814336 0.448492751036446852877912852127639868 0.64234933944034022064398460699551565 0.0370215936065301401621325039506713743 0.64234933944034022064398460699551565 0.64234933944034022064398460699551565 0.0317359904616355410860061728659314781 0.80157809073330991279420648958285989 0.64234933944034022064398460699551565 0.0247397576799580922595494296271152051 0.917598399222977965206547836500719512 0.64234933944034022064398460699551565 0.0164110749378535595329168271916532139 0.984183054718588149472829448807109611 0.64234933944034022064398460699551565 0.0072120627340884822660977124010879361 -0.984183054718588149472829448807109611 0.80157809073330991279420648958285989 0.00562215584951401005699858568595417265 -0.917598399222977965206547836500719512 0.80157809073330991279420648958285989 0.0127932360491769100411874064208713895 -0.80157809073330991279420648958285989 0.80157809073330991279420648958285989 0.0192858518407653505656012021834901332 -0.64234933944034022064398460699551565 0.80157809073330991279420648958285989 0.0247397576799580922595494296271152051 -0.448492751036446852877912852127639868 0.80157809073330991279420648958285989 0.0288601440014498759913365323587247721 -0.230458315955134794065528121097988835 0.80157809073330991279420648958285989 0.031424739546805417568337372925735892 0.0 0.80157809073330991279420648958285989 0.032295250504235163961182495333959806 0.230458315955134794065528121097988835 0.80157809073330991279420648958285989 0.031424739546805417568337372925735892 0.448492751036446852877912852127639868 0.80157809073330991279420648958285989 0.0288601440014498759913365323587247721 0.64234933944034022064398460699551565 0.80157809073330991279420648958285989 0.0247397576799580922595494296271152051 0.80157809073330991279420648958285989 0.80157809073330991279420648958285989 0.0192858518407653505656012021834901332 0.917598399222977965206547836500719512 0.80157809073330991279420648958285989 0.0127932360491769100411874064208713895 0.984183054718588149472829448807109611 0.80157809073330991279420648958285989 0.00562215584951401005699858568595417265 -0.984183054718588149472829448807109611 0.917598399222977965206547836500719512 0.00372944723841864450729591633589047115 -0.917598399222977965206547836500719512 0.917598399222977965206547836500719512 0.00848637073235260245542886788331796942 -0.80157809073330991279420648958285989 0.917598399222977965206547836500719512 0.0127932360491769100411874064208713895 -0.64234933944034022064398460699551565 0.917598399222977965206547836500719512 0.0164110749378535595329168271916532139 -0.448492751036446852877912852127639868 0.917598399222977965206547836500719512 0.0191443259894468415836819049495856156 -0.230458315955134794065528121097988835 0.917598399222977965206547836500719512 0.0208455459538691650762583504811938585 0.0 0.917598399222977965206547836500719512 0.0214229978732214494353050053825692057 0.230458315955134794065528121097988835 0.917598399222977965206547836500719512 0.0208455459538691650762583504811938585 0.448492751036446852877912852127639868 0.917598399222977965206547836500719512 0.0191443259894468415836819049495856156 0.64234933944034022064398460699551565 0.917598399222977965206547836500719512 0.0164110749378535595329168271916532139 0.80157809073330991279420648958285989 0.917598399222977965206547836500719512 0.0127932360491769100411874064208713895 0.917598399222977965206547836500719512 0.917598399222977965206547836500719512 0.00848637073235260245542886788331796942 0.984183054718588149472829448807109611 0.917598399222977965206547836500719512 0.00372944723841864450729591633589047115 -0.984183054718588149472829448807109611 0.984183054718588149472829448807109611 0.00163895464183811884121253988300638206 -0.917598399222977965206547836500719512 0.984183054718588149472829448807109611 0.00372944723841864450729591633589047115 -0.80157809073330991279420648958285989 0.984183054718588149472829448807109611 0.00562215584951401005699858568595417265 -0.64234933944034022064398460699551565 0.984183054718588149472829448807109611 0.0072120627340884822660977124010879361 -0.448492751036446852877912852127639868 0.984183054718588149472829448807109611 0.0084132258587925054742426402578299239 -0.230458315955134794065528121097988835 0.984183054718588149472829448807109611 0.00916084934807396397495080353063099104 0.0 0.984183054718588149472829448807109611 0.00941461818918030879844678821317236629 0.230458315955134794065528121097988835 0.984183054718588149472829448807109611 0.00916084934807396397495080353063099104 0.448492751036446852877912852127639868 0.984183054718588149472829448807109611 0.0084132258587925054742426402578299239 0.64234933944034022064398460699551565 0.984183054718588149472829448807109611 0.0072120627340884822660977124010879361 0.80157809073330991279420648958285989 0.984183054718588149472829448807109611 0.00562215584951401005699858568595417265 0.917598399222977965206547836500719512 0.984183054718588149472829448807109611 0.00372944723841864450729591633589047115 0.984183054718588149472829448807109611 0.984183054718588149472829448807109611 0.00163895464183811884121253988300638206 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n196-d27-spu.txt000066400000000000000000000554741277740313300240020ustar00rootroot00000000000000-0.986283808696812338841597266704052802 -0.986283808696812338841597266704052802 0.00123337649399349267740316546553236235 -0.928434883663573517336391139377874264 -0.986283808696812338841597266704052802 0.00281510876227630705017903634479856472 -0.827201315069764993189794742650394961 -0.986283808696812338841597266704052802 0.0042676666228450005972498745041730437 -0.687292904811685470148019803019334138 -0.986283808696812338841597266704052802 0.00552089039303793508881110225612105873 -0.515248636358154091965290718551188662 -0.986283808696812338841597266704052802 0.0065160083902432469594362580509921158 -0.319112368927889760435671824168475467 -0.986283808696812338841597266704052802 0.00720645930679646474246689825581926096 -0.108054948707343662066244650219834748 -0.986283808696812338841597266704052802 0.00755995036255941591628654126075537436 0.108054948707343662066244650219834748 -0.986283808696812338841597266704052802 0.00755995036255941591628654126075537436 0.319112368927889760435671824168475467 -0.986283808696812338841597266704052802 0.00720645930679646474246689825581926096 0.515248636358154091965290718551188662 -0.986283808696812338841597266704052802 0.0065160083902432469594362580509921158 0.687292904811685470148019803019334138 -0.986283808696812338841597266704052802 0.00552089039303793508881110225612105873 0.827201315069764993189794742650394961 -0.986283808696812338841597266704052802 0.0042676666228450005972498745041730437 0.928434883663573517336391139377874264 -0.986283808696812338841597266704052802 0.00281510876227630705017903634479856472 0.986283808696812338841597266704052802 -0.986283808696812338841597266704052802 0.00123337649399349267740316546553236235 -0.986283808696812338841597266704052802 -0.928434883663573517336391139377874264 0.00281510876227630705017903634479856472 -0.928434883663573517336391139377874264 -0.928434883663573517336391139377874264 0.00642531893711171461899973526293872352 -0.827201315069764993189794742650394961 -0.928434883663573517336391139377874264 0.00974069618073042567429127112975603348 -0.687292904811685470148019803019334138 -0.928434883663573517336391139377874264 0.0126011051748568310741706976191820618 -0.515248636358154091965290718551188662 -0.928434883663573517336391139377874264 0.014872403036518773162574639154116857 -0.319112368927889760435671824168475467 -0.928434883663573517336391139377874264 0.0164483163400205063913259005070934869 -0.108054948707343662066244650219834748 -0.928434883663573517336391139377874264 0.0172551387282456518340919970449685821 0.108054948707343662066244650219834748 -0.928434883663573517336391139377874264 0.0172551387282456518340919970449685821 0.319112368927889760435671824168475467 -0.928434883663573517336391139377874264 0.0164483163400205063913259005070934869 0.515248636358154091965290718551188662 -0.928434883663573517336391139377874264 0.014872403036518773162574639154116857 0.687292904811685470148019803019334138 -0.928434883663573517336391139377874264 0.0126011051748568310741706976191820618 0.827201315069764993189794742650394961 -0.928434883663573517336391139377874264 0.00974069618073042567429127112975603348 0.928434883663573517336391139377874264 -0.928434883663573517336391139377874264 0.00642531893711171461899973526293872352 0.986283808696812338841597266704052802 -0.928434883663573517336391139377874264 0.00281510876227630705017903634479856472 -0.986283808696812338841597266704052802 -0.827201315069764993189794742650394961 0.0042676666228450005972498745041730437 -0.928434883663573517336391139377874264 -0.827201315069764993189794742650394961 0.00974069618073042567429127112975603348 -0.827201315069764993189794742650394961 -0.827201315069764993189794742650394961 0.0147667630220309230770179549764599129 -0.687292904811685470148019803019334138 -0.827201315069764993189794742650394961 0.0191031041806752014355273486413949335 -0.515248636358154091965290718551188662 -0.827201315069764993189794742650394961 0.0225463608692430641820636600770767767 -0.319112368927889760435671824168475467 -0.827201315069764993189794742650394961 0.0249354240187653970284800154494820452 -0.108054948707343662066244650219834748 -0.827201315069764993189794742650394961 0.0261585557936131726947846842941338805 0.108054948707343662066244650219834748 -0.827201315069764993189794742650394961 0.0261585557936131726947846842941338805 0.319112368927889760435671824168475467 -0.827201315069764993189794742650394961 0.0249354240187653970284800154494820452 0.515248636358154091965290718551188662 -0.827201315069764993189794742650394961 0.0225463608692430641820636600770767767 0.687292904811685470148019803019334138 -0.827201315069764993189794742650394961 0.0191031041806752014355273486413949335 0.827201315069764993189794742650394961 -0.827201315069764993189794742650394961 0.0147667630220309230770179549764599129 0.928434883663573517336391139377874264 -0.827201315069764993189794742650394961 0.00974069618073042567429127112975603348 0.986283808696812338841597266704052802 -0.827201315069764993189794742650394961 0.0042676666228450005972498745041730437 -0.986283808696812338841597266704052802 -0.687292904811685470148019803019334138 0.00552089039303793508881110225612105873 -0.928434883663573517336391139377874264 -0.687292904811685470148019803019334138 0.0126011051748568310741706976191820618 -0.827201315069764993189794742650394961 -0.687292904811685470148019803019334138 0.0191031041806752014355273486413949335 -0.687292904811685470148019803019334138 -0.687292904811685470148019803019334138 0.0247128357645669382915560077416390611 -0.515248636358154091965290718551188662 -0.687292904811685470148019803019334138 0.0291672237129876118446686686647458881 -0.319112368927889760435671824168475467 -0.687292904811685470148019803019334138 0.032257848392983344550945008591777491 -0.108054948707343662066244650219834748 -0.687292904811685470148019803019334138 0.0338401595390856722839231051089816624 0.108054948707343662066244650219834748 -0.687292904811685470148019803019334138 0.0338401595390856722839231051089816624 0.319112368927889760435671824168475467 -0.687292904811685470148019803019334138 0.032257848392983344550945008591777491 0.515248636358154091965290718551188662 -0.687292904811685470148019803019334138 0.0291672237129876118446686686647458881 0.687292904811685470148019803019334138 -0.687292904811685470148019803019334138 0.0247128357645669382915560077416390611 0.827201315069764993189794742650394961 -0.687292904811685470148019803019334138 0.0191031041806752014355273486413949335 0.928434883663573517336391139377874264 -0.687292904811685470148019803019334138 0.0126011051748568310741706976191820618 0.986283808696812338841597266704052802 -0.687292904811685470148019803019334138 0.00552089039303793508881110225612105873 -0.986283808696812338841597266704052802 -0.515248636358154091965290718551188662 0.0065160083902432469594362580509921158 -0.928434883663573517336391139377874264 -0.515248636358154091965290718551188662 0.014872403036518773162574639154116857 -0.827201315069764993189794742650394961 -0.515248636358154091965290718551188662 0.0225463608692430641820636600770767767 -0.687292904811685470148019803019334138 -0.515248636358154091965290718551188662 0.0291672237129876118446686686647458881 -0.515248636358154091965290718551188662 -0.515248636358154091965290718551188662 0.0344244969386812408830698901244671112 -0.319112368927889760435671824168475467 -0.515248636358154091965290718551188662 0.0380721941237839462570993610627731349 -0.108054948707343662066244650219834748 -0.515248636358154091965290718551188662 0.0399397104064799304528041129909851526 0.108054948707343662066244650219834748 -0.515248636358154091965290718551188662 0.0399397104064799304528041129909851526 0.319112368927889760435671824168475467 -0.515248636358154091965290718551188662 0.0380721941237839462570993610627731349 0.515248636358154091965290718551188662 -0.515248636358154091965290718551188662 0.0344244969386812408830698901244671112 0.687292904811685470148019803019334138 -0.515248636358154091965290718551188662 0.0291672237129876118446686686647458881 0.827201315069764993189794742650394961 -0.515248636358154091965290718551188662 0.0225463608692430641820636600770767767 0.928434883663573517336391139377874264 -0.515248636358154091965290718551188662 0.014872403036518773162574639154116857 0.986283808696812338841597266704052802 -0.515248636358154091965290718551188662 0.0065160083902432469594362580509921158 -0.986283808696812338841597266704052802 -0.319112368927889760435671824168475467 0.00720645930679646474246689825581926096 -0.928434883663573517336391139377874264 -0.319112368927889760435671824168475467 0.0164483163400205063913259005070934869 -0.827201315069764993189794742650394961 -0.319112368927889760435671824168475467 0.0249354240187653970284800154494820452 -0.687292904811685470148019803019334138 -0.319112368927889760435671824168475467 0.032257848392983344550945008591777491 -0.515248636358154091965290718551188662 -0.319112368927889760435671824168475467 0.0380721941237839462570993610627731349 -0.319112368927889760435671824168475467 -0.319112368927889760435671824168475467 0.0421064095135798681251959935973532202 -0.108054948707343662066244650219834748 -0.319112368927889760435671824168475467 0.0441718120253660768704108881969194165 0.108054948707343662066244650219834748 -0.319112368927889760435671824168475467 0.0441718120253660768704108881969194165 0.319112368927889760435671824168475467 -0.319112368927889760435671824168475467 0.0421064095135798681251959935973532202 0.515248636358154091965290718551188662 -0.319112368927889760435671824168475467 0.0380721941237839462570993610627731349 0.687292904811685470148019803019334138 -0.319112368927889760435671824168475467 0.032257848392983344550945008591777491 0.827201315069764993189794742650394961 -0.319112368927889760435671824168475467 0.0249354240187653970284800154494820452 0.928434883663573517336391139377874264 -0.319112368927889760435671824168475467 0.0164483163400205063913259005070934869 0.986283808696812338841597266704052802 -0.319112368927889760435671824168475467 0.00720645930679646474246689825581926096 -0.986283808696812338841597266704052802 -0.108054948707343662066244650219834748 0.00755995036255941591628654126075537436 -0.928434883663573517336391139377874264 -0.108054948707343662066244650219834748 0.0172551387282456518340919970449685821 -0.827201315069764993189794742650394961 -0.108054948707343662066244650219834748 0.0261585557936131726947846842941338805 -0.687292904811685470148019803019334138 -0.108054948707343662066244650219834748 0.0338401595390856722839231051089816624 -0.515248636358154091965290718551188662 -0.108054948707343662066244650219834748 0.0399397104064799304528041129909851526 -0.319112368927889760435671824168475467 -0.108054948707343662066244650219834748 0.0441718120253660768704108881969194165 -0.108054948707343662066244650219834748 -0.108054948707343662066244650219834748 0.0463385266078078701435751144195159667 0.108054948707343662066244650219834748 -0.108054948707343662066244650219834748 0.0463385266078078701435751144195159667 0.319112368927889760435671824168475467 -0.108054948707343662066244650219834748 0.0441718120253660768704108881969194165 0.515248636358154091965290718551188662 -0.108054948707343662066244650219834748 0.0399397104064799304528041129909851526 0.687292904811685470148019803019334138 -0.108054948707343662066244650219834748 0.0338401595390856722839231051089816624 0.827201315069764993189794742650394961 -0.108054948707343662066244650219834748 0.0261585557936131726947846842941338805 0.928434883663573517336391139377874264 -0.108054948707343662066244650219834748 0.0172551387282456518340919970449685821 0.986283808696812338841597266704052802 -0.108054948707343662066244650219834748 0.00755995036255941591628654126075537436 -0.986283808696812338841597266704052802 0.108054948707343662066244650219834748 0.00755995036255941591628654126075537436 -0.928434883663573517336391139377874264 0.108054948707343662066244650219834748 0.0172551387282456518340919970449685821 -0.827201315069764993189794742650394961 0.108054948707343662066244650219834748 0.0261585557936131726947846842941338805 -0.687292904811685470148019803019334138 0.108054948707343662066244650219834748 0.0338401595390856722839231051089816624 -0.515248636358154091965290718551188662 0.108054948707343662066244650219834748 0.0399397104064799304528041129909851526 -0.319112368927889760435671824168475467 0.108054948707343662066244650219834748 0.0441718120253660768704108881969194165 -0.108054948707343662066244650219834748 0.108054948707343662066244650219834748 0.0463385266078078701435751144195159667 0.108054948707343662066244650219834748 0.108054948707343662066244650219834748 0.0463385266078078701435751144195159667 0.319112368927889760435671824168475467 0.108054948707343662066244650219834748 0.0441718120253660768704108881969194165 0.515248636358154091965290718551188662 0.108054948707343662066244650219834748 0.0399397104064799304528041129909851526 0.687292904811685470148019803019334138 0.108054948707343662066244650219834748 0.0338401595390856722839231051089816624 0.827201315069764993189794742650394961 0.108054948707343662066244650219834748 0.0261585557936131726947846842941338805 0.928434883663573517336391139377874264 0.108054948707343662066244650219834748 0.0172551387282456518340919970449685821 0.986283808696812338841597266704052802 0.108054948707343662066244650219834748 0.00755995036255941591628654126075537436 -0.986283808696812338841597266704052802 0.319112368927889760435671824168475467 0.00720645930679646474246689825581926096 -0.928434883663573517336391139377874264 0.319112368927889760435671824168475467 0.0164483163400205063913259005070934869 -0.827201315069764993189794742650394961 0.319112368927889760435671824168475467 0.0249354240187653970284800154494820452 -0.687292904811685470148019803019334138 0.319112368927889760435671824168475467 0.032257848392983344550945008591777491 -0.515248636358154091965290718551188662 0.319112368927889760435671824168475467 0.0380721941237839462570993610627731349 -0.319112368927889760435671824168475467 0.319112368927889760435671824168475467 0.0421064095135798681251959935973532202 -0.108054948707343662066244650219834748 0.319112368927889760435671824168475467 0.0441718120253660768704108881969194165 0.108054948707343662066244650219834748 0.319112368927889760435671824168475467 0.0441718120253660768704108881969194165 0.319112368927889760435671824168475467 0.319112368927889760435671824168475467 0.0421064095135798681251959935973532202 0.515248636358154091965290718551188662 0.319112368927889760435671824168475467 0.0380721941237839462570993610627731349 0.687292904811685470148019803019334138 0.319112368927889760435671824168475467 0.032257848392983344550945008591777491 0.827201315069764993189794742650394961 0.319112368927889760435671824168475467 0.0249354240187653970284800154494820452 0.928434883663573517336391139377874264 0.319112368927889760435671824168475467 0.0164483163400205063913259005070934869 0.986283808696812338841597266704052802 0.319112368927889760435671824168475467 0.00720645930679646474246689825581926096 -0.986283808696812338841597266704052802 0.515248636358154091965290718551188662 0.0065160083902432469594362580509921158 -0.928434883663573517336391139377874264 0.515248636358154091965290718551188662 0.014872403036518773162574639154116857 -0.827201315069764993189794742650394961 0.515248636358154091965290718551188662 0.0225463608692430641820636600770767767 -0.687292904811685470148019803019334138 0.515248636358154091965290718551188662 0.0291672237129876118446686686647458881 -0.515248636358154091965290718551188662 0.515248636358154091965290718551188662 0.0344244969386812408830698901244671112 -0.319112368927889760435671824168475467 0.515248636358154091965290718551188662 0.0380721941237839462570993610627731349 -0.108054948707343662066244650219834748 0.515248636358154091965290718551188662 0.0399397104064799304528041129909851526 0.108054948707343662066244650219834748 0.515248636358154091965290718551188662 0.0399397104064799304528041129909851526 0.319112368927889760435671824168475467 0.515248636358154091965290718551188662 0.0380721941237839462570993610627731349 0.515248636358154091965290718551188662 0.515248636358154091965290718551188662 0.0344244969386812408830698901244671112 0.687292904811685470148019803019334138 0.515248636358154091965290718551188662 0.0291672237129876118446686686647458881 0.827201315069764993189794742650394961 0.515248636358154091965290718551188662 0.0225463608692430641820636600770767767 0.928434883663573517336391139377874264 0.515248636358154091965290718551188662 0.014872403036518773162574639154116857 0.986283808696812338841597266704052802 0.515248636358154091965290718551188662 0.0065160083902432469594362580509921158 -0.986283808696812338841597266704052802 0.687292904811685470148019803019334138 0.00552089039303793508881110225612105873 -0.928434883663573517336391139377874264 0.687292904811685470148019803019334138 0.0126011051748568310741706976191820618 -0.827201315069764993189794742650394961 0.687292904811685470148019803019334138 0.0191031041806752014355273486413949335 -0.687292904811685470148019803019334138 0.687292904811685470148019803019334138 0.0247128357645669382915560077416390611 -0.515248636358154091965290718551188662 0.687292904811685470148019803019334138 0.0291672237129876118446686686647458881 -0.319112368927889760435671824168475467 0.687292904811685470148019803019334138 0.032257848392983344550945008591777491 -0.108054948707343662066244650219834748 0.687292904811685470148019803019334138 0.0338401595390856722839231051089816624 0.108054948707343662066244650219834748 0.687292904811685470148019803019334138 0.0338401595390856722839231051089816624 0.319112368927889760435671824168475467 0.687292904811685470148019803019334138 0.032257848392983344550945008591777491 0.515248636358154091965290718551188662 0.687292904811685470148019803019334138 0.0291672237129876118446686686647458881 0.687292904811685470148019803019334138 0.687292904811685470148019803019334138 0.0247128357645669382915560077416390611 0.827201315069764993189794742650394961 0.687292904811685470148019803019334138 0.0191031041806752014355273486413949335 0.928434883663573517336391139377874264 0.687292904811685470148019803019334138 0.0126011051748568310741706976191820618 0.986283808696812338841597266704052802 0.687292904811685470148019803019334138 0.00552089039303793508881110225612105873 -0.986283808696812338841597266704052802 0.827201315069764993189794742650394961 0.0042676666228450005972498745041730437 -0.928434883663573517336391139377874264 0.827201315069764993189794742650394961 0.00974069618073042567429127112975603348 -0.827201315069764993189794742650394961 0.827201315069764993189794742650394961 0.0147667630220309230770179549764599129 -0.687292904811685470148019803019334138 0.827201315069764993189794742650394961 0.0191031041806752014355273486413949335 -0.515248636358154091965290718551188662 0.827201315069764993189794742650394961 0.0225463608692430641820636600770767767 -0.319112368927889760435671824168475467 0.827201315069764993189794742650394961 0.0249354240187653970284800154494820452 -0.108054948707343662066244650219834748 0.827201315069764993189794742650394961 0.0261585557936131726947846842941338805 0.108054948707343662066244650219834748 0.827201315069764993189794742650394961 0.0261585557936131726947846842941338805 0.319112368927889760435671824168475467 0.827201315069764993189794742650394961 0.0249354240187653970284800154494820452 0.515248636358154091965290718551188662 0.827201315069764993189794742650394961 0.0225463608692430641820636600770767767 0.687292904811685470148019803019334138 0.827201315069764993189794742650394961 0.0191031041806752014355273486413949335 0.827201315069764993189794742650394961 0.827201315069764993189794742650394961 0.0147667630220309230770179549764599129 0.928434883663573517336391139377874264 0.827201315069764993189794742650394961 0.00974069618073042567429127112975603348 0.986283808696812338841597266704052802 0.827201315069764993189794742650394961 0.0042676666228450005972498745041730437 -0.986283808696812338841597266704052802 0.928434883663573517336391139377874264 0.00281510876227630705017903634479856472 -0.928434883663573517336391139377874264 0.928434883663573517336391139377874264 0.00642531893711171461899973526293872352 -0.827201315069764993189794742650394961 0.928434883663573517336391139377874264 0.00974069618073042567429127112975603348 -0.687292904811685470148019803019334138 0.928434883663573517336391139377874264 0.0126011051748568310741706976191820618 -0.515248636358154091965290718551188662 0.928434883663573517336391139377874264 0.014872403036518773162574639154116857 -0.319112368927889760435671824168475467 0.928434883663573517336391139377874264 0.0164483163400205063913259005070934869 -0.108054948707343662066244650219834748 0.928434883663573517336391139377874264 0.0172551387282456518340919970449685821 0.108054948707343662066244650219834748 0.928434883663573517336391139377874264 0.0172551387282456518340919970449685821 0.319112368927889760435671824168475467 0.928434883663573517336391139377874264 0.0164483163400205063913259005070934869 0.515248636358154091965290718551188662 0.928434883663573517336391139377874264 0.014872403036518773162574639154116857 0.687292904811685470148019803019334138 0.928434883663573517336391139377874264 0.0126011051748568310741706976191820618 0.827201315069764993189794742650394961 0.928434883663573517336391139377874264 0.00974069618073042567429127112975603348 0.928434883663573517336391139377874264 0.928434883663573517336391139377874264 0.00642531893711171461899973526293872352 0.986283808696812338841597266704052802 0.928434883663573517336391139377874264 0.00281510876227630705017903634479856472 -0.986283808696812338841597266704052802 0.986283808696812338841597266704052802 0.00123337649399349267740316546553236235 -0.928434883663573517336391139377874264 0.986283808696812338841597266704052802 0.00281510876227630705017903634479856472 -0.827201315069764993189794742650394961 0.986283808696812338841597266704052802 0.0042676666228450005972498745041730437 -0.687292904811685470148019803019334138 0.986283808696812338841597266704052802 0.00552089039303793508881110225612105873 -0.515248636358154091965290718551188662 0.986283808696812338841597266704052802 0.0065160083902432469594362580509921158 -0.319112368927889760435671824168475467 0.986283808696812338841597266704052802 0.00720645930679646474246689825581926096 -0.108054948707343662066244650219834748 0.986283808696812338841597266704052802 0.00755995036255941591628654126075537436 0.108054948707343662066244650219834748 0.986283808696812338841597266704052802 0.00755995036255941591628654126075537436 0.319112368927889760435671824168475467 0.986283808696812338841597266704052802 0.00720645930679646474246689825581926096 0.515248636358154091965290718551188662 0.986283808696812338841597266704052802 0.0065160083902432469594362580509921158 0.687292904811685470148019803019334138 0.986283808696812338841597266704052802 0.00552089039303793508881110225612105873 0.827201315069764993189794742650394961 0.986283808696812338841597266704052802 0.0042676666228450005972498745041730437 0.928434883663573517336391139377874264 0.986283808696812338841597266704052802 0.00281510876227630705017903634479856472 0.986283808696812338841597266704052802 0.986283808696812338841597266704052802 0.00123337649399349267740316546553236235 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n25-d9-spu.txt000066400000000000000000000044471277740313300236230ustar00rootroot00000000000000-0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0561343488624286359546511580262519795 -0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.1134 0.0 -0.906179845938663992797626878299392965 0.134785072387520903119225765387330766 0.538469310105683091036314420700208805 -0.906179845938663992797626878299392965 0.1134 0.906179845938663992797626878299392965 -0.906179845938663992797626878299392965 0.0561343488624286359546511580262519795 -0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.1134 -0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.229085404223991117131768595060167774 0.0 -0.538469310105683091036314420700208805 0.272286532550750701819045839550940839 0.538469310105683091036314420700208805 -0.538469310105683091036314420700208805 0.229085404223991117131768595060167774 0.906179845938663992797626878299392965 -0.538469310105683091036314420700208805 0.1134 -0.906179845938663992797626878299392965 0.0 0.134785072387520903119225765387330766 -0.538469310105683091036314420700208805 0.0 0.272286532550750701819045839550940839 0.0 0.0 0.323634567901234567901234567901234568 0.538469310105683091036314420700208805 0.0 0.272286532550750701819045839550940839 0.906179845938663992797626878299392965 0.0 0.134785072387520903119225765387330766 -0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.1134 -0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.229085404223991117131768595060167774 0.0 0.538469310105683091036314420700208805 0.272286532550750701819045839550940839 0.538469310105683091036314420700208805 0.538469310105683091036314420700208805 0.229085404223991117131768595060167774 0.906179845938663992797626878299392965 0.538469310105683091036314420700208805 0.1134 -0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0561343488624286359546511580262519795 -0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.1134 0.0 0.906179845938663992797626878299392965 0.134785072387520903119225765387330766 0.538469310105683091036314420700208805 0.906179845938663992797626878299392965 0.1134 0.906179845938663992797626878299392965 0.906179845938663992797626878299392965 0.0561343488624286359546511580262519795 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n36-d11-spu.txt000066400000000000000000000102541277740313300236670ustar00rootroot00000000000000-0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0293520816889803976347570627325837077 -0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0618072933723833286174317983609016249 -0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0801651173178066187881072810792475609 0.238619186083196908630501721680711935 -0.932469514203152027812301554493994609 0.0801651173178066187881072810792475609 0.661209386466264513661399595019905347 -0.932469514203152027812301554493994609 0.0618072933723833286174317983609016249 0.932469514203152027812301554493994609 -0.932469514203152027812301554493994609 0.0293520816889803976347570627325837077 -0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0618072933723833286174317983609016249 -0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.130148912588167448580163017139185895 -0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.168805367087587830372238698337628592 0.238619186083196908630501721680711935 -0.661209386466264513661399595019905347 0.168805367087587830372238698337628592 0.661209386466264513661399595019905347 -0.661209386466264513661399595019905347 0.130148912588167448580163017139185895 0.932469514203152027812301554493994609 -0.661209386466264513661399595019905347 0.0618072933723833286174317983609016249 -0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0801651173178066187881072810792475609 -0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.168805367087587830372238698337628592 -0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.218943450167296598229524364572674842 0.238619186083196908630501721680711935 -0.238619186083196908630501721680711935 0.218943450167296598229524364572674842 0.661209386466264513661399595019905347 -0.238619186083196908630501721680711935 0.168805367087587830372238698337628592 0.932469514203152027812301554493994609 -0.238619186083196908630501721680711935 0.0801651173178066187881072810792475609 -0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0801651173178066187881072810792475609 -0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.168805367087587830372238698337628592 -0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.218943450167296598229524364572674842 0.238619186083196908630501721680711935 0.238619186083196908630501721680711935 0.218943450167296598229524364572674842 0.661209386466264513661399595019905347 0.238619186083196908630501721680711935 0.168805367087587830372238698337628592 0.932469514203152027812301554493994609 0.238619186083196908630501721680711935 0.0801651173178066187881072810792475609 -0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0618072933723833286174317983609016249 -0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.130148912588167448580163017139185895 -0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.168805367087587830372238698337628592 0.238619186083196908630501721680711935 0.661209386466264513661399595019905347 0.168805367087587830372238698337628592 0.661209386466264513661399595019905347 0.661209386466264513661399595019905347 0.130148912588167448580163017139185895 0.932469514203152027812301554493994609 0.661209386466264513661399595019905347 0.0618072933723833286174317983609016249 -0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0293520816889803976347570627325837077 -0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0618072933723833286174317983609016249 -0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0801651173178066187881072810792475609 0.238619186083196908630501721680711935 0.932469514203152027812301554493994609 0.0801651173178066187881072810792475609 0.661209386466264513661399595019905347 0.932469514203152027812301554493994609 0.0618072933723833286174317983609016249 0.932469514203152027812301554493994609 0.932469514203152027812301554493994609 0.0293520816889803976347570627325837077 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n4-d3-spu.txt000066400000000000000000000005141277740313300235210ustar00rootroot00000000000000-0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 1.0 0.577350269189625764509148780501957456 -0.577350269189625764509148780501957456 1.0 -0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 1.0 0.577350269189625764509148780501957456 0.577350269189625764509148780501957456 1.0 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n49-d13-spu.txt000066400000000000000000000123011277740313300236700ustar00rootroot00000000000000-0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0167663564637533290116680736246348363 -0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0362176431542394423747452861524643612 -0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0494412511719131329231560102359869052 0.0 -0.949107912342758524526189684047851262 0.0541194307579275779220841253319918313 0.405845151377397166906606412076961463 -0.949107912342758524526189684047851262 0.0494412511719131329231560102359869052 0.741531185599394439863864773280788407 -0.949107912342758524526189684047851262 0.0362176431542394423747452861524643612 0.949107912342758524526189684047851262 -0.949107912342758524526189684047851262 0.0167663564637533290116680736246348363 -0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0362176431542394423747452861524643612 -0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0782351060281695246445060427127369727 -0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.106799923758904576814644402163078189 0.0 -0.741531185599394439863864773280788407 0.116905437095926248135144080791000119 0.405845151377397166906606412076961463 -0.741531185599394439863864773280788407 0.106799923758904576814644402163078189 0.741531185599394439863864773280788407 -0.741531185599394439863864773280788407 0.0782351060281695246445060427127369727 0.949107912342758524526189684047851262 -0.741531185599394439863864773280788407 0.0362176431542394423747452861524643612 -0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0494412511719131329231560102359869052 -0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.106799923758904576814644402163078189 -0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.145794187468741684267839026334662991 0.0 -0.405845151377397166906606412076961463 0.159589376211119101889460673510494097 0.405845151377397166906606412076961463 -0.405845151377397166906606412076961463 0.145794187468741684267839026334662991 0.741531185599394439863864773280788407 -0.405845151377397166906606412076961463 0.106799923758904576814644402163078189 0.949107912342758524526189684047851262 -0.405845151377397166906606412076961463 0.0494412511719131329231560102359869052 -0.949107912342758524526189684047851262 0.0 0.0541194307579275779220841253319918313 -0.741531185599394439863864773280788407 0.0 0.116905437095926248135144080791000119 -0.405845151377397166906606412076961463 0.0 0.159589376211119101889460673510494097 0.0 0.0 0.174689879216992919616826322365680966 0.405845151377397166906606412076961463 0.0 0.159589376211119101889460673510494097 0.741531185599394439863864773280788407 0.0 0.116905437095926248135144080791000119 0.949107912342758524526189684047851262 0.0 0.0541194307579275779220841253319918313 -0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0494412511719131329231560102359869052 -0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.106799923758904576814644402163078189 -0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.145794187468741684267839026334662991 0.0 0.405845151377397166906606412076961463 0.159589376211119101889460673510494097 0.405845151377397166906606412076961463 0.405845151377397166906606412076961463 0.145794187468741684267839026334662991 0.741531185599394439863864773280788407 0.405845151377397166906606412076961463 0.106799923758904576814644402163078189 0.949107912342758524526189684047851262 0.405845151377397166906606412076961463 0.0494412511719131329231560102359869052 -0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0362176431542394423747452861524643612 -0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0782351060281695246445060427127369727 -0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.106799923758904576814644402163078189 0.0 0.741531185599394439863864773280788407 0.116905437095926248135144080791000119 0.405845151377397166906606412076961463 0.741531185599394439863864773280788407 0.106799923758904576814644402163078189 0.741531185599394439863864773280788407 0.741531185599394439863864773280788407 0.0782351060281695246445060427127369727 0.949107912342758524526189684047851262 0.741531185599394439863864773280788407 0.0362176431542394423747452861524643612 -0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0167663564637533290116680736246348363 -0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0362176431542394423747452861524643612 -0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0494412511719131329231560102359869052 0.0 0.949107912342758524526189684047851262 0.0541194307579275779220841253319918313 0.405845151377397166906606412076961463 0.949107912342758524526189684047851262 0.0494412511719131329231560102359869052 0.741531185599394439863864773280788407 0.949107912342758524526189684047851262 0.0362176431542394423747452861524643612 0.949107912342758524526189684047851262 0.949107912342758524526189684047851262 0.0167663564637533290116680736246348363 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n64-d15-spu.txt000066400000000000000000000166241277740313300237030ustar00rootroot00000000000000-0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.0102472165594920232906530712612075746 -0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.0225113066164548308040213494193918823 -0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.0317560645867819271715420318030853411 -0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.0367139485276474778863149018262773922 0.183434642495649804939476142360183981 -0.96028985649753623168356086856947299 0.0367139485276474778863149018262773922 0.525532409916328985817739049189246349 -0.96028985649753623168356086856947299 0.0317560645867819271715420318030853411 0.796666477413626739591553936475830437 -0.96028985649753623168356086856947299 0.0225113066164548308040213494193918823 0.96028985649753623168356086856947299 -0.96028985649753623168356086856947299 0.0102472165594920232906530712612075746 -0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.0225113066164548308040213494193918823 -0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0494533244845529233032612683505864905 -0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0697624084252229971748040687222615135 -0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0806539949271437192622693079340009982 0.183434642495649804939476142360183981 -0.796666477413626739591553936475830437 0.0806539949271437192622693079340009982 0.525532409916328985817739049189246349 -0.796666477413626739591553936475830437 0.0697624084252229971748040687222615135 0.796666477413626739591553936475830437 -0.796666477413626739591553936475830437 0.0494533244845529233032612683505864905 0.96028985649753623168356086856947299 -0.796666477413626739591553936475830437 0.0225113066164548308040213494193918823 -0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.0317560645867819271715420318030853411 -0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0697624084252229971748040687222615135 -0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0984118596679541769685722963136638762 -0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.113776313197928186023043805147590582 0.183434642495649804939476142360183981 -0.525532409916328985817739049189246349 0.113776313197928186023043805147590582 0.525532409916328985817739049189246349 -0.525532409916328985817739049189246349 0.0984118596679541769685722963136638762 0.796666477413626739591553936475830437 -0.525532409916328985817739049189246349 0.0697624084252229971748040687222615135 0.96028985649753623168356086856947299 -0.525532409916328985817739049189246349 0.0317560645867819271715420318030853411 -0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.0367139485276474778863149018262773922 -0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0806539949271437192622693079340009982 -0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.113776313197928186023043805147590582 -0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.131539526725642599793522434369326639 0.183434642495649804939476142360183981 -0.183434642495649804939476142360183981 0.131539526725642599793522434369326639 0.525532409916328985817739049189246349 -0.183434642495649804939476142360183981 0.113776313197928186023043805147590582 0.796666477413626739591553936475830437 -0.183434642495649804939476142360183981 0.0806539949271437192622693079340009982 0.96028985649753623168356086856947299 -0.183434642495649804939476142360183981 0.0367139485276474778863149018262773922 -0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.0367139485276474778863149018262773922 -0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0806539949271437192622693079340009982 -0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.113776313197928186023043805147590582 -0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.131539526725642599793522434369326639 0.183434642495649804939476142360183981 0.183434642495649804939476142360183981 0.131539526725642599793522434369326639 0.525532409916328985817739049189246349 0.183434642495649804939476142360183981 0.113776313197928186023043805147590582 0.796666477413626739591553936475830437 0.183434642495649804939476142360183981 0.0806539949271437192622693079340009982 0.96028985649753623168356086856947299 0.183434642495649804939476142360183981 0.0367139485276474778863149018262773922 -0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.0317560645867819271715420318030853411 -0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0697624084252229971748040687222615135 -0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0984118596679541769685722963136638762 -0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.113776313197928186023043805147590582 0.183434642495649804939476142360183981 0.525532409916328985817739049189246349 0.113776313197928186023043805147590582 0.525532409916328985817739049189246349 0.525532409916328985817739049189246349 0.0984118596679541769685722963136638762 0.796666477413626739591553936475830437 0.525532409916328985817739049189246349 0.0697624084252229971748040687222615135 0.96028985649753623168356086856947299 0.525532409916328985817739049189246349 0.0317560645867819271715420318030853411 -0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.0225113066164548308040213494193918823 -0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0494533244845529233032612683505864905 -0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0697624084252229971748040687222615135 -0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0806539949271437192622693079340009982 0.183434642495649804939476142360183981 0.796666477413626739591553936475830437 0.0806539949271437192622693079340009982 0.525532409916328985817739049189246349 0.796666477413626739591553936475830437 0.0697624084252229971748040687222615135 0.796666477413626739591553936475830437 0.796666477413626739591553936475830437 0.0494533244845529233032612683505864905 0.96028985649753623168356086856947299 0.796666477413626739591553936475830437 0.0225113066164548308040213494193918823 -0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.0102472165594920232906530712612075746 -0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.0225113066164548308040213494193918823 -0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.0317560645867819271715420318030853411 -0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.0367139485276474778863149018262773922 0.183434642495649804939476142360183981 0.96028985649753623168356086856947299 0.0367139485276474778863149018262773922 0.525532409916328985817739049189246349 0.96028985649753623168356086856947299 0.0317560645867819271715420318030853411 0.796666477413626739591553936475830437 0.96028985649753623168356086856947299 0.0225113066164548308040213494193918823 0.96028985649753623168356086856947299 0.96028985649753623168356086856947299 0.0102472165594920232906530712612075746 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n81-d17-spu.txt000066400000000000000000000213731277740313300237010ustar00rootroot00000000000000-0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00660552620354802222968687209768368333 -0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.0146820687691179427391679779122372883 -0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.0211809749506325404089295882540108775 -0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.0253858176429517930567181394134064199 0.0 -0.96816023950762608983557620290367287 0.0268400015906482270747791608663707633 0.324253423403808929038538014643336609 -0.96816023950762608983557620290367287 0.0253858176429517930567181394134064199 0.613371432700590397308702039341474185 -0.96816023950762608983557620290367287 0.0211809749506325404089295882540108775 0.836031107326635794299429788069734877 -0.96816023950762608983557620290367287 0.0146820687691179427391679779122372883 0.96816023950762608983557620290367287 -0.96816023950762608983557620290367287 0.00660552620354802222968687209768368333 -0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.0146820687691179427391679779122372883 -0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0326337579624350234939058216858680878 -0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.0470788429625961818390445429822474921 -0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0564249249656914385704403023195628793 0.0 -0.836031107326635794299429788069734877 0.0596571320700336348318267726859941239 0.324253423403808929038538014643336609 -0.836031107326635794299429788069734877 0.0564249249656914385704403023195628793 0.613371432700590397308702039341474185 -0.836031107326635794299429788069734877 0.0470788429625961818390445429822474921 0.836031107326635794299429788069734877 -0.836031107326635794299429788069734877 0.0326337579624350234939058216858680878 0.96816023950762608983557620290367287 -0.836031107326635794299429788069734877 0.0146820687691179427391679779122372883 -0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.0211809749506325404089295882540108775 -0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.0470788429625961818390445429822474921 -0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0679179350796229987182956928824730995 -0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.081400989266816473883283998461353831 0.0 -0.613371432700590397308702039341474185 0.0860639082865345349383780936770950992 0.324253423403808929038538014643336609 -0.613371432700590397308702039341474185 0.081400989266816473883283998461353831 0.613371432700590397308702039341474185 -0.613371432700590397308702039341474185 0.0679179350796229987182956928824730995 0.836031107326635794299429788069734877 -0.613371432700590397308702039341474185 0.0470788429625961818390445429822474921 0.96816023950762608983557620290367287 -0.613371432700590397308702039341474185 0.0211809749506325404089295882540108775 -0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.0253858176429517930567181394134064199 -0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0564249249656914385704403023195628793 -0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.081400989266816473883283998461353831 -0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0975606965354334693358706009935014876 0.0 -0.324253423403808929038538014643336609 0.103149297258219330444634730793238096 0.324253423403808929038538014643336609 -0.324253423403808929038538014643336609 0.0975606965354334693358706009935014876 0.613371432700590397308702039341474185 -0.324253423403808929038538014643336609 0.081400989266816473883283998461353831 0.836031107326635794299429788069734877 -0.324253423403808929038538014643336609 0.0564249249656914385704403023195628793 0.96816023950762608983557620290367287 -0.324253423403808929038538014643336609 0.0253858176429517930567181394134064199 -0.96816023950762608983557620290367287 0.0 0.0268400015906482270747791608663707633 -0.836031107326635794299429788069734877 0.0 0.0596571320700336348318267726859941239 -0.613371432700590397308702039341474185 0.0 0.0860639082865345349383780936770950992 -0.324253423403808929038538014643336609 0.0 0.103149297258219330444634730793238096 0.0 0.0 0.109058031591648071749812622528551934 0.324253423403808929038538014643336609 0.0 0.103149297258219330444634730793238096 0.613371432700590397308702039341474185 0.0 0.0860639082865345349383780936770950992 0.836031107326635794299429788069734877 0.0 0.0596571320700336348318267726859941239 0.96816023950762608983557620290367287 0.0 0.0268400015906482270747791608663707633 -0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.0253858176429517930567181394134064199 -0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0564249249656914385704403023195628793 -0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.081400989266816473883283998461353831 -0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0975606965354334693358706009935014876 0.0 0.324253423403808929038538014643336609 0.103149297258219330444634730793238096 0.324253423403808929038538014643336609 0.324253423403808929038538014643336609 0.0975606965354334693358706009935014876 0.613371432700590397308702039341474185 0.324253423403808929038538014643336609 0.081400989266816473883283998461353831 0.836031107326635794299429788069734877 0.324253423403808929038538014643336609 0.0564249249656914385704403023195628793 0.96816023950762608983557620290367287 0.324253423403808929038538014643336609 0.0253858176429517930567181394134064199 -0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.0211809749506325404089295882540108775 -0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.0470788429625961818390445429822474921 -0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0679179350796229987182956928824730995 -0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.081400989266816473883283998461353831 0.0 0.613371432700590397308702039341474185 0.0860639082865345349383780936770950992 0.324253423403808929038538014643336609 0.613371432700590397308702039341474185 0.081400989266816473883283998461353831 0.613371432700590397308702039341474185 0.613371432700590397308702039341474185 0.0679179350796229987182956928824730995 0.836031107326635794299429788069734877 0.613371432700590397308702039341474185 0.0470788429625961818390445429822474921 0.96816023950762608983557620290367287 0.613371432700590397308702039341474185 0.0211809749506325404089295882540108775 -0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.0146820687691179427391679779122372883 -0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0326337579624350234939058216858680878 -0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.0470788429625961818390445429822474921 -0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0564249249656914385704403023195628793 0.0 0.836031107326635794299429788069734877 0.0596571320700336348318267726859941239 0.324253423403808929038538014643336609 0.836031107326635794299429788069734877 0.0564249249656914385704403023195628793 0.613371432700590397308702039341474185 0.836031107326635794299429788069734877 0.0470788429625961818390445429822474921 0.836031107326635794299429788069734877 0.836031107326635794299429788069734877 0.0326337579624350234939058216858680878 0.96816023950762608983557620290367287 0.836031107326635794299429788069734877 0.0146820687691179427391679779122372883 -0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00660552620354802222968687209768368333 -0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.0146820687691179427391679779122372883 -0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.0211809749506325404089295882540108775 -0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.0253858176429517930567181394134064199 0.0 0.96816023950762608983557620290367287 0.0268400015906482270747791608663707633 0.324253423403808929038538014643336609 0.96816023950762608983557620290367287 0.0253858176429517930567181394134064199 0.613371432700590397308702039341474185 0.96816023950762608983557620290367287 0.0211809749506325404089295882540108775 0.836031107326635794299429788069734877 0.96816023950762608983557620290367287 0.0146820687691179427391679779122372883 0.96816023950762608983557620290367287 0.96816023950762608983557620290367287 0.00660552620354802222968687209768368333 pyfr-1.5.0/pyfr/quadrules/quad/gauss-legendre-n9-d5-spu.txt000066400000000000000000000015151277740313300235320ustar00rootroot00000000000000-0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.308641975308641975308641975308641975 0.0 -0.774596669241483377035853079956479922 0.49382716049382716049382716049382716 0.774596669241483377035853079956479922 -0.774596669241483377035853079956479922 0.308641975308641975308641975308641975 -0.774596669241483377035853079956479922 0.0 0.49382716049382716049382716049382716 0.0 0.0 0.790123456790123456790123456790123457 0.774596669241483377035853079956479922 0.0 0.49382716049382716049382716049382716 -0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.308641975308641975308641975308641975 0.0 0.774596669241483377035853079956479922 0.49382716049382716049382716049382716 0.774596669241483377035853079956479922 0.774596669241483377035853079956479922 0.308641975308641975308641975308641975 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n1-d1-sp.txt000066400000000000000000000000101277740313300240460ustar00rootroot000000000000000 0 4 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n12-d7-sp.txt000066400000000000000000000030001277740313300241400ustar00rootroot00000000000000 0.92582009977255146156656677658399952253 0 0.24197530864197530864197530864197530864 0 0.92582009977255146156656677658399952253 0.24197530864197530864197530864197530864 -0.92582009977255146156656677658399952253 0 0.24197530864197530864197530864197530864 0 -0.92582009977255146156656677658399952253 0.24197530864197530864197530864197530864 0.8059797829185987437078561813507442463 0.8059797829185987437078561813507442463 0.23743177469063023421810525931129352533 0.8059797829185987437078561813507442463 -0.8059797829185987437078561813507442463 0.23743177469063023421810525931129352533 -0.8059797829185987437078561813507442463 0.8059797829185987437078561813507442463 0.23743177469063023421810525931129352533 -0.8059797829185987437078561813507442463 -0.8059797829185987437078561813507442463 0.23743177469063023421810525931129352533 0.3805544332083156563791063590863941355 0.3805544332083156563791063590863941355 0.52059291666739445713991943204673116603 0.3805544332083156563791063590863941355 -0.3805544332083156563791063590863941355 0.52059291666739445713991943204673116603 -0.3805544332083156563791063590863941355 0.3805544332083156563791063590863941355 0.52059291666739445713991943204673116603 -0.3805544332083156563791063590863941355 -0.3805544332083156563791063590863941355 0.52059291666739445713991943204673116603 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n20-d9-sp.txt000066400000000000000000000050001277740313300241430ustar00rootroot00000000000000 0.48892685697436906957409306022929339497 0 0.45416396068674902744178724560528503088 0 0.48892685697436906957409306022929339497 0.45416396068674902744178724560528503088 -0.48892685697436906957409306022929339497 0 0.45416396068674902744178724560528503088 0 -0.48892685697436906957409306022929339497 0.45416396068674902744178724560528503088 0.93965525809683770585757175046316803289 0.93965525809683770585757175046316803289 0.042731231865775762580130721539841651755 0.93965525809683770585757175046316803289 -0.93965525809683770585757175046316803289 0.042731231865775762580130721539841651755 -0.93965525809683770585757175046316803289 0.93965525809683770585757175046316803289 0.042731231865775762580130721539841651755 -0.93965525809683770585757175046316803289 -0.93965525809683770585757175046316803289 0.042731231865775762580130721539841651755 0.69088055048634387281488830813840885584 0.69088055048634387281488830813840885584 0.21420036092686163194242563430597811641 0.69088055048634387281488830813840885584 -0.69088055048634387281488830813840885584 0.21420036092686163194242563430597811641 -0.69088055048634387281488830813840885584 0.69088055048634387281488830813840885584 0.21420036092686163194242563430597811641 -0.69088055048634387281488830813840885584 -0.69088055048634387281488830813840885584 0.21420036092686163194242563430597811641 0.9186204410567222596554701791427794163 0.3448720253644035761712304181246973037 0.14445222326030678901782819927444760048 0.3448720253644035761712304181246973037 0.9186204410567222596554701791427794163 0.14445222326030678901782819927444760048 0.9186204410567222596554701791427794163 -0.3448720253644035761712304181246973037 0.14445222326030678901782819927444760048 -0.3448720253644035761712304181246973037 0.9186204410567222596554701791427794163 0.14445222326030678901782819927444760048 -0.9186204410567222596554701791427794163 0.3448720253644035761712304181246973037 0.14445222326030678901782819927444760048 0.3448720253644035761712304181246973037 -0.9186204410567222596554701791427794163 0.14445222326030678901782819927444760048 -0.9186204410567222596554701791427794163 -0.3448720253644035761712304181246973037 0.14445222326030678901782819927444760048 -0.3448720253644035761712304181246973037 -0.9186204410567222596554701791427794163 0.14445222326030678901782819927444760048 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n28-d11-sp.txt000066400000000000000000000070001277740313300242260ustar00rootroot00000000000000 0.71461782966460591762942382404176367266 0 0.21740043986871200551566672515052291339 0 0.71461782966460591762942382404176367266 0.21740043986871200551566672515052291339 -0.71461782966460591762942382404176367266 0 0.21740043986871200551566672515052291339 0 -0.71461782966460591762942382404176367266 0.21740043986871200551566672515052291339 0.27365721017145961383557026431906649027 0.27365721017145961383557026431906649027 0.27727410298385108795028691796804462632 0.27365721017145961383557026431906649027 -0.27365721017145961383557026431906649027 0.27727410298385108795028691796804462632 -0.27365721017145961383557026431906649027 0.27365721017145961383557026431906649027 0.27727410298385108795028691796804462632 -0.27365721017145961383557026431906649027 -0.27365721017145961383557026431906649027 0.27727410298385108795028691796804462632 0.63660393221230104405852833198974404207 0.63660393221230104405852833198974404207 0.21393363787824810450280500660206134837 0.63660393221230104405852833198974404207 -0.63660393221230104405852833198974404207 0.21393363787824810450280500660206134837 -0.63660393221230104405852833198974404207 0.63660393221230104405852833198974404207 0.21393363787824810450280500660206134837 -0.63660393221230104405852833198974404207 -0.63660393221230104405852833198974404207 0.21393363787824810450280500660206134837 0.95163038878403345881049829363696371918 0.81556543368963841306389865463928759233 0.044074569114983092054304271154112061776 0.81556543368963841306389865463928759233 0.95163038878403345881049829363696371918 0.044074569114983092054304271154112061776 0.95163038878403345881049829363696371918 -0.81556543368963841306389865463928759233 0.044074569114983092054304271154112061776 -0.81556543368963841306389865463928759233 0.95163038878403345881049829363696371918 0.044074569114983092054304271154112061776 -0.95163038878403345881049829363696371918 0.81556543368963841306389865463928759233 0.044074569114983092054304271154112061776 0.81556543368963841306389865463928759233 -0.95163038878403345881049829363696371918 0.044074569114983092054304271154112061776 -0.95163038878403345881049829363696371918 -0.81556543368963841306389865463928759233 0.044074569114983092054304271154112061776 -0.81556543368963841306389865463928759233 -0.95163038878403345881049829363696371918 0.044074569114983092054304271154112061776 0.34620720004764544118747320724330043979 0.93556787148759108135480212161830515337 0.10162134051961130896131640398557349419 0.93556787148759108135480212161830515337 0.34620720004764544118747320724330043979 0.10162134051961130896131640398557349419 0.34620720004764544118747320724330043979 -0.93556787148759108135480212161830515337 0.10162134051961130896131640398557349419 -0.93556787148759108135480212161830515337 0.34620720004764544118747320724330043979 0.10162134051961130896131640398557349419 -0.34620720004764544118747320724330043979 0.93556787148759108135480212161830515337 0.10162134051961130896131640398557349419 0.93556787148759108135480212161830515337 -0.34620720004764544118747320724330043979 0.10162134051961130896131640398557349419 -0.34620720004764544118747320724330043979 -0.93556787148759108135480212161830515337 0.10162134051961130896131640398557349419 -0.93556787148759108135480212161830515337 -0.34620720004764544118747320724330043979 0.10162134051961130896131640398557349419 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n37-d13-sp.txt000066400000000000000000000112001277740313300242250ustar00rootroot00000000000000 0 0 0.29999334435890964324064310267149902525 0.98346133261324557127407851401210794962 0 0.038128625349852737619351565405684462236 0 0.98346133261324557127407851401210794962 0.038128625349852737619351565405684462236 -0.98346133261324557127407851401210794962 0 0.038128625349852737619351565405684462236 0 -0.98346133261324557127407851401210794962 0.038128625349852737619351565405684462236 0.63986141836710976174616715579576307077 0 0.18453546896980721238582475319389847126 0 0.63986141836710976174616715579576307077 0.18453546896980721238582475319389847126 -0.63986141836710976174616715579576307077 0 0.18453546896980721238582475319389847126 0 -0.63986141836710976174616715579576307077 0.18453546896980721238582475319389847126 0.91877848807971140189839438297320428483 0.91877848807971140189839438297320428483 0.039507140647452433689267407341729599229 0.91877848807971140189839438297320428483 -0.91877848807971140189839438297320428483 0.039507140647452433689267407341729599229 -0.91877848807971140189839438297320428483 0.91877848807971140189839438297320428483 0.039507140647452433689267407341729599229 -0.91877848807971140189839438297320428483 -0.91877848807971140189839438297320428483 0.039507140647452433689267407341729599229 0.37962850518674385579275417103548349005 0.37962850518674385579275417103548349005 0.23139851940068538741918311064046319298 0.37962850518674385579275417103548349005 -0.37962850518674385579275417103548349005 0.23139851940068538741918311064046319298 -0.37962850518674385579275417103548349005 0.37962850518674385579275417103548349005 0.23139851940068538741918311064046319298 -0.37962850518674385579275417103548349005 -0.37962850518674385579275417103548349005 0.23139851940068538741918311064046319298 0.69955421651335111029920603284399340644 0.69955421651335111029920603284399340644 0.13724209671300348677866127359579016247 0.69955421651335111029920603284399340644 -0.69955421651335111029920603284399340644 0.13724209671300348677866127359579016247 -0.69955421651335111029920603284399340644 0.69955421651335111029920603284399340644 0.13724209671300348677866127359579016247 -0.69955421651335111029920603284399340644 -0.69955421651335111029920603284399340644 0.13724209671300348677866127359579016247 0.64359737499661812031249815775600267943 0.97506888390598351993655206803811094573 0.033519780050381430279388297868080126418 0.97506888390598351993655206803811094573 0.64359737499661812031249815775600267943 0.033519780050381430279388297868080126418 0.64359737499661812031249815775600267943 -0.97506888390598351993655206803811094573 0.033519780050381430279388297868080126418 -0.97506888390598351993655206803811094573 0.64359737499661812031249815775600267943 0.033519780050381430279388297868080126418 -0.64359737499661812031249815775600267943 0.97506888390598351993655206803811094573 0.033519780050381430279388297868080126418 0.97506888390598351993655206803811094573 -0.64359737499661812031249815775600267943 0.033519780050381430279388297868080126418 -0.64359737499661812031249815775600267943 -0.97506888390598351993655206803811094573 0.033519780050381430279388297868080126418 -0.97506888390598351993655206803811094573 -0.64359737499661812031249815775600267943 0.033519780050381430279388297868080126418 0.33353988116478310285167199804895857823 0.86442760926706191157507267741750728791 0.11357512636435423536938725920919955133 0.86442760926706191157507267741750728791 0.33353988116478310285167199804895857823 0.11357512636435423536938725920919955133 0.33353988116478310285167199804895857823 -0.86442760926706191157507267741750728791 0.11357512636435423536938725920919955133 -0.86442760926706191157507267741750728791 0.33353988116478310285167199804895857823 0.11357512636435423536938725920919955133 -0.33353988116478310285167199804895857823 0.86442760926706191157507267741750728791 0.11357512636435423536938725920919955133 0.86442760926706191157507267741750728791 -0.33353988116478310285167199804895857823 0.11357512636435423536938725920919955133 -0.33353988116478310285167199804895857823 -0.86442760926706191157507267741750728791 0.11357512636435423536938725920919955133 -0.86442760926706191157507267741750728791 -0.33353988116478310285167199804895857823 0.11357512636435423536938725920919955133 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n4-d3-sp.txt000066400000000000000000000010001277740313300240530ustar00rootroot00000000000000 0.57735026918962576450914878050195745565 0.57735026918962576450914878050195745565 1 0.57735026918962576450914878050195745565 -0.57735026918962576450914878050195745565 1 -0.57735026918962576450914878050195745565 0.57735026918962576450914878050195745565 1 -0.57735026918962576450914878050195745565 -0.57735026918962576450914878050195745565 1 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n48-d15-sp.txt000066400000000000000000000142201277740313300242360ustar00rootroot00000000000000 0.79809898789700709024555173503596148462 0 0.11493292726352536781596028932541766228 0 0.79809898789700709024555173503596148462 0.11493292726352536781596028932541766228 -0.79809898789700709024555173503596148462 0 0.11493292726352536781596028932541766228 0 -0.79809898789700709024555173503596148462 0.11493292726352536781596028932541766228 0.30385302639845975610268178690962703058 0 0.18168575896727184957040458577073367484 0 0.30385302639845975610268178690962703058 0.18168575896727184957040458577073367484 -0.30385302639845975610268178690962703058 0 0.18168575896727184957040458577073367484 0 -0.30385302639845975610268178690962703058 0.18168575896727184957040458577073367484 0.88242227010688535992041188667767184542 0.88242227010688535992041188667767184542 0.041238483788765811839027639617216599853 0.88242227010688535992041188667767184542 -0.88242227010688535992041188667767184542 0.041238483788765811839027639617216599853 -0.88242227010688535992041188667767184542 0.88242227010688535992041188667767184542 0.041238483788765811839027639617216599853 -0.88242227010688535992041188667767184542 -0.88242227010688535992041188667767184542 0.041238483788765811839027639617216599853 0.97778979953990269742424689352375866785 0.97778979953990269742424689352375866785 0.0059337464858392213147614197893498681047 0.97778979953990269742424689352375866785 -0.97778979953990269742424689352375866785 0.0059337464858392213147614197893498681047 -0.97778979953990269742424689352375866785 0.97778979953990269742424689352375866785 0.0059337464858392213147614197893498681047 -0.97778979953990269742424689352375866785 -0.97778979953990269742424689352375866785 0.0059337464858392213147614197893498681047 0.80871213581950356724002823901416977471 0.56721357339659070317865169083903012406 0.10114914347743242280761079470300175928 0.56721357339659070317865169083903012406 0.80871213581950356724002823901416977471 0.10114914347743242280761079470300175928 0.80871213581950356724002823901416977471 -0.56721357339659070317865169083903012406 0.10114914347743242280761079470300175928 -0.56721357339659070317865169083903012406 0.80871213581950356724002823901416977471 0.10114914347743242280761079470300175928 -0.80871213581950356724002823901416977471 0.56721357339659070317865169083903012406 0.10114914347743242280761079470300175928 0.56721357339659070317865169083903012406 -0.80871213581950356724002823901416977471 0.10114914347743242280761079470300175928 -0.80871213581950356724002823901416977471 -0.56721357339659070317865169083903012406 0.10114914347743242280761079470300175928 -0.56721357339659070317865169083903012406 -0.80871213581950356724002823901416977471 0.10114914347743242280761079470300175928 0.30465479903705254117098598695333881061 0.57873619403580651026013939264701051891 0.14783672163288121847905618360636339726 0.57873619403580651026013939264701051891 0.30465479903705254117098598695333881061 0.14783672163288121847905618360636339726 0.30465479903705254117098598695333881061 -0.57873619403580651026013939264701051891 0.14783672163288121847905618360636339726 -0.57873619403580651026013939264701051891 0.30465479903705254117098598695333881061 0.14783672163288121847905618360636339726 -0.30465479903705254117098598695333881061 0.57873619403580651026013939264701051891 0.14783672163288121847905618360636339726 0.57873619403580651026013939264701051891 -0.30465479903705254117098598695333881061 0.14783672163288121847905618360636339726 -0.30465479903705254117098598695333881061 -0.57873619403580651026013939264701051891 0.14783672163288121847905618360636339726 -0.57873619403580651026013939264701051891 -0.30465479903705254117098598695333881061 0.14783672163288121847905618360636339726 0.9805048437245319615400269877302555585 0.6974636319909670187938904551822360596 0.023273194144673214602574891933463059923 0.6974636319909670187938904551822360596 0.9805048437245319615400269877302555585 0.023273194144673214602574891933463059923 0.9805048437245319615400269877302555585 -0.6974636319909670187938904551822360596 0.023273194144673214602574891933463059923 -0.6974636319909670187938904551822360596 0.9805048437245319615400269877302555585 0.023273194144673214602574891933463059923 -0.9805048437245319615400269877302555585 0.6974636319909670187938904551822360596 0.023273194144673214602574891933463059923 0.6974636319909670187938904551822360596 -0.9805048437245319615400269877302555585 0.023273194144673214602574891933463059923 -0.9805048437245319615400269877302555585 -0.6974636319909670187938904551822360596 0.023273194144673214602574891933463059923 -0.6974636319909670187938904551822360596 -0.9805048437245319615400269877302555585 0.023273194144673214602574891933463059923 0.26484415587231617710014274826830856062 0.95574251980951170852387507604700262081 0.055845482492312018840681162505812880996 0.95574251980951170852387507604700262081 0.26484415587231617710014274826830856062 0.055845482492312018840681162505812880996 0.26484415587231617710014274826830856062 -0.95574251980951170852387507604700262081 0.055845482492312018840681162505812880996 -0.95574251980951170852387507604700262081 0.26484415587231617710014274826830856062 0.055845482492312018840681162505812880996 -0.26484415587231617710014274826830856062 0.95574251980951170852387507604700262081 0.055845482492312018840681162505812880996 0.95574251980951170852387507604700262081 -0.26484415587231617710014274826830856062 0.055845482492312018840681162505812880996 -0.26484415587231617710014274826830856062 -0.95574251980951170852387507604700262081 0.055845482492312018840681162505812880996 -0.95574251980951170852387507604700262081 -0.26484415587231617710014274826830856062 0.055845482492312018840681162505812880996 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n60-d17-sp.txt000066400000000000000000000172641277740313300242450ustar00rootroot00000000000000 0.54504298720914838787010174782667747048 0 0.13880437768721992480048871346267772478 0 0.54504298720914838787010174782667747048 0.13880437768721992480048871346267772478 -0.54504298720914838787010174782667747048 0 0.13880437768721992480048871346267772478 0 -0.54504298720914838787010174782667747048 0.13880437768721992480048871346267772478 0.91749718821915320817120277758673277115 0 0.065347823807464912859066688973533173055 0 0.91749718821915320817120277758673277115 0.065347823807464912859066688973533173055 -0.91749718821915320817120277758673277115 0 0.065347823807464912859066688973533173055 0 -0.91749718821915320817120277758673277115 0.065347823807464912859066688973533173055 0.19255424261404688054827243228978233862 0.19255424261404688054827243228978233862 0.14285641962219959571166270516073482911 0.19255424261404688054827243228978233862 -0.19255424261404688054827243228978233862 0.14285641962219959571166270516073482911 -0.19255424261404688054827243228978233862 0.19255424261404688054827243228978233862 0.14285641962219959571166270516073482911 -0.19255424261404688054827243228978233862 -0.19255424261404688054827243228978233862 0.14285641962219959571166270516073482911 0.87132868469544327271341598059215273696 0.87132868469544327271341598059215273696 0.036715908485251512466108823252963750875 0.87132868469544327271341598059215273696 -0.87132868469544327271341598059215273696 0.036715908485251512466108823252963750875 -0.87132868469544327271341598059215273696 0.87132868469544327271341598059215273696 0.036715908485251512466108823252963750875 -0.87132868469544327271341598059215273696 -0.87132868469544327271341598059215273696 0.036715908485251512466108823252963750875 0.6943880900895507516564691872484594143 0.6943880900895507516564691872484594143 0.086255699638143804540935141271187587589 0.6943880900895507516564691872484594143 -0.6943880900895507516564691872484594143 0.086255699638143804540935141271187587589 -0.6943880900895507516564691872484594143 0.6943880900895507516564691872484594143 0.086255699638143804540935141271187587589 -0.6943880900895507516564691872484594143 -0.6943880900895507516564691872484594143 0.086255699638143804540935141271187587589 0.45768299288315551760664997201644894176 0.45768299288315551760664997201644894176 0.13455627321191692494394965878086112148 0.45768299288315551760664997201644894176 -0.45768299288315551760664997201644894176 0.13455627321191692494394965878086112148 -0.45768299288315551760664997201644894176 0.45768299288315551760664997201644894176 0.13455627321191692494394965878086112148 -0.45768299288315551760664997201644894176 -0.45768299288315551760664997201644894176 0.13455627321191692494394965878086112148 0.96920425609150873396809064886215595774 0.96920425609150873396809064886215595774 0.0076556334149099368494439596667976876552 0.96920425609150873396809064886215595774 -0.96920425609150873396809064886215595774 0.0076556334149099368494439596667976876552 -0.96920425609150873396809064886215595774 0.96920425609150873396809064886215595774 0.0076556334149099368494439596667976876552 -0.96920425609150873396809064886215595774 -0.96920425609150873396809064886215595774 0.0076556334149099368494439596667976876552 0.76208827608019827579179765943659247047 0.27947776671519215001028373596083402351 0.10317672478493534779017919278157584697 0.27947776671519215001028373596083402351 0.76208827608019827579179765943659247047 0.10317672478493534779017919278157584697 0.76208827608019827579179765943659247047 -0.27947776671519215001028373596083402351 0.10317672478493534779017919278157584697 -0.27947776671519215001028373596083402351 0.76208827608019827579179765943659247047 0.10317672478493534779017919278157584697 -0.76208827608019827579179765943659247047 0.27947776671519215001028373596083402351 0.10317672478493534779017919278157584697 0.27947776671519215001028373596083402351 -0.76208827608019827579179765943659247047 0.10317672478493534779017919278157584697 -0.76208827608019827579179765943659247047 -0.27947776671519215001028373596083402351 0.10317672478493534779017919278157584697 -0.27947776671519215001028373596083402351 -0.76208827608019827579179765943659247047 0.10317672478493534779017919278157584697 0.9073943521982236707040505947884667131 0.54689867041431010640112807851437665884 0.054826400237291440916675995759834604896 0.54689867041431010640112807851437665884 0.9073943521982236707040505947884667131 0.054826400237291440916675995759834604896 0.9073943521982236707040505947884667131 -0.54689867041431010640112807851437665884 0.054826400237291440916675995759834604896 -0.54689867041431010640112807851437665884 0.9073943521982236707040505947884667131 0.054826400237291440916675995759834604896 -0.9073943521982236707040505947884667131 0.54689867041431010640112807851437665884 0.054826400237291440916675995759834604896 0.54689867041431010640112807851437665884 -0.9073943521982236707040505947884667131 0.054826400237291440916675995759834604896 -0.9073943521982236707040505947884667131 -0.54689867041431010640112807851437665884 0.054826400237291440916675995759834604896 -0.54689867041431010640112807851437665884 -0.9073943521982236707040505947884667131 0.054826400237291440916675995759834604896 0.76124866643908275965614948240512547767 0.98378797150154955261318330664974572171 0.015119810388256861898635715383645346634 0.98378797150154955261318330664974572171 0.76124866643908275965614948240512547767 0.015119810388256861898635715383645346634 0.76124866643908275965614948240512547767 -0.98378797150154955261318330664974572171 0.015119810388256861898635715383645346634 -0.98378797150154955261318330664974572171 0.76124866643908275965614948240512547767 0.015119810388256861898635715383645346634 -0.76124866643908275965614948240512547767 0.98378797150154955261318330664974572171 0.015119810388256861898635715383645346634 0.98378797150154955261318330664974572171 -0.76124866643908275965614948240512547767 0.015119810388256861898635715383645346634 -0.76124866643908275965614948240512547767 -0.98378797150154955261318330664974572171 0.015119810388256861898635715383645346634 -0.98378797150154955261318330664974572171 -0.76124866643908275965614948240512547767 0.015119810388256861898635715383645346634 0.9870947070447678254568263327892903071 0.30280748178886139816768835788736238796 0.020780996655963043308681250790566264232 0.30280748178886139816768835788736238796 0.9870947070447678254568263327892903071 0.020780996655963043308681250790566264232 0.9870947070447678254568263327892903071 -0.30280748178886139816768835788736238796 0.020780996655963043308681250790566264232 -0.30280748178886139816768835788736238796 0.9870947070447678254568263327892903071 0.020780996655963043308681250790566264232 -0.9870947070447678254568263327892903071 0.30280748178886139816768835788736238796 0.020780996655963043308681250790566264232 0.30280748178886139816768835788736238796 -0.9870947070447678254568263327892903071 0.020780996655963043308681250790566264232 -0.9870947070447678254568263327892903071 -0.30280748178886139816768835788736238796 0.020780996655963043308681250790566264232 -0.30280748178886139816768835788736238796 -0.9870947070447678254568263327892903071 0.020780996655963043308681250790566264232 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n72-d19-sp.txt000066400000000000000000000223301277740313300242400ustar00rootroot00000000000000 0.71434425957279423719800751930789820023 0 0.097737364692828748243518350785527543045 0 0.71434425957279423719800751930789820023 0.097737364692828748243518350785527543045 -0.71434425957279423719800751930789820023 0 0.097737364692828748243518350785527543045 0 -0.71434425957279423719800751930789820023 0.097737364692828748243518350785527543045 0.26567205212096375634521276949089468244 0 0.13930761292248224570420924010933858068 0 0.26567205212096375634521276949089468244 0.13930761292248224570420924010933858068 -0.26567205212096375634521276949089468244 0 0.13930761292248224570420924010933858068 0 -0.26567205212096375634521276949089468244 0.13930761292248224570420924010933858068 0.9644342692579672514758983345396097952 0 0.034869583491887910002162414690733291135 0 0.9644342692579672514758983345396097952 0.034869583491887910002162414690733291135 -0.9644342692579672514758983345396097952 0 0.034869583491887910002162414690733291135 0 -0.9644342692579672514758983345396097952 0.034869583491887910002162414690733291135 0.80337972946768500184569945317555062404 0.80337972946768500184569945317555062404 0.047804547162795794795004833111469267529 0.80337972946768500184569945317555062404 -0.80337972946768500184569945317555062404 0.047804547162795794795004833111469267529 -0.80337972946768500184569945317555062404 0.80337972946768500184569945317555062404 0.047804547162795794795004833111469267529 -0.80337972946768500184569945317555062404 -0.80337972946768500184569945317555062404 0.047804547162795794795004833111469267529 0.99216540589713472189744527407633022081 0.99216540589713472189744527407633022081 0.0016177151779117608109927450603284034943 0.99216540589713472189744527407633022081 -0.99216540589713472189744527407633022081 0.0016177151779117608109927450603284034943 -0.99216540589713472189744527407633022081 0.99216540589713472189744527407633022081 0.0016177151779117608109927450603284034943 -0.99216540589713472189744527407633022081 -0.99216540589713472189744527407633022081 0.0016177151779117608109927450603284034943 0.92944960279960938592453972561789815525 0.92944960279960938592453972561789815525 0.017441048034355762464098424359798214084 0.92944960279960938592453972561789815525 -0.92944960279960938592453972561789815525 0.017441048034355762464098424359798214084 -0.92944960279960938592453972561789815525 0.92944960279960938592453972561789815525 0.017441048034355762464098424359798214084 -0.92944960279960938592453972561789815525 -0.92944960279960938592453972561789815525 0.017441048034355762464098424359798214084 0.51027825736934335058280520856084337461 0.26664031459456217566653623598727229551 0.11772583284005608002278985852480623731 0.26664031459456217566653623598727229551 0.51027825736934335058280520856084337461 0.11772583284005608002278985852480623731 0.51027825736934335058280520856084337461 -0.26664031459456217566653623598727229551 0.11772583284005608002278985852480623731 -0.26664031459456217566653623598727229551 0.51027825736934335058280520856084337461 0.11772583284005608002278985852480623731 -0.51027825736934335058280520856084337461 0.26664031459456217566653623598727229551 0.11772583284005608002278985852480623731 0.26664031459456217566653623598727229551 -0.51027825736934335058280520856084337461 0.11772583284005608002278985852480623731 -0.51027825736934335058280520856084337461 -0.26664031459456217566653623598727229551 0.11772583284005608002278985852480623731 -0.26664031459456217566653623598727229551 -0.51027825736934335058280520856084337461 0.11772583284005608002278985852480623731 0.39073420577524975124346417118562879486 0.98789293314173530957079377090965768822 0.016179577611657849789658841248953982496 0.98789293314173530957079377090965768822 0.39073420577524975124346417118562879486 0.016179577611657849789658841248953982496 0.39073420577524975124346417118562879486 -0.98789293314173530957079377090965768822 0.016179577611657849789658841248953982496 -0.98789293314173530957079377090965768822 0.39073420577524975124346417118562879486 0.016179577611657849789658841248953982496 -0.39073420577524975124346417118562879486 0.98789293314173530957079377090965768822 0.016179577611657849789658841248953982496 0.98789293314173530957079377090965768822 -0.39073420577524975124346417118562879486 0.016179577611657849789658841248953982496 -0.39073420577524975124346417118562879486 -0.98789293314173530957079377090965768822 0.016179577611657849789658841248953982496 -0.98789293314173530957079377090965768822 -0.39073420577524975124346417118562879486 0.016179577611657849789658841248953982496 0.71716792130974519606308556126612093997 0.51249187721609765575479280145710018395 0.082846618983404893940813472711113790502 0.51249187721609765575479280145710018395 0.71716792130974519606308556126612093997 0.082846618983404893940813472711113790502 0.71716792130974519606308556126612093997 -0.51249187721609765575479280145710018395 0.082846618983404893940813472711113790502 -0.51249187721609765575479280145710018395 0.71716792130974519606308556126612093997 0.082846618983404893940813472711113790502 -0.71716792130974519606308556126612093997 0.51249187721609765575479280145710018395 0.082846618983404893940813472711113790502 0.51249187721609765575479280145710018395 -0.71716792130974519606308556126612093997 0.082846618983404893940813472711113790502 -0.71716792130974519606308556126612093997 -0.51249187721609765575479280145710018395 0.082846618983404893940813472711113790502 -0.51249187721609765575479280145710018395 -0.71716792130974519606308556126612093997 0.082846618983404893940813472711113790502 0.2654400078112959960719970586153501497 0.86890243415450423858119610210847838329 0.064989081492596046079059800766815612157 0.86890243415450423858119610210847838329 0.2654400078112959960719970586153501497 0.064989081492596046079059800766815612157 0.2654400078112959960719970586153501497 -0.86890243415450423858119610210847838329 0.064989081492596046079059800766815612157 -0.86890243415450423858119610210847838329 0.2654400078112959960719970586153501497 0.064989081492596046079059800766815612157 -0.2654400078112959960719970586153501497 0.86890243415450423858119610210847838329 0.064989081492596046079059800766815612157 0.86890243415450423858119610210847838329 -0.2654400078112959960719970586153501497 0.064989081492596046079059800766815612157 -0.2654400078112959960719970586153501497 -0.86890243415450423858119610210847838329 0.064989081492596046079059800766815612157 -0.86890243415450423858119610210847838329 -0.2654400078112959960719970586153501497 0.064989081492596046079059800766815612157 0.62003539869325639760371263809929928256 0.92630295580712924244748529919286127317 0.038980552396410534776396621703868595797 0.92630295580712924244748529919286127317 0.62003539869325639760371263809929928256 0.038980552396410534776396621703868595797 0.62003539869325639760371263809929928256 -0.92630295580712924244748529919286127317 0.038980552396410534776396621703868595797 -0.92630295580712924244748529919286127317 0.62003539869325639760371263809929928256 0.038980552396410534776396621703868595797 -0.62003539869325639760371263809929928256 0.92630295580712924244748529919286127317 0.038980552396410534776396621703868595797 0.92630295580712924244748529919286127317 -0.62003539869325639760371263809929928256 0.038980552396410534776396621703868595797 -0.62003539869325639760371263809929928256 -0.92630295580712924244748529919286127317 0.038980552396410534776396621703868595797 -0.92630295580712924244748529919286127317 -0.62003539869325639760371263809929928256 0.038980552396410534776396621703868595797 0.80167158471859684259236358940451923912 0.98844653068397375168746156789890756035 0.0098894009347434843812884009858441317495 0.98844653068397375168746156789890756035 0.80167158471859684259236358940451923912 0.0098894009347434843812884009858441317495 0.80167158471859684259236358940451923912 -0.98844653068397375168746156789890756035 0.0098894009347434843812884009858441317495 -0.98844653068397375168746156789890756035 0.80167158471859684259236358940451923912 0.0098894009347434843812884009858441317495 -0.80167158471859684259236358940451923912 0.98844653068397375168746156789890756035 0.0098894009347434843812884009858441317495 0.98844653068397375168746156789890756035 -0.80167158471859684259236358940451923912 0.0098894009347434843812884009858441317495 -0.80167158471859684259236358940451923912 -0.98844653068397375168746156789890756035 0.0098894009347434843812884009858441317495 -0.98844653068397375168746156789890756035 -0.80167158471859684259236358940451923912 0.0098894009347434843812884009858441317495 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n8-d5-sp.txt000066400000000000000000000020001277740313300240620ustar00rootroot00000000000000 0.68313005106397322554806924536807013272 0 0.8163265306122448979591836734693877551 0 0.68313005106397322554806924536807013272 0.8163265306122448979591836734693877551 -0.68313005106397322554806924536807013272 0 0.8163265306122448979591836734693877551 0 -0.68313005106397322554806924536807013272 0.8163265306122448979591836734693877551 0.8819171036881968635005385845464201419 0.8819171036881968635005385845464201419 0.1836734693877551020408163265306122449 0.8819171036881968635005385845464201419 -0.8819171036881968635005385845464201419 0.1836734693877551020408163265306122449 -0.8819171036881968635005385845464201419 0.8819171036881968635005385845464201419 0.1836734693877551020408163265306122449 -0.8819171036881968635005385845464201419 -0.8819171036881968635005385845464201419 0.1836734693877551020408163265306122449 pyfr-1.5.0/pyfr/quadrules/quad/witherden-vincent-n85-d21-sp.txt000066400000000000000000000255771277740313300242550ustar00rootroot00000000000000 0 0 0.13519284035614282527922840385434746149 0.47335107435822415202690901838844666219 0 0.1067941587859403825037542148829566842 0 0.47335107435822415202690901838844666219 0.1067941587859403825037542148829566842 -0.47335107435822415202690901838844666219 0 0.1067941587859403825037542148829566842 0 -0.47335107435822415202690901838844666219 0.1067941587859403825037542148829566842 0.83527842975586830160520893009495292054 0 0.066257208004944385159031059020122440339 0 0.83527842975586830160520893009495292054 0.066257208004944385159031059020122440339 -0.83527842975586830160520893009495292054 0 0.066257208004944385159031059020122440339 0 -0.83527842975586830160520893009495292054 0.066257208004944385159031059020122440339 0.2573719006072289819053755213317636919 0.2573719006072289819053755213317636919 0.11988448364634046970472217835662908028 0.2573719006072289819053755213317636919 -0.2573719006072289819053755213317636919 0.11988448364634046970472217835662908028 -0.2573719006072289819053755213317636919 0.2573719006072289819053755213317636919 0.11988448364634046970472217835662908028 -0.2573719006072289819053755213317636919 -0.2573719006072289819053755213317636919 0.11988448364634046970472217835662908028 0.96333783211562335381484352624945730322 0.96333783211562335381484352624945730322 0.0082294612892200088282217117254895783997 0.96333783211562335381484352624945730322 -0.96333783211562335381484352624945730322 0.0082294612892200088282217117254895783997 -0.96333783211562335381484352624945730322 0.96333783211562335381484352624945730322 0.0082294612892200088282217117254895783997 -0.96333783211562335381484352624945730322 -0.96333783211562335381484352624945730322 0.0082294612892200088282217117254895783997 0.86245192537965155140267607631968215083 0.86245192537965155140267607631968215083 0.030603640928775651038141155704768806683 0.86245192537965155140267607631968215083 -0.86245192537965155140267607631968215083 0.030603640928775651038141155704768806683 -0.86245192537965155140267607631968215083 0.86245192537965155140267607631968215083 0.030603640928775651038141155704768806683 -0.86245192537965155140267607631968215083 -0.86245192537965155140267607631968215083 0.030603640928775651038141155704768806683 0.49689796251934570364793617005129236026 0.49689796251934570364793617005129236026 0.096791791893595210842497711127833756611 0.49689796251934570364793617005129236026 -0.49689796251934570364793617005129236026 0.096791791893595210842497711127833756611 -0.49689796251934570364793617005129236026 0.49689796251934570364793617005129236026 0.096791791893595210842497711127833756611 -0.49689796251934570364793617005129236026 -0.49689796251934570364793617005129236026 0.096791791893595210842497711127833756611 0.70433217519540056955932591780080720749 0.70433217519540056955932591780080720749 0.061516341481316561201749944009961586508 0.70433217519540056955932591780080720749 -0.70433217519540056955932591780080720749 0.061516341481316561201749944009961586508 -0.70433217519540056955932591780080720749 0.70433217519540056955932591780080720749 0.061516341481316561201749944009961586508 -0.70433217519540056955932591780080720749 -0.70433217519540056955932591780080720749 0.061516341481316561201749944009961586508 0.24187818547670197670997054949192246819 0.67414621995531773950245618191533516236 0.086728499513208224903936696999552926752 0.67414621995531773950245618191533516236 0.24187818547670197670997054949192246819 0.086728499513208224903936696999552926752 0.24187818547670197670997054949192246819 -0.67414621995531773950245618191533516236 0.086728499513208224903936696999552926752 -0.67414621995531773950245618191533516236 0.24187818547670197670997054949192246819 0.086728499513208224903936696999552926752 -0.24187818547670197670997054949192246819 0.67414621995531773950245618191533516236 0.086728499513208224903936696999552926752 0.67414621995531773950245618191533516236 -0.24187818547670197670997054949192246819 0.086728499513208224903936696999552926752 -0.24187818547670197670997054949192246819 -0.67414621995531773950245618191533516236 0.086728499513208224903936696999552926752 -0.67414621995531773950245618191533516236 -0.24187818547670197670997054949192246819 0.086728499513208224903936696999552926752 0.48015696631279513715726389107913072158 0.82464737527092073827881221191700729562 0.055879117404127348063047858204117827292 0.82464737527092073827881221191700729562 0.48015696631279513715726389107913072158 0.055879117404127348063047858204117827292 0.48015696631279513715726389107913072158 -0.82464737527092073827881221191700729562 0.055879117404127348063047858204117827292 -0.82464737527092073827881221191700729562 0.48015696631279513715726389107913072158 0.055879117404127348063047858204117827292 -0.48015696631279513715726389107913072158 0.82464737527092073827881221191700729562 0.055879117404127348063047858204117827292 0.82464737527092073827881221191700729562 -0.48015696631279513715726389107913072158 0.055879117404127348063047858204117827292 -0.48015696631279513715726389107913072158 -0.82464737527092073827881221191700729562 0.055879117404127348063047858204117827292 -0.82464737527092073827881221191700729562 -0.48015696631279513715726389107913072158 0.055879117404127348063047858204117827292 0.93224193592175396207500211941993080129 0.27069918410166491089101469370373344757 0.037128827440913817653330718954876960924 0.27069918410166491089101469370373344757 0.93224193592175396207500211941993080129 0.037128827440913817653330718954876960924 0.93224193592175396207500211941993080129 -0.27069918410166491089101469370373344757 0.037128827440913817653330718954876960924 -0.27069918410166491089101469370373344757 0.93224193592175396207500211941993080129 0.037128827440913817653330718954876960924 -0.93224193592175396207500211941993080129 0.27069918410166491089101469370373344757 0.037128827440913817653330718954876960924 0.27069918410166491089101469370373344757 -0.93224193592175396207500211941993080129 0.037128827440913817653330718954876960924 -0.93224193592175396207500211941993080129 -0.27069918410166491089101469370373344757 0.037128827440913817653330718954876960924 -0.27069918410166491089101469370373344757 -0.93224193592175396207500211941993080129 0.037128827440913817653330718954876960924 0.93490232582401054613354438740771124115 0.67503956743707526937208896355984125883 0.028775600851020531767579367626940765984 0.67503956743707526937208896355984125883 0.93490232582401054613354438740771124115 0.028775600851020531767579367626940765984 0.93490232582401054613354438740771124115 -0.67503956743707526937208896355984125883 0.028775600851020531767579367626940765984 -0.67503956743707526937208896355984125883 0.93490232582401054613354438740771124115 0.028775600851020531767579367626940765984 -0.93490232582401054613354438740771124115 0.67503956743707526937208896355984125883 0.028775600851020531767579367626940765984 0.67503956743707526937208896355984125883 -0.93490232582401054613354438740771124115 0.028775600851020531767579367626940765984 -0.93490232582401054613354438740771124115 -0.67503956743707526937208896355984125883 0.028775600851020531767579367626940765984 -0.67503956743707526937208896355984125883 -0.93490232582401054613354438740771124115 0.028775600851020531767579367626940765984 0.99045546752952415272197458895882111757 0.48891625117716687937811887553934444444 0.011509520442493167578261138308188460848 0.48891625117716687937811887553934444444 0.99045546752952415272197458895882111757 0.011509520442493167578261138308188460848 0.99045546752952415272197458895882111757 -0.48891625117716687937811887553934444444 0.011509520442493167578261138308188460848 -0.48891625117716687937811887553934444444 0.99045546752952415272197458895882111757 0.011509520442493167578261138308188460848 -0.99045546752952415272197458895882111757 0.48891625117716687937811887553934444444 0.011509520442493167578261138308188460848 0.48891625117716687937811887553934444444 -0.99045546752952415272197458895882111757 0.011509520442493167578261138308188460848 -0.99045546752952415272197458895882111757 -0.48891625117716687937811887553934444444 0.011509520442493167578261138308188460848 -0.48891625117716687937811887553934444444 -0.99045546752952415272197458895882111757 0.011509520442493167578261138308188460848 0.83113524597590138585974389212898407353 0.98896061138657239166243578378631145048 0.0075284821304016457091249399363317448912 0.98896061138657239166243578378631145048 0.83113524597590138585974389212898407353 0.0075284821304016457091249399363317448912 0.83113524597590138585974389212898407353 -0.98896061138657239166243578378631145048 0.0075284821304016457091249399363317448912 -0.98896061138657239166243578378631145048 0.83113524597590138585974389212898407353 0.0075284821304016457091249399363317448912 -0.83113524597590138585974389212898407353 0.98896061138657239166243578378631145048 0.0075284821304016457091249399363317448912 0.98896061138657239166243578378631145048 -0.83113524597590138585974389212898407353 0.0075284821304016457091249399363317448912 -0.83113524597590138585974389212898407353 -0.98896061138657239166243578378631145048 0.0075284821304016457091249399363317448912 -0.98896061138657239166243578378631145048 -0.83113524597590138585974389212898407353 0.0075284821304016457091249399363317448912 0.091469600922291296668443828573471880948 0.98401714848959892866013755872564589893 0.010512304158251076525756742074316914114 0.98401714848959892866013755872564589893 0.091469600922291296668443828573471880948 0.010512304158251076525756742074316914114 0.091469600922291296668443828573471880948 -0.98401714848959892866013755872564589893 0.010512304158251076525756742074316914114 -0.98401714848959892866013755872564589893 0.091469600922291296668443828573471880948 0.010512304158251076525756742074316914114 -0.091469600922291296668443828573471880948 0.98401714848959892866013755872564589893 0.010512304158251076525756742074316914114 0.98401714848959892866013755872564589893 -0.091469600922291296668443828573471880948 0.010512304158251076525756742074316914114 -0.091469600922291296668443828573471880948 -0.98401714848959892866013755872564589893 0.010512304158251076525756742074316914114 -0.98401714848959892866013755872564589893 -0.091469600922291296668443828573471880948 0.010512304158251076525756742074316914114 pyfr-1.5.0/pyfr/quadrules/tet/000077500000000000000000000000001277740313300162655ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n10-su.txt000066400000000000000000000001161277740313300217320ustar00rootroot00000000000000-1 -1 -1 0 -1 -1 1 -1 -1 -1 0 -1 0 0 -1 -1 1 -1 -1 -1 0 0 -1 0 -1 0 0 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n120-su.txt000066400000000000000000000124411277740313300220200ustar00rootroot00000000000000-1 -1 -1 -0.8717401485096067 -1 -1 -0.5917001814331421 -1 -1 -0.209299217902479 -1 -1 0.2092992179024788 -1 -1 0.5917001814331423 -1 -1 0.8717401485096066 -1 -1 1 -1 -1 -1 -0.8717401485096067 -1 -0.8377934876983261 -0.8002644747095454 -1 -0.5126265359895285 -0.7858689741977885 -1 -0.1088532425573802 -0.7822935148852401 -1 0.2984955101873168 -0.7858689741977886 -1 0.6380579624078714 -0.8002644747095453 -1 0.8256228124533196 -0.8256228124533198 -1 -1 -0.5917001814331421 -1 -0.8149986495327437 -0.4856126822048567 -0.9999999999999999 -0.4709653804493237 -0.4580835744972717 -1 -0.07095104505340484 -0.4580835744972717 -1 0.3006113317376006 -0.4856126822048568 -1 0.5439208759264507 -0.5439208759264507 -1 -1 -0.209299217902479 -1 -0.7971359342191352 -0.1088532425573799 -1 -0.4580835744972717 -0.08383285100545679 -1 -0.09401082322348475 -0.1088532425573801 -1 0.1898387846778055 -0.1898387846778055 -1 -1 0.2092992179024788 -1 -0.7879847957480721 0.2714816564026453 -1 -0.4834968606545732 0.2714816564026452 -1 -0.1898387846778055 0.1898387846778054 -1 -1 0.5917001814331423 -1 -0.8002644747095453 0.6005289494190905 -1 -0.5439208759264508 0.5439208759264508 -1 -1 0.8717401485096066 -1 -0.8256228124533197 0.8256228124533196 -1 -1 1 -1 -1 -1.017745376958382 -0.8362493945928438 -0.8377934876983261 -1 -0.8002644747095454 -0.5126265359895285 -1 -0.7858689741977885 -0.1088532425573802 -1 -0.7822935148852401 0.2984955101873168 -1 -0.7858689741977886 0.6380579624078714 -1 -0.8002644747095453 0.8256228124533197 -1 -0.8256228124533198 -1 -0.8377934876983261 -0.8002644747095454 -0.7759429190092945 -0.7665753546326264 -0.7572077902559582 -0.4508929741193839 -0.7427581689347882 -0.7402711387453152 -0.06955763161261895 -0.7403410966268441 -0.7398689444725534 0.2866187389240555 -0.7553379099573804 -0.7553379099573807 0.5855464504063108 -0.7927732252031552 -0.7927732252031556 -1 -0.5126265359895285 -0.7858689741977885 -0.7494270649842948 -0.445979559253779 -0.740271138745315 -0.4237755888446687 -0.4237755888446686 -0.7288916784498366 -0.07154762264871631 -0.4397751354115895 -0.7386837774625536 0.2602747220521437 -0.4806427307770988 -0.7796319912750448 -1 -0.1088532425573802 -0.7822935148852401 -0.7420965778107459 -0.0744710464782237 -0.7398689444725534 -0.4380196542276877 -0.07821651869822296 -0.7386837774625539 -0.1118159707949148 -0.111815970794915 -0.7763680584101703 -1 0.2984955101873168 -0.7858689741977886 -0.7553379099573805 0.2772511745473874 -0.7553379099573806 -0.4806427307770989 0.2602747220521436 -0.7796319912750449 -1 0.6380579624078714 -0.8002644747095453 -0.7927732252031553 0.5855464504063107 -0.7927732252031554 -1 0.8539947715512249 -0.8362493945928435 -1 -1.018384882118757 -0.5549304171956291 -0.8149986495327437 -0.9999999999999999 -0.4856126822048567 -0.4709653804493237 -1 -0.4580835744972717 -0.07095104505340484 -1 -0.4580835744972717 0.3006113317376006 -1 -0.4856126822048568 0.5439208759264509 -1 -0.5439208759264508 -0.9999999999999999 -0.8149986495327437 -0.4856126822048567 -0.7494270649842949 -0.7469400347948216 -0.4410661443881742 -0.4237755888446687 -0.7299860252112113 -0.4237755888446686 -0.07154762264871634 -0.7386837774625536 -0.4402472875658804 0.2602747220521436 -0.7796319912750447 -0.4806427307770988 -1 -0.4709653804493237 -0.4580835744972717 -0.731080371972586 -0.4237755888446687 -0.4237755888446687 -0.4213684503380767 -0.4224627970994513 -0.423557143860826 -0.08897558271058152 -0.4555122086447093 -0.4555122086447093 -1 -0.07095104505340484 -0.4580835744972717 -0.7386837774625538 -0.07403465283818948 -0.4402472875658805 -0.4555122086447093 -0.08897558271058154 -0.4555122086447093 -1 0.3006113317376006 -0.4856126822048568 -0.7796319912750449 0.2602747220521436 -0.4806427307770988 -1 0.5733152993143855 -0.554930417195629 -1 -1.007488132508863 -0.1943229528847528 -0.7971359342191352 -1 -0.1088532425573799 -0.4580835744972717 -1 -0.08383285100545679 -0.09401082322348475 -1 -0.1088532425573801 0.1898387846778055 -1 -0.1898387846778054 -1 -0.7971359342191352 -0.1088532425573799 -0.742096577810746 -0.741624425656455 -0.07938446134382841 -0.4380196542276877 -0.7386837774625538 -0.08070354888769604 -0.111815970794915 -0.7763680584101702 -0.1118159707949148 -1 -0.4580835744972717 -0.08383285100545679 -0.7386837774625538 -0.4384918063819787 -0.08070354888769607 -0.4555122086447093 -0.4555122086447093 -0.08897558271058147 -1 -0.09401082322348475 -0.1088532425573801 -0.7763680584101702 -0.1118159707949148 -0.111815970794915 -1 0.201811085393616 -0.1943229528847529 -1 -0.992511867491137 0.1943229528847528 -0.7879847957480721 -1 0.2714816564026453 -0.4834968606545732 -1 0.2714816564026452 -0.1898387846778056 -1 0.1898387846778055 -1 -0.7879847957480721 0.2714816564026453 -0.7553379099573805 -0.7553379099573806 0.2678836101707193 -0.4806427307770989 -0.7796319912750448 0.2602747220521436 -1 -0.4834968606545732 0.2714816564026452 -0.7796319912750448 -0.4806427307770989 0.2602747220521436 -1 -0.2018110853936159 0.1943229528847528 -1 -0.9816151178812433 0.5549304171956289 -0.8002644747095453 -1 0.6005289494190905 -0.5439208759264507 -1 0.5439208759264507 -1 -0.8002644747095453 0.6005289494190905 -0.7927732252031554 -0.7927732252031554 0.5855464504063108 -1 -0.5733152993143857 0.5549304171956291 -1 -0.9822546230416184 0.8362493945928433 -0.8256228124533198 -1 0.8256228124533196 -1 -0.8539947715512251 0.8362493945928434 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n165-su.txt000066400000000000000000000165611277740313300220400ustar00rootroot00000000000000-1 -1 -1 -0.89975799541146 -1 -1 -0.6771862795107377 -1 -1 -0.3631174638261783 -1 -1 3.005759014166951e-17 -1 -1 0.3631174638261782 -1 -1 0.6771862795107376 -1 -1 0.8997579954114603 -1 -1 1 -1 -1 -1 -0.89975799541146 -1 -0.8742993405623416 -0.8365298023578364 -1 -0.6131474043935554 -0.8223417120335408 -1 -0.2747808058840124 -0.8169194810856455 -1 0.0917002869696579 -0.8169194810856455 -1 0.4354891164270961 -0.8223417120335408 -1 0.7108291429201778 -0.8365298023578364 -1 0.8558948940923472 -0.8558948940923472 -1 -1 -0.6771862795107377 -1 -0.8549584061136719 -0.5794905711540003 -1 -0.5737650613002845 -0.5513508450354651 -1 -0.2284628218214844 -0.5430743563570311 -1 0.1251159063357495 -0.5513508450354651 -1 0.4344489772676721 -0.5794905711540004 -1 0.6252896197752577 -0.6252896197752577 -1 -1 -0.3631174638261783 -1 -0.8380881857917005 -0.2616531927342077 -1 -0.5524751552941041 -0.2284628218214844 -1 -0.2190620228844115 -0.2284628218214844 -1 0.09974137852590823 -0.2616531927342077 -1 0.3299861257421146 -0.3299861257421146 -1 -1 3.005759014166951e-17 -1 -0.8249605726418958 0.07857267381985318 -1 -0.5513508450354649 0.1027016900709301 -1 -0.2536121011779573 0.07857267381985325 -1 -2.125392581530043e-17 2.125392581530043e-17 -1 -1 0.3631174638261782 -1 -0.8213015728741166 0.4018322831875412 -1 -0.5805307103134243 0.4018322831875412 -1 -0.3299861257421146 0.3299861257421146 -1 -1 0.6771862795107376 -1 -0.8365298023578362 0.6730596047156727 -1 -0.6252896197752575 0.6252896197752575 -1 -1 0.8997579954114603 -1 -0.8558948940923474 0.8558948940923474 -1 -1 1 -1 -1 -1.016877975486731 -0.8660020444379984 -0.8742993405623416 -1 -0.8365298023578364 -0.6131474043935554 -1 -0.8223417120335408 -0.2747808058840124 -1 -0.8169194810856455 0.0917002869696579 -1 -0.8169194810856455 0.4354891164270961 -1 -0.8223417120335408 0.7108291429201778 -1 -0.8365298023578364 0.8558948940923474 -1 -0.8558948940923474 -1 -0.8742993405623416 -0.8365298023578364 -0.8197042434325125 -0.8091140943881577 -0.798523945343803 -0.5554873079054763 -0.7841888490363336 -0.7807740861300608 -0.2242213649716434 -0.7770046972350388 -0.7759826484523475 0.1156722233731158 -0.7803367456972787 -0.7801331065880079 0.4125242878495632 -0.7964100222085254 -0.7964100222085254 0.6579810821595022 -0.8289905410797511 -0.8289905410797511 -1 -0.6131474043935554 -0.8223417120335408 -0.7935488921297991 -0.5465991949325242 -0.7807740861300608 -0.5196058278947546 -0.5148555752066993 -0.7664057643765648 -0.2019518404825175 -0.51257954769744 -0.7659525594816275 0.1083915053202145 -0.5357461722191661 -0.7788521530077905 0.3886032774322145 -0.5725646315500258 -0.8160386458821887 -1 -0.2747808058840124 -0.8169194810856455 -0.7816977783800496 -0.2242213649716434 -0.7759826484523475 -0.51257954769744 -0.2067020931705729 -0.7659525594816275 -0.2190350045306117 -0.2237280856756225 -0.7743130692070339 0.07172670975771535 -0.2606378608791348 -0.8110888488785806 -1 0.0917002869696579 -0.8169194810856455 -0.780808675817792 0.1067841104001637 -0.7801331065880079 -0.5352742420986527 0.09903146222674902 -0.7788521530077905 -0.2606378608791348 0.07172670975771538 -0.8110888488785806 -1 0.4354891164270961 -0.8223417120335408 -0.7964100222085253 0.4019341388052085 -0.7964100222085254 -0.5725646315500257 0.3886032774322145 -0.8160386458821888 -1 0.7108291429201778 -0.8365298023578364 -0.8289905410797511 0.6579810821595022 -0.8289905410797511 -1 0.8828800199247291 -0.8660020444379982 -1 -1.019969188783215 -0.6372479019443078 -0.8549584061136719 -1 -0.5794905711540003 -0.5737650613002845 -1 -0.5513508450354651 -0.2284628218214844 -1 -0.5430743563570311 0.1251159063357495 -1 -0.5513508450354651 0.4344489772676721 -1 -0.5794905711540004 0.6252896197752577 -1 -0.6252896197752575 -1 -0.8549584061136719 -0.5794905711540003 -0.7935488921297991 -0.7901341292235263 -0.537711081959572 -0.5196058278947546 -0.768953708360478 -0.5129296134852646 -0.2019518404825175 -0.7664023092886623 -0.51257954769744 0.1083915053202145 -0.7788521530077905 -0.5359498113284368 0.3886032774322145 -0.8160386458821888 -0.5725646315500257 -1 -0.5737650613002845 -0.5513508450354651 -0.7715016523443914 -0.51767986617332 -0.5129296134852646 -0.5 -0.5 -0.5 -0.2045355376313637 -0.5114418796487481 -0.5118916294557828 0.09375338724292127 -0.5468766936214606 -0.5468766936214606 -1 -0.2284628218214844 -0.5430743563570311 -0.7670242915511407 -0.2038778022039523 -0.51257954769744 -0.5108198973862695 -0.207083481615277 -0.5118916294557828 -0.230339336144365 -0.230339336144365 -0.5393213277112699 -1 0.1251159063357495 -0.5513508450354651 -0.7788521530077905 0.1049767424139419 -0.5359498113284369 -0.5468766936214606 0.09375338724292125 -0.5468766936214606 -1 0.4344489772676721 -0.5794905711540004 -0.8160386458821887 0.3886032774322145 -0.5725646315500258 -1 0.6572170907275228 -0.6372479019443079 -1 -1.012748526556688 -0.3376204107128016 -0.8380881857917005 -1 -0.2616531927342077 -0.5524751552941041 -1 -0.2284628218214844 -0.2190620228844115 -1 -0.2284628218214844 0.09974137852590823 -1 -0.2616531927342077 0.3299861257421146 -1 -0.3299861257421146 -1 -0.8380881857917005 -0.2616531927342077 -0.7816977783800496 -0.7806757295973584 -0.2242213649716434 -0.51257954769744 -0.766574541744106 -0.2086280548920076 -0.2190350045306117 -0.7743130692070339 -0.2247501344583138 0.07172670975771539 -0.8110888488785806 -0.2606378608791348 -1 -0.5524751552941041 -0.2284628218214844 -0.7670242915511407 -0.51257954769744 -0.2086280548920076 -0.5108198973862695 -0.5112696471933043 -0.2096314255991903 -0.230339336144365 -0.5393213277112699 -0.230339336144365 -1 -0.2190620228844115 -0.2284628218214844 -0.7743130692070339 -0.220057053313303 -0.2247501344583138 -0.5393213277112699 -0.230339336144365 -0.230339336144365 -1 0.09974137852590823 -0.2616531927342077 -0.8110888488785806 0.07172670975771533 -0.2606378608791348 -1 0.3503689372694899 -0.3376204107128017 -1 -1 -2.328250920916284e-17 -0.8249605726418958 -1 0.07857267381985318 -0.5513508450354649 -1 0.1027016900709301 -0.2536121011779573 -1 0.07857267381985325 2.125392581530044e-17 -1 -2.125392581530043e-17 -1 -0.8249605726418958 0.07857267381985318 -0.780808675817792 -0.7806050367085213 0.0978959974272116 -0.5352742420986527 -0.7788521530077905 0.09561669932047639 -0.2606378608791348 -0.8110888488785806 0.07172670975771533 -1 -0.5513508450354649 0.1027016900709301 -0.7788521530077905 -0.5354778812079234 0.09561669932047638 -0.5468766936214606 -0.5468766936214606 0.09375338724292126 -1 -0.2536121011779573 0.07857267381985325 -0.8110888488785806 -0.2606378608791348 0.0717267097577154 -1 -2.667004967541617e-17 2.328250920916285e-17 -1 -0.9872514734433117 0.3376204107128016 -0.8213015728741166 -1 0.4018322831875412 -0.5805307103134243 -1 0.4018322831875412 -0.3299861257421147 -1 0.3299861257421146 -1 -0.8213015728741166 0.4018322831875412 -0.7964100222085254 -0.7964100222085253 0.3913439897608537 -0.5725646315500259 -0.8160386458821887 0.3886032774322145 -1 -0.5805307103134243 0.4018322831875412 -0.8160386458821888 -0.5725646315500257 0.3886032774322145 -1 -0.3503689372694899 0.3376204107128016 -1 -0.980030811216785 0.6372479019443079 -0.8365298023578362 -1 0.6730596047156727 -0.6252896197752578 -0.9999999999999999 0.6252896197752577 -1 -0.8365298023578362 0.6730596047156727 -0.8289905410797511 -0.8289905410797511 0.6579810821595022 -1 -0.6572170907275228 0.6372479019443078 -1 -0.983122024513269 0.8660020444379982 -0.8558948940923472 -1 0.8558948940923472 -1 -0.8828800199247293 0.8660020444379986 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n20-su.txt000066400000000000000000000012221277740313300217320ustar00rootroot00000000000000-1 -1 -1 -0.447213595499958 -1 -1 0.4472135954999579 -1 -1 1 -1 -1 -1 -0.447213595499958 -1 -0.3333333333333334 -0.3333333333333334 -1 0.4138588389546553 -0.4138588389546555 -1 -1 0.4472135954999579 -1 -0.4138588389546555 0.4138588389546554 -1 -1 1 -1 -1 -1.012834495200005 -0.4215446050999478 -0.3333333333333334 -1 -0.3333333333333334 0.4138588389546554 -1 -0.4138588389546556 -1 -0.3333333333333334 -0.3333333333333334 -0.3333333333333334 -0.3333333333333334 -0.3333333333333334 -1 0.4343791002999526 -0.4215446050999477 -1 -0.9871655047999948 0.4215446050999475 -0.4138588389546554 -1 0.4138588389546553 -1 -0.4343791002999529 0.4215446050999477 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n220-su.txt000066400000000000000000000242261277740313300220250ustar00rootroot00000000000000-1 -1 -1 -0.9195339081664587 -1 -1 -0.7387738651055048 -1 -1 -0.4779249498104445 -1 -1 -0.1652789576663869 -1 -1 0.165278957666387 -1 -1 0.4779249498104445 -1 -1 0.7387738651055047 -1 -1 0.9195339081664586 -1 -1 1 -1 -1 -1 -0.9195339081664587 -1 -0.9002233744947845 -0.8630171140089778 -1 -0.686676253866896 -0.8493509108906632 -1 -0.4021286884098804 -0.8427327289082917 -1 -0.07960334289589377 -0.8407933142082126 -1 0.2448614173181722 -0.8427327289082917 -1 0.536027164757559 -0.8493509108906629 -1 0.7632404885037624 -0.8630171140089781 -1 0.8780144988503784 -0.8780144988503784 -1 -1 -0.7387738651055048 -1 -0.8837821759160182 -0.6490548004379039 -1 -0.6508798482525652 -0.6219146542414883 -1 -0.3553318042577817 -0.6099131983080885 -1 -0.03475499743412994 -0.6099131983080885 -1 0.2727945024940535 -0.6219146542414883 -1 0.5328369763539216 -0.6490548004379036 -1 0.6851104646758606 -0.6851104646758606 -1 -1 -0.4779249498104445 -1 -0.8683224932269585 -0.3793014550678747 -1 -0.6273188902647351 -0.3442470787755155 -1 -0.3333333333333334 -0.3333333333333334 -1 -0.02843403095974965 -0.3442470787755155 -1 0.2476239482948331 -0.3793014550678746 -1 0.4355750458470228 -0.4355750458470231 -1 -1 -0.1652789576663869 -1 -0.8545461926722369 -0.07960334289589369 -1 -0.6162341647824687 -0.04583972291639619 -1 -0.3379261123011351 -0.04583972291639622 -1 -0.06585046443186951 -0.07960334289589371 -1 0.149413562732619 -0.149413562732619 -1 -1 0.165278957666387 -1 -0.8454952598849527 0.2220341839761663 -1 -0.6219146542414883 0.2438293084829766 -1 -0.3765389240912136 0.2220341839761664 -1 -0.1494135627326191 0.1494135627326191 -1 -1 0.4779249498104445 -1 -0.8461607224870257 0.4984057113285666 -1 -0.6522449888415409 0.4984057113285668 -1 -0.4355750458470233 0.4355750458470232 -1 -1 0.7387738651055047 -1 -0.863017114008978 0.7260342280179561 -1 -0.6851104646758606 0.6851104646758606 -1 -1 0.9195339081664586 -1 -0.8780144988503784 0.8780144988503783 -1 -1 1 -1 -1 -1.015976151972524 -0.8875816042214113 -0.9002233744947845 -1 -0.8630171140089778 -0.686676253866896 -1 -0.8493509108906632 -0.4021286884098804 -1 -0.8427327289082917 -0.07960334289589377 -1 -0.8407933142082126 0.2448614173181722 -1 -0.8427327289082917 0.536027164757559 -1 -0.8493509108906629 0.7632404885037624 -1 -0.8630171140089781 0.8780144988503784 -1 -0.8780144988503783 -1 -0.9002233744947845 -0.8630171140089778 -0.8518702860265488 -0.8406134289575202 -0.8293565718884915 -0.6352364302355202 -0.8158206255535391 -0.8117714187166377 -0.3510218588563377 -0.8065895046046353 -0.8051120950065511 -0.03934376914286378 -0.8053802698511208 -0.8049108816251022 0.2571627253564642 -0.8110778549937395 -0.8109822345660826 0.5060894173984054 -0.8271095656859285 -0.8271095656859283 0.711180579690875 -0.8555902898454377 -0.8555902898454373 -1 -0.686676253866896 -0.8493509108906632 -0.8270655204162699 -0.6234480857728041 -0.8117714187166379 -0.596581392805375 -0.5875830514848177 -0.7967586531109548 -0.3161812110984423 -0.5763901858514651 -0.7925167868412045 -0.02426712566134696 -0.5831410439722148 -0.7960515681279609 0.2458989644631241 -0.6090643701115774 -0.8096543665020095 0.4840231084150144 -0.6409082981084915 -0.8431148103065232 -1 -0.4021286884098804 -0.8427327289082917 -0.8140038151558372 -0.3462185391501553 -0.8051120950065511 -0.5801642759636387 -0.3161812110984423 -0.7925167868412043 -0.3115142818367282 -0.3152883719489018 -0.79204131285174 -0.04190765866292386 -0.3403208243429009 -0.8032046179876168 0.212369559704411 -0.3752962953335862 -0.8370732643708247 -1 -0.07960334289589377 -0.8407933142082126 -0.8079912606961405 -0.04414708884904611 -0.8049108816251022 -0.5831410439722148 -0.03326546698190438 -0.7960515681279606 -0.3377098334978813 -0.04932196921412581 -0.8032046179876168 -0.08234858546424631 -0.08234858546424638 -0.8353028290715073 -1 0.2448614173181722 -0.8427327289082917 -0.8105344053937541 0.2453743808937479 -0.8109822345660826 -0.6096078197115629 0.2346540696003933 -0.8096543665020093 -0.3752962953335863 0.2123695597044111 -0.8370732643708247 -1 0.536027164757559 -0.8493509108906629 -0.8271095656859284 0.4948325603293768 -0.8271095656859283 -0.6409082981084915 0.4840231084150146 -0.8431148103065231 -1 0.7632404885037624 -0.8630171140089781 -0.8555902898454375 0.7111805796908749 -0.8555902898454375 -1 0.9035577561939352 -0.8875816042214114 -1 -1.020649008614252 -0.6974758478770011 -0.8837821759160182 -1 -0.6490548004379039 -0.6508798482525652 -1 -0.6219146542414883 -0.3553318042577817 -1 -0.6099131983080885 -0.03475499743412994 -1 -0.6099131983080885 0.2727945024940535 -1 -0.6219146542414883 0.5328369763539216 -1 -0.6490548004379036 0.6851104646758606 -1 -0.6851104646758606 -1 -0.8837821759160182 -0.6490548004379039 -0.8270655204162698 -0.8230163135793687 -0.611659741310088 -0.596581392805375 -0.8005811199760536 -0.5838925155682742 -0.3161812110984423 -0.7936472605984196 -0.5755201225921396 -0.02426712566134696 -0.7962576204798428 -0.5831410439722149 0.2458989644631242 -0.8096543665020094 -0.6091599905392343 0.4840231084150146 -0.8431148103065232 -0.6409082981084917 -1 -0.6508798482525652 -0.6219146542414883 -0.8044035868411525 -0.5928908568888314 -0.583892515568274 -0.5692662292614117 -0.5671831698823351 -0.5651001105032585 -0.3013651579361004 -0.5646843064012441 -0.5646843064012441 -0.03140373975342906 -0.5818491537839297 -0.5820552061358119 0.2322656952644337 -0.6161328476322169 -0.6161328476322169 -1 -0.3553318042577817 -0.6099131983080885 -0.7955336969326938 -0.3161812110984423 -0.5755201225921395 -0.5646843064012441 -0.3034482173151769 -0.5646843064012441 -0.3135183238733733 -0.3154047602076476 -0.5741351077385076 -0.05152675832124149 -0.3432961742759205 -0.6051770674028381 -1 -0.03475499743412994 -0.6099131983080885 -0.7963895514283982 -0.02795766157789063 -0.5831410439722148 -0.5817172228353744 -0.03522620661852802 -0.5820552061358119 -0.3432961742759205 -0.05152675832124154 -0.6051770674028381 -1 0.2727945024940535 -0.6219146542414883 -0.8096543665020094 0.241849757626223 -0.6091599905392342 -0.6161328476322169 0.2322656952644337 -0.6161328476322169 -1 0.5328369763539216 -0.6490548004379036 -0.843114810306523 0.4840231084150144 -0.6409082981084915 -1 0.718124856491253 -0.6974758478770013 -1 -1.01629571597685 -0.4453335178567458 -0.8683224932269585 -1 -0.3793014550678747 -0.6273188902647351 -1 -0.3442470787755155 -0.3333333333333334 -1 -0.3333333333333334 -0.02843403095974965 -1 -0.3442470787755155 0.2476239482948331 -1 -0.3793014550678746 0.4355750458470232 -1 -0.4355750458470233 -1 -0.8683224932269585 -0.3793014550678747 -0.8140038151558371 -0.8125264055577531 -0.341415219443973 -0.5801642759636387 -0.7944032231754787 -0.3161812110984424 -0.3115142818367282 -0.7923017233496296 -0.3161584352082275 -0.04190765866292387 -0.8032046179876169 -0.3407902125689194 0.2123695597044111 -0.8370732643708249 -0.3752962953335863 -1 -0.6273188902647351 -0.3442470787755155 -0.7955336969326938 -0.5792942127043131 -0.3161812110984424 -0.5646843064012441 -0.5646843064012441 -0.3055312766942536 -0.3135183238733733 -0.573874697240618 -0.3165352339648628 -0.05152675832124154 -0.6051770674028381 -0.3432961742759206 -1 -0.3333333333333334 -0.3333333333333334 -0.7925621338475191 -0.3123843450960537 -0.3161584352082275 -0.5736142867427285 -0.3146487976305885 -0.3165352339648628 -0.3333333333333334 -0.3333333333333334 -0.3333333333333334 -1 -0.02843403095974965 -0.3442470787755155 -0.8032046179876169 -0.04338506826100778 -0.3407902125689194 -0.6051770674028381 -0.0515267583212415 -0.3432961742759206 -1 0.2476239482948331 -0.3793014550678746 -0.8370732643708247 0.212369559704411 -0.3752962953335863 -1 0.4616292338335947 -0.4453335178567455 -1 -1.006104806516788 -0.1530693446328116 -0.8545461926722369 -1 -0.07960334289589369 -0.6162341647824687 -1 -0.04583972291639619 -0.3379261123011351 -1 -0.04583972291639622 -0.06585046443186951 -1 -0.07960334289589371 0.1494135627326191 -1 -0.1494135627326191 -1 -0.8545461926722369 -0.07960334289589369 -0.8079912606961404 -0.8075218724701219 -0.04895040855522845 -0.5831410439722148 -0.7961834990765161 -0.03695600289844803 -0.3377098334978813 -0.8032046179876169 -0.05079937881220972 -0.08234858546424638 -0.8353028290715074 -0.08234858546424631 -1 -0.6162341647824687 -0.04583972291639619 -0.7963895514283982 -0.5831410439722148 -0.03695600289844803 -0.5817172228353744 -0.5819232751872566 -0.03904867348362695 -0.3432961742759206 -0.6051770674028381 -0.05152675832124151 -1 -0.3379261123011351 -0.04583972291639622 -0.8032046179876169 -0.3381792217238998 -0.05079937881220974 -0.6051770674028381 -0.3432961742759205 -0.05152675832124153 -1 -0.06585046443186951 -0.07960334289589371 -0.8353028290715074 -0.08234858546424631 -0.08234858546424637 -1 0.1591741511495992 -0.1530693446328115 -1 -0.9938951934832123 0.1530693446328115 -0.8454952598849527 -1 0.2220341839761663 -0.6219146542414883 -1 0.2438293084829766 -0.3765389240912136 -1 0.2220341839761664 -0.149413562732619 -1 0.149413562732619 -1 -0.8454952598849527 0.2220341839761663 -0.810534405393754 -0.8104387849660973 0.2335860364310317 -0.6096078197115629 -0.8096543665020094 0.2306048627634921 -0.3752962953335863 -0.8370732643708247 0.212369559704411 -1 -0.6219146542414883 0.2438293084829766 -0.8096543665020094 -0.6097034401392195 0.2306048627634922 -0.6161328476322169 -0.6161328476322169 0.2322656952644337 -1 -0.3765389240912136 0.2220341839761664 -0.8370732643708249 -0.3752962953335863 0.2123695597044111 -1 -0.1591741511495993 0.1530693446328116 -1 -0.9837042840231505 0.4453335178567454 -0.8461607224870257 -1 0.4984057113285666 -0.6522449888415409 -1 0.4984057113285668 -0.4355750458470231 -1 0.4355750458470229 -1 -0.8461607224870257 0.4984057113285666 -0.8271095656859284 -0.8271095656859283 0.4835757032603482 -0.6409082981084915 -0.8431148103065231 0.4840231084150145 -1 -0.6522449888415409 0.4984057113285668 -0.8431148103065232 -0.6409082981084915 0.4840231084150146 -1 -0.4616292338335952 0.4453335178567457 -1 -0.9793509913857481 0.6974758478770012 -0.863017114008978 -1 0.7260342280179561 -0.6851104646758607 -1 0.6851104646758606 -1 -0.863017114008978 0.7260342280179561 -0.8555902898454376 -0.8555902898454373 0.711180579690875 -1 -0.7181248564912528 0.6974758478770011 -1 -0.9840238480274762 0.8875816042214114 -0.8780144988503786 -1 0.8780144988503784 -1 -0.903557756193935 0.8875816042214114 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n35-su.txt000066400000000000000000000023731277740313300217500ustar00rootroot00000000000000-1 -1 -1 -0.6546536707079773 -1 -1 3.165870343657673e-17 -1 -1 0.6546536707079772 -1 -1 1 -1 -1 -1 -0.6546536707079773 -1 -0.5573971265718596 -0.5399564631292615 -1 0.0973535897011211 -0.5399564631292616 -1 0.6093566592930021 -0.6093566592930021 -1 -1 3.165870343657673e-17 -1 -0.5399564631292615 0.07991292625852309 -1 -2.238608388357726e-17 2.238608388357726e-17 -1 -1 0.6546536707079772 -1 -0.609356659293002 0.609356659293002 -1 -1 1 -1 -1 -1.017429726245805 -0.6197942182163683 -0.5573971265718596 -1 -0.5399564631292615 0.0973535897011211 -1 -0.5399564631292616 0.609356659293002 -1 -0.609356659293002 -1 -0.5573971265718596 -0.5399564631292615 -0.5 -0.5 -0.5 0.07295018724673337 -0.5364750936233667 -0.5364750936233667 -1 0.0973535897011211 -0.5399564631292616 -0.5364750936233667 0.07295018724673336 -0.5364750936233667 -1 0.6372239444621728 -0.6197942182163684 -1 -1 -2.452272623447623e-17 -0.5399564631292615 -1 0.07991292625852309 2.238608388357727e-17 -1 -2.238608388357726e-17 -1 -0.5399564631292615 0.07991292625852309 -0.5364750936233668 -0.5364750936233667 0.07295018724673337 -1 -2.809071483552648e-17 2.452272623447624e-17 -1 -0.9825702737541955 0.6197942182163684 -0.6093566592930021 -1 0.6093566592930021 -1 -0.6372239444621728 0.6197942182163683 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n4-su.txt000066400000000000000000000000411277740313300216520ustar00rootroot00000000000000-1 -1 -1 1 -1 -1 -1 1 -1 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n56-su.txt000066400000000000000000000043371277740313300217550ustar00rootroot00000000000000-1 -1 -1 -0.7650553239294647 -1 -1 -0.2852315164806452 -1 -1 0.2852315164806452 -1 -1 0.7650553239294648 -1 -1 1 -1 -1 -1 -0.7650553239294647 -1 -0.6985224605744372 -0.6685854728009443 -1 -0.1734717632958623 -0.6530564734082754 -1 0.3671079333753813 -0.6685854728009443 -1 0.7167117388214668 -0.7167117388214668 -1 -1 -0.2852315164806452 -1 -0.6646358278317557 -0.1734717632958622 -1 -0.161892408872382 -0.1734717632958623 -1 0.2602677832742771 -0.2602677832742771 -1 -1 0.2852315164806452 -1 -0.6685854728009442 0.3371709456018883 -1 -0.2602677832742772 0.2602677832742772 -1 -1 0.7650553239294648 -1 -0.7167117388214669 0.7167117388214669 -1 -1 1 -1 -1 -1.018602009886564 -0.7278513041563376 -0.6985224605744372 -1 -0.6685854728009443 -0.1734717632958623 -1 -0.6530564734082754 0.3671079333753813 -1 -0.6685854728009443 0.7167117388214669 -1 -0.7167117388214669 -1 -0.6985224605744372 -0.6685854728009443 -0.6248486479855478 -0.6210733988362985 -0.6172981496870494 -0.1420622243495731 -0.6165445638324395 -0.6165445638324396 0.3252193685674472 -0.6626096842837236 -0.6626096842837237 -1 -0.1734717632958623 -0.6530564734082754 -0.6165445638324395 -0.1458374734988223 -0.6165445638324396 -0.1757831439105121 -0.1757831439105121 -0.6484337121789758 -1 0.3671079333753813 -0.6685854728009443 -0.6626096842837236 0.3252193685674472 -0.6626096842837237 -1 0.7464533140429011 -0.7278513041563375 -1 -1.009605733850168 -0.2660200487803084 -0.6646358278317557 -1 -0.1734717632958622 -0.161892408872382 -1 -0.1734717632958623 0.2602677832742772 -1 -0.2602677832742772 -1 -0.6646358278317557 -0.1734717632958622 -0.6165445638324395 -0.6165445638324395 -0.1496127226480716 -0.1757831439105121 -0.6484337121789757 -0.1757831439105121 -1 -0.161892408872382 -0.1734717632958623 -0.6484337121789757 -0.1757831439105121 -0.1757831439105121 -1 0.2756257826304767 -0.2660200487803083 -1 -0.9903942661498315 0.2660200487803083 -0.6685854728009442 -1 0.3371709456018883 -0.2602677832742772 -1 0.2602677832742771 -1 -0.6685854728009442 0.3371709456018883 -0.6626096842837236 -0.6626096842837236 0.3252193685674472 -1 -0.2756257826304768 0.2660200487803084 -1 -0.9813979901134363 0.7278513041563375 -0.7167117388214668 -1 0.7167117388214668 -1 -0.7464533140429012 0.7278513041563376 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/alpha-opt-n84-su.txt000066400000000000000000000070561277740313300217570ustar00rootroot00000000000000-1 -1 -1 -0.8302238962785669 -1 -1 -0.4688487934707143 -1 -1 -4.402416819847394e-17 -1 -1 0.4688487934707142 -1 -1 0.8302238962785673 -1 -1 1 -1 -1 -1 -0.8302238962785669 -1 -0.785677070323878 -0.7495146259590972 -1 -0.3709429352131199 -0.7379794592139324 -0.9999999999999999 0.1089223944270522 -0.7379794592139325 -1 0.5351916962829749 -0.749514625959097 -1 0.7823190928373265 -0.7823190928373265 -1 -1 -0.4688487934707143 -1 -0.7618003792878233 -0.3544285351979918 -1 -0.3333333333333334 -0.3333333333333334 -1 0.1162289144858152 -0.3544285351979919 -1 0.4291572341520904 -0.4291572341520907 -1 -1 -4.402416819847394e-17 -1 -0.7452859792726954 0.09240799441192424 -1 -0.347122015139229 0.09240799441192418 -1 3.112978786923807e-17 -3.112978786923807e-17 -1 -1 0.4688487934707142 -1 -0.7495146259590971 0.499029251918194 -1 -0.4291572341520907 0.4291572341520906 -1 -1 0.8302238962785673 -1 -0.7823190928373268 0.7823190928373268 -1 -1 1 -1 -1 -1.018433172162079 -0.7933575519544094 -0.785677070323878 -1 -0.7495146259590972 -0.3709429352131199 -0.9999999999999999 -0.7379794592139324 0.1089223944270522 -1 -0.7379794592139325 0.5351916962829749 -1 -0.749514625959097 0.7823190928373268 -1 -0.7823190928373268 -1 -0.785677070323878 -0.7495146259590972 -0.7157770234831242 -0.7083156987101027 -0.7008543739370812 -0.3125488502379717 -0.6890180358805323 -0.6877118753600426 0.1145070281891875 -0.6993650023530318 -0.6993650023530318 0.4845923204924462 -0.7422961602462231 -0.7422961602462232 -0.9999999999999999 -0.3709429352131199 -0.7379794592139324 -0.692361806812986 -0.3125488502379717 -0.6877118753600425 -0.3080449251199164 -0.31138869605237 -0.6866376858962239 0.08435657172203709 -0.3525905298606642 -0.7317660418613728 -1 0.1089223944270522 -0.7379794592139325 -0.6993650023530318 0.107045703416166 -0.6993650023530318 -0.3525905298606642 0.08435657172203698 -0.731766041861373 -1 0.5351916962829749 -0.749514625959097 -0.7422961602462232 0.4845923204924462 -0.7422961602462231 -1 0.8117907241164879 -0.793357551954409 -1 -1.015272818042119 -0.4383031573864757 -0.7618003792878233 -1 -0.3544285351979918 -0.3333333333333334 -1 -0.3333333333333334 0.1162289144858152 -1 -0.3544285351979919 0.4291572341520906 -1 -0.4291572341520907 -1 -0.7618003792878233 -0.3544285351979918 -0.692361806812986 -0.6910556462924963 -0.3125488502379717 -0.3080449251199164 -0.686637685896224 -0.3126948565728596 0.084356571722037 -0.731766041861373 -0.3525905298606641 -1 -0.3333333333333334 -0.3333333333333334 -0.686637685896224 -0.3093510856404061 -0.3126948565728598 -0.3333333333333334 -0.3333333333333334 -0.3333333333333334 -1 0.1162289144858152 -0.3544285351979919 -0.731766041861373 0.08435657172203707 -0.3525905298606643 -1 0.4535759754285947 -0.4383031573864756 -1 -1 3.410097405266474e-17 -0.7452859792726954 -1 0.09240799441192424 -0.347122015139229 -1 0.09240799441192418 -3.112978786923808e-17 -1 3.112978786923807e-17 -1 -0.7452859792726954 0.09240799441192424 -0.6993650023530318 -0.6993650023530318 0.09958437864314448 -0.3525905298606642 -0.731766041861373 0.08435657172203707 -1 -0.347122015139229 0.09240799441192418 -0.731766041861373 -0.3525905298606642 0.084356571722037 -1 3.906257112556933e-17 -3.410097405266475e-17 -1 -0.9847271819578806 0.4383031573864755 -0.7495146259590971 -1 0.499029251918194 -0.4291572341520906 -1 0.4291572341520905 -1 -0.7495146259590971 0.499029251918194 -0.7422961602462231 -0.7422961602462232 0.484592320492446 -1 -0.453575975428595 0.4383031573864756 -1 -0.981566827837921 0.793357551954409 -0.7823190928373265 -1 0.7823190928373265 -1 -0.8117907241164883 0.7933575519544094 -1 -1 1 pyfr-1.5.0/pyfr/quadrules/tet/shunn-ham-n10-d3-spu.txt000066400000000000000000000014031277740313300224270ustar00rootroot00000000000000-0.8523301965475532 -0.8523301965475532 0.5569905896426596 0.063510846457611867 0.5569905896426596 -0.8523301965475532 -0.8523301965475532 0.063510846457611867 -0.8523301965475532 0.5569905896426596 -0.8523301965475532 0.063510846457611867 -0.8523301965475532 -0.8523301965475532 -0.8523301965475532 0.063510846457611867 -0.187511312231898 -0.812488687768102 -0.187511312231898 0.179881657917148 -0.812488687768102 -0.187511312231898 -0.187511312231898 0.179881657917148 -0.187511312231898 -0.812488687768102 -0.812488687768102 0.179881657917148 -0.812488687768102 -0.187511312231898 -0.812488687768102 0.179881657917148 -0.812488687768102 -0.812488687768102 -0.187511312231898 0.179881657917148 -0.187511312231898 -0.187511312231898 -0.812488687768102 0.179881657917148 pyfr-1.5.0/pyfr/quadrules/tet/shunn-ham-n20-d5-spu.txt000066400000000000000000000030431277740313300224340ustar00rootroot00000000000000-0.9352948105455122 -0.9352948105455122 0.8058844316365366 0.009422766392626 0.8058844316365366 -0.9352948105455122 -0.9352948105455122 0.009422766392626 -0.9352948105455122 0.8058844316365366 -0.9352948105455122 0.009422766392626 -0.9352948105455122 -0.9352948105455122 -0.9352948105455122 0.009422766392626 -0.380461391454276 -0.380461391454276 -0.858615825637172 0.13591589105315733 -0.858615825637172 -0.380461391454276 -0.380461391454276 0.13591589105315733 -0.380461391454276 -0.858615825637172 -0.380461391454276 0.13591589105315733 -0.380461391454276 -0.380461391454276 -0.380461391454276 0.13591589105315733 0.2331930661238736 -0.8792791169497158 -0.474634832224442 0.062664891962516933 0.2331930661238736 -0.8792791169497158 -0.8792791169497158 0.062664891962516933 -0.8792791169497158 -0.8792791169497158 0.2331930661238736 0.062664891962516933 -0.474634832224442 0.2331930661238736 -0.8792791169497158 0.062664891962516933 -0.8792791169497158 -0.474634832224442 0.2331930661238736 0.062664891962516933 -0.8792791169497158 0.2331930661238736 -0.8792791169497158 0.062664891962516933 -0.474634832224442 -0.8792791169497158 0.2331930661238736 0.062664891962516933 -0.8792791169497158 -0.474634832224442 -0.8792791169497158 0.062664891962516933 -0.8792791169497158 -0.8792791169497158 -0.474634832224442 0.062664891962516933 -0.8792791169497158 0.2331930661238736 -0.474634832224442 0.062664891962516933 -0.474634832224442 -0.8792791169497158 -0.8792791169497158 0.062664891962516933 0.2331930661238736 -0.474634832224442 -0.8792791169497158 0.062664891962516933 pyfr-1.5.0/pyfr/quadrules/tet/shunn-ham-n35-d6-spu.txt000066400000000000000000000051451277740313300224500ustar00rootroot00000000000000-0.5 -0.5 -0.5 0.12423276415937867 -0.946526448891253 -0.946526448891253 0.839579346673759 0.0029200618620517333 0.839579346673759 -0.946526448891253 -0.946526448891253 0.0029200618620517333 -0.946526448891253 0.839579346673759 -0.946526448891253 0.0029200618620517333 -0.946526448891253 -0.946526448891253 -0.946526448891253 0.0029200618620517333 -0.9095091999689656 -0.0904908000310344 -0.9095091999689656 0.0333740527582328 -0.0904908000310344 -0.9095091999689656 -0.9095091999689656 0.0333740527582328 -0.9095091999689656 -0.0904908000310344 -0.0904908000310344 0.0333740527582328 -0.0904908000310344 -0.9095091999689656 -0.0904908000310344 0.0333740527582328 -0.0904908000310344 -0.0904908000310344 -0.9095091999689656 0.0333740527582328 -0.9095091999689656 -0.9095091999689656 -0.0904908000310344 0.0333740527582328 0.4955197769636168 -0.9217955187287024 -0.651928739506212 0.019119422690355333 0.4955197769636168 -0.9217955187287024 -0.9217955187287024 0.019119422690355333 -0.9217955187287024 -0.9217955187287024 0.4955197769636168 0.019119422690355333 -0.651928739506212 0.4955197769636168 -0.9217955187287024 0.019119422690355333 -0.9217955187287024 -0.651928739506212 0.4955197769636168 0.019119422690355333 -0.9217955187287024 0.4955197769636168 -0.9217955187287024 0.019119422690355333 -0.651928739506212 -0.9217955187287024 0.4955197769636168 0.019119422690355333 -0.9217955187287024 -0.651928739506212 -0.9217955187287024 0.019119422690355333 -0.9217955187287024 -0.9217955187287024 -0.651928739506212 0.019119422690355333 -0.9217955187287024 0.4955197769636168 -0.651928739506212 0.019119422690355333 -0.651928739506212 -0.9217955187287024 -0.9217955187287024 0.019119422690355333 0.4955197769636168 -0.651928739506212 -0.9217955187287024 0.019119422690355333 0.006237290029196 -0.55359792407537 -0.899041441878456 0.0639785777410072 0.006237290029196 -0.55359792407537 -0.55359792407537 0.0639785777410072 -0.55359792407537 -0.55359792407537 0.006237290029196 0.0639785777410072 -0.899041441878456 0.006237290029196 -0.55359792407537 0.0639785777410072 -0.55359792407537 -0.899041441878456 0.006237290029196 0.0639785777410072 -0.55359792407537 0.006237290029196 -0.55359792407537 0.0639785777410072 -0.899041441878456 -0.55359792407537 0.006237290029196 0.0639785777410072 -0.55359792407537 -0.899041441878456 -0.55359792407537 0.0639785777410072 -0.55359792407537 -0.55359792407537 -0.899041441878456 0.0639785777410072 -0.55359792407537 0.006237290029196 -0.899041441878456 0.0639785777410072 -0.899041441878456 -0.55359792407537 -0.55359792407537 0.0639785777410072 0.006237290029196 -0.899041441878456 -0.55359792407537 0.0639785777410072 pyfr-1.5.0/pyfr/quadrules/tet/shunn-ham-n4-d2-spu.txt000066400000000000000000000004611277740313300223540ustar00rootroot00000000000000-0.723606797749978 -0.723606797749978 0.170820393249934 0.33333333333333333 0.170820393249934 -0.723606797749978 -0.723606797749978 0.33333333333333333 -0.723606797749978 0.170820393249934 -0.723606797749978 0.33333333333333333 -0.723606797749978 -0.723606797749978 -0.723606797749978 0.33333333333333333 pyfr-1.5.0/pyfr/quadrules/tet/shunn-ham-n56-d8-spu.txt000066400000000000000000000103451277740313300224530ustar00rootroot00000000000000-0.9700958696938816 -0.9700958696938816 0.9102876090816448 0.0013830816448186667 0.9102876090816448 -0.9700958696938816 -0.9700958696938816 0.0013830816448186667 -0.9700958696938816 0.9102876090816448 -0.9700958696938816 0.0013830816448186667 -0.9700958696938816 -0.9700958696938816 -0.9700958696938816 0.0013830816448186667 -0.731043330414012 -0.731043330414012 0.193129991242036 0.0488388488540144 0.193129991242036 -0.731043330414012 -0.731043330414012 0.0488388488540144 -0.731043330414012 0.193129991242036 -0.731043330414012 0.0488388488540144 -0.731043330414012 -0.731043330414012 -0.731043330414012 0.0488388488540144 0.55995201688308 -0.931807957607477 -0.696336101668126 0.012802219386597333 0.55995201688308 -0.931807957607477 -0.931807957607477 0.012802219386597333 -0.931807957607477 -0.931807957607477 0.55995201688308 0.012802219386597333 -0.696336101668126 0.55995201688308 -0.931807957607477 0.012802219386597333 -0.931807957607477 -0.696336101668126 0.55995201688308 0.012802219386597333 -0.931807957607477 0.55995201688308 -0.931807957607477 0.012802219386597333 -0.696336101668126 -0.931807957607477 0.55995201688308 0.012802219386597333 -0.931807957607477 -0.696336101668126 -0.931807957607477 0.012802219386597333 -0.931807957607477 -0.931807957607477 -0.696336101668126 0.012802219386597333 -0.931807957607477 0.55995201688308 -0.696336101668126 0.012802219386597333 -0.696336101668126 -0.931807957607477 -0.931807957607477 0.012802219386597333 0.55995201688308 -0.696336101668126 -0.931807957607477 0.012802219386597333 0.1053112862120352 -0.9075896991699966 -0.290131887872042 0.021932530239764267 0.1053112862120352 -0.9075896991699966 -0.9075896991699966 0.021932530239764267 -0.9075896991699966 -0.9075896991699966 0.1053112862120352 0.021932530239764267 -0.290131887872042 0.1053112862120352 -0.9075896991699966 0.021932530239764267 -0.9075896991699966 -0.290131887872042 0.1053112862120352 0.021932530239764267 -0.9075896991699966 0.1053112862120352 -0.9075896991699966 0.021932530239764267 -0.290131887872042 -0.9075896991699966 0.1053112862120352 0.021932530239764267 -0.9075896991699966 -0.290131887872042 -0.9075896991699966 0.021932530239764267 -0.9075896991699966 -0.9075896991699966 -0.290131887872042 0.021932530239764267 -0.9075896991699966 0.1053112862120352 -0.290131887872042 0.021932530239764267 -0.290131887872042 -0.9075896991699966 -0.9075896991699966 0.021932530239764267 0.1053112862120352 -0.290131887872042 -0.9075896991699966 0.021932530239764267 0.076208645776001 -0.543619077862478 -0.988970490051045 0.020499702201774667 0.076208645776001 -0.543619077862478 -0.543619077862478 0.020499702201774667 -0.543619077862478 -0.543619077862478 0.076208645776001 0.020499702201774667 -0.988970490051045 0.076208645776001 -0.543619077862478 0.020499702201774667 -0.543619077862478 -0.988970490051045 0.076208645776001 0.020499702201774667 -0.543619077862478 0.076208645776001 -0.543619077862478 0.020499702201774667 -0.988970490051045 -0.543619077862478 0.076208645776001 0.020499702201774667 -0.543619077862478 -0.988970490051045 -0.543619077862478 0.020499702201774667 -0.543619077862478 -0.543619077862478 -0.988970490051045 0.020499702201774667 -0.543619077862478 0.076208645776001 -0.988970490051045 0.020499702201774667 -0.988970490051045 -0.543619077862478 -0.543619077862478 0.020499702201774667 0.076208645776001 -0.988970490051045 -0.543619077862478 0.020499702201774667 -0.607632480850882 -0.295389479824012 -0.801588559501094 0.039136015783364 -0.607632480850882 -0.295389479824012 -0.295389479824012 0.039136015783364 -0.295389479824012 -0.295389479824012 -0.607632480850882 0.039136015783364 -0.801588559501094 -0.607632480850882 -0.295389479824012 0.039136015783364 -0.295389479824012 -0.801588559501094 -0.607632480850882 0.039136015783364 -0.295389479824012 -0.607632480850882 -0.295389479824012 0.039136015783364 -0.801588559501094 -0.295389479824012 -0.607632480850882 0.039136015783364 -0.295389479824012 -0.801588559501094 -0.295389479824012 0.039136015783364 -0.295389479824012 -0.295389479824012 -0.801588559501094 0.039136015783364 -0.295389479824012 -0.607632480850882 -0.801588559501094 0.039136015783364 -0.801588559501094 -0.295389479824012 -0.295389479824012 0.039136015783364 -0.607632480850882 -0.801588559501094 -0.295389479824012 0.039136015783364 pyfr-1.5.0/pyfr/quadrules/tet/shunn-ham-n84-d9-spu.txt000066400000000000000000000145351277740313300224620ustar00rootroot00000000000000-0.946243051170366 -0.946243051170366 0.838729153511098 0.0028599135257546667 0.838729153511098 -0.946243051170366 -0.946243051170366 0.0028599135257546667 -0.946243051170366 0.838729153511098 -0.946243051170366 0.0028599135257546667 -0.946243051170366 -0.946243051170366 -0.946243051170366 0.0028599135257546667 -0.62571864839306 -0.62571864839306 -0.12284405482082 0.027768855587692 -0.12284405482082 -0.62571864839306 -0.62571864839306 0.027768855587692 -0.62571864839306 -0.12284405482082 -0.62571864839306 0.027768855587692 -0.62571864839306 -0.62571864839306 -0.62571864839306 0.027768855587692 -0.355777136338286 -0.355777136338286 -0.932668590985142 0.030667575559048 -0.932668590985142 -0.355777136338286 -0.355777136338286 0.030667575559048 -0.355777136338286 -0.932668590985142 -0.355777136338286 0.030667575559048 -0.355777136338286 -0.355777136338286 -0.355777136338286 0.030667575559048 -0.947151670255874 -0.052848329744126 -0.947151670255874 0.0096135147526066667 -0.052848329744126 -0.947151670255874 -0.947151670255874 0.0096135147526066667 -0.947151670255874 -0.052848329744126 -0.052848329744126 0.0096135147526066667 -0.052848329744126 -0.947151670255874 -0.052848329744126 0.0096135147526066667 -0.052848329744126 -0.052848329744126 -0.947151670255874 0.0096135147526066667 -0.947151670255874 -0.947151670255874 -0.052848329744126 0.0096135147526066667 -0.704090524054712 -0.295909475945288 -0.704090524054712 0.041065225546282667 -0.295909475945288 -0.704090524054712 -0.704090524054712 0.041065225546282667 -0.704090524054712 -0.295909475945288 -0.295909475945288 0.041065225546282667 -0.295909475945288 -0.704090524054712 -0.295909475945288 0.041065225546282667 -0.295909475945288 -0.295909475945288 -0.704090524054712 0.041065225546282667 -0.704090524054712 -0.704090524054712 -0.295909475945288 0.041065225546282667 0.464619819385896 -0.958093115559888 -0.54843358826612 0.0058104597518186667 0.464619819385896 -0.958093115559888 -0.958093115559888 0.0058104597518186667 -0.958093115559888 -0.958093115559888 0.464619819385896 0.0058104597518186667 -0.54843358826612 0.464619819385896 -0.958093115559888 0.0058104597518186667 -0.958093115559888 -0.54843358826612 0.464619819385896 0.0058104597518186667 -0.958093115559888 0.464619819385896 -0.958093115559888 0.0058104597518186667 -0.54843358826612 -0.958093115559888 0.464619819385896 0.0058104597518186667 -0.958093115559888 -0.54843358826612 -0.958093115559888 0.0058104597518186667 -0.958093115559888 -0.958093115559888 -0.54843358826612 0.0058104597518186667 -0.958093115559888 0.464619819385896 -0.54843358826612 0.0058104597518186667 -0.54843358826612 -0.958093115559888 -0.958093115559888 0.0058104597518186667 0.464619819385896 -0.54843358826612 -0.958093115559888 0.0058104597518186667 0.295115188173952 -0.806020533753068 -0.683074120667816 0.011458040903777333 0.295115188173952 -0.806020533753068 -0.806020533753068 0.011458040903777333 -0.806020533753068 -0.806020533753068 0.295115188173952 0.011458040903777333 -0.683074120667816 0.295115188173952 -0.806020533753068 0.011458040903777333 -0.806020533753068 -0.683074120667816 0.295115188173952 0.011458040903777333 -0.806020533753068 0.295115188173952 -0.806020533753068 0.011458040903777333 -0.683074120667816 -0.806020533753068 0.295115188173952 0.011458040903777333 -0.806020533753068 -0.683074120667816 -0.806020533753068 0.011458040903777333 -0.806020533753068 -0.806020533753068 -0.683074120667816 0.011458040903777333 -0.806020533753068 0.295115188173952 -0.683074120667816 0.011458040903777333 -0.683074120667816 -0.806020533753068 -0.806020533753068 0.011458040903777333 0.295115188173952 -0.683074120667816 -0.806020533753068 0.011458040903777333 0.585878512939236 -0.804783674219116 -0.976311164501004 0.0064840852065493333 0.585878512939236 -0.804783674219116 -0.804783674219116 0.0064840852065493333 -0.804783674219116 -0.804783674219116 0.585878512939236 0.0064840852065493333 -0.976311164501004 0.585878512939236 -0.804783674219116 0.0064840852065493333 -0.804783674219116 -0.976311164501004 0.585878512939236 0.0064840852065493333 -0.804783674219116 0.585878512939236 -0.804783674219116 0.0064840852065493333 -0.976311164501004 -0.804783674219116 0.585878512939236 0.0064840852065493333 -0.804783674219116 -0.976311164501004 -0.804783674219116 0.0064840852065493333 -0.804783674219116 -0.804783674219116 -0.976311164501004 0.0064840852065493333 -0.804783674219116 0.585878512939236 -0.976311164501004 0.0064840852065493333 -0.976311164501004 -0.804783674219116 -0.804783674219116 0.0064840852065493333 0.585878512939236 -0.976311164501004 -0.804783674219116 0.0064840852065493333 0.082368825600474 -0.732883678592864 -0.406997958913752 0.020793520104345333 -0.732883678592864 -0.406997958913752 0.082368825600474 0.020793520104345333 -0.732883678592864 0.082368825600474 -0.406997958913752 0.020793520104345333 -0.406997958913752 0.082368825600474 -0.942487188093858 0.020793520104345333 -0.406997958913752 0.082368825600474 -0.732883678592864 0.020793520104345333 -0.942487188093858 0.082368825600474 -0.406997958913752 0.020793520104345333 -0.406997958913752 -0.732883678592864 -0.942487188093858 0.020793520104345333 -0.406997958913752 -0.942487188093858 0.082368825600474 0.020793520104345333 -0.942487188093858 -0.732883678592864 -0.406997958913752 0.020793520104345333 0.082368825600474 -0.732883678592864 -0.942487188093858 0.020793520104345333 -0.942487188093858 0.082368825600474 -0.732883678592864 0.020793520104345333 -0.406997958913752 -0.732883678592864 0.082368825600474 0.020793520104345333 -0.942487188093858 -0.732883678592864 0.082368825600474 0.020793520104345333 0.082368825600474 -0.942487188093858 -0.406997958913752 0.020793520104345333 -0.406997958913752 -0.942487188093858 -0.732883678592864 0.020793520104345333 -0.732883678592864 -0.942487188093858 -0.406997958913752 0.020793520104345333 0.082368825600474 -0.942487188093858 -0.732883678592864 0.020793520104345333 -0.732883678592864 -0.942487188093858 0.082368825600474 0.020793520104345333 -0.732883678592864 0.082368825600474 -0.942487188093858 0.020793520104345333 -0.942487188093858 -0.406997958913752 0.082368825600474 0.020793520104345333 0.082368825600474 -0.406997958913752 -0.942487188093858 0.020793520104345333 0.082368825600474 -0.406997958913752 -0.732883678592864 0.020793520104345333 -0.732883678592864 -0.406997958913752 -0.942487188093858 0.020793520104345333 -0.942487188093858 -0.406997958913752 -0.732883678592864 0.020793520104345333 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n1-d1-sp.txt000066400000000000000000000002431277740313300237200ustar00rootroot00000000000000 -0.5 -0.5 -0.5 1.3333333333333333333333333333333333333 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n14-d5-sp.txt000066400000000000000000000046221277740313300240150ustar00rootroot00000000000000 -0.37822816147339878040530853247308433401 -0.37822816147339878040530853247308433401 -0.86531551557980365878407440258074699796 0.15025056762402113439891420311104844508 -0.37822816147339878040530853247308433401 -0.86531551557980365878407440258074699796 -0.37822816147339878040530853247308433401 0.15025056762402113439891420311104844508 -0.86531551557980365878407440258074699796 -0.37822816147339878040530853247308433401 -0.37822816147339878040530853247308433401 0.15025056762402113439891420311104844508 -0.37822816147339878040530853247308433401 -0.37822816147339878040530853247308433401 -0.37822816147339878040530853247308433401 0.15025056762402113439891420311104844508 -0.81452949937821754719535217252593878951 -0.81452949937821754719535217252593878951 0.44358849813465264158605651757781636853 0.097990724155149266058280273981770004697 -0.81452949937821754719535217252593878951 0.44358849813465264158605651757781636853 -0.81452949937821754719535217252593878951 0.097990724155149266058280273981770004697 0.44358849813465264158605651757781636853 -0.81452949937821754719535217252593878951 -0.81452949937821754719535217252593878951 0.097990724155149266058280273981770004697 -0.81452949937821754719535217252593878951 -0.81452949937821754719535217252593878951 -0.81452949937821754719535217252593878951 0.097990724155149266058280273981770004697 -0.90899259174870070101623894744132112187 -0.091007408251299298983761052558678878131 -0.091007408251299298983761052558678878131 0.05672802770277528858409257082700992237 -0.091007408251299298983761052558678878131 -0.90899259174870070101623894744132112187 -0.091007408251299298983761052558678878131 0.05672802770277528858409257082700992237 -0.90899259174870070101623894744132112187 -0.90899259174870070101623894744132112187 -0.091007408251299298983761052558678878131 0.05672802770277528858409257082700992237 -0.90899259174870070101623894744132112187 -0.091007408251299298983761052558678878131 -0.90899259174870070101623894744132112187 0.05672802770277528858409257082700992237 -0.091007408251299298983761052558678878131 -0.90899259174870070101623894744132112187 -0.90899259174870070101623894744132112187 0.05672802770277528858409257082700992237 -0.091007408251299298983761052558678878131 -0.091007408251299298983761052558678878131 -0.90899259174870070101623894744132112187 0.05672802770277528858409257082700992237 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n24-d6-sp.txt000066400000000000000000000100101277740313300240030ustar00rootroot00000000000000-0.91865208293077729376884110208717988144 -0.91865208293077729376884110208717988144 0.75595624879233188130652330626153964433 0.013436281407094190597350983261249151023 -0.91865208293077729376884110208717988144 0.75595624879233188130652330626153964433 -0.91865208293077729376884110208717988144 0.013436281407094190597350983261249151023 0.75595624879233188130652330626153964433 -0.91865208293077729376884110208717988144 -0.91865208293077729376884110208717988144 0.013436281407094190597350983261249151023 -0.91865208293077729376884110208717988144 -0.91865208293077729376884110208717988144 -0.91865208293077729376884110208717988144 0.013436281407094190597350983261249151023 -0.35532421971544897931201105847501574951 -0.35532421971544897931201105847501574951 -0.93402734085365306206396682457495275146 0.073809575391539629460204370471634688549 -0.35532421971544897931201105847501574951 -0.93402734085365306206396682457495275146 -0.35532421971544897931201105847501574951 0.073809575391539629460204370471634688549 -0.93402734085365306206396682457495275146 -0.35532421971544897931201105847501574951 -0.35532421971544897931201105847501574951 0.073809575391539629460204370471634688549 -0.35532421971544897931201105847501574951 -0.35532421971544897931201105847501574951 -0.35532421971544897931201105847501574951 0.073809575391539629460204370471634688549 -0.5707942574816959414223215612274300172 -0.5707942574816959414223215612274300172 -0.28761722755491217573303531631770994839 0.053230333677556656132920836743306636618 -0.5707942574816959414223215612274300172 -0.28761722755491217573303531631770994839 -0.5707942574816959414223215612274300172 0.053230333677556656132920836743306636618 -0.28761722755491217573303531631770994839 -0.5707942574816959414223215612274300172 -0.5707942574816959414223215612274300172 0.053230333677556656132920836743306636618 -0.5707942574816959414223215612274300172 -0.5707942574816959414223215612274300172 -0.5707942574816959414223215612274300172 0.053230333677556656132920836743306636618 0.20601132958329828273486227812187937257 -0.87267799624996494940152894478854603924 -0.46065533708336838393180438854478729409 0.064285714285714285714285714285714285714 0.20601132958329828273486227812187937257 -0.87267799624996494940152894478854603924 -0.87267799624996494940152894478854603924 0.064285714285714285714285714285714285714 -0.87267799624996494940152894478854603924 -0.87267799624996494940152894478854603924 0.20601132958329828273486227812187937257 0.064285714285714285714285714285714285714 -0.46065533708336838393180438854478729409 0.20601132958329828273486227812187937257 -0.87267799624996494940152894478854603924 0.064285714285714285714285714285714285714 -0.87267799624996494940152894478854603924 -0.46065533708336838393180438854478729409 0.20601132958329828273486227812187937257 0.064285714285714285714285714285714285714 -0.87267799624996494940152894478854603924 0.20601132958329828273486227812187937257 -0.87267799624996494940152894478854603924 0.064285714285714285714285714285714285714 -0.46065533708336838393180438854478729409 -0.87267799624996494940152894478854603924 0.20601132958329828273486227812187937257 0.064285714285714285714285714285714285714 -0.87267799624996494940152894478854603924 -0.46065533708336838393180438854478729409 -0.87267799624996494940152894478854603924 0.064285714285714285714285714285714285714 -0.87267799624996494940152894478854603924 -0.87267799624996494940152894478854603924 -0.46065533708336838393180438854478729409 0.064285714285714285714285714285714285714 -0.87267799624996494940152894478854603924 0.20601132958329828273486227812187937257 -0.46065533708336838393180438854478729409 0.064285714285714285714285714285714285714 -0.46065533708336838393180438854478729409 -0.87267799624996494940152894478854603924 -0.87267799624996494940152894478854603924 0.064285714285714285714285714285714285714 0.20601132958329828273486227812187937257 -0.46065533708336838393180438854478729409 -0.87267799624996494940152894478854603924 0.064285714285714285714285714285714285714 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n35-d7-sp.txt000066400000000000000000000135411277740313300240220ustar00rootroot00000000000000 -0.5 -0.5 -0.5 0.12731371928550779848077124815630184245 -0.36859770044359440115314000081337702315 -0.36859770044359440115314000081337702315 -0.89420689866921679654057999755986893056 0.05643944161328937210171489439806231665 -0.36859770044359440115314000081337702315 -0.89420689866921679654057999755986893056 -0.36859770044359440115314000081337702315 0.05643944161328937210171489439806231665 -0.89420689866921679654057999755986893056 -0.36859770044359440115314000081337702315 -0.36859770044359440115314000081337702315 0.05643944161328937210171489439806231665 -0.36859770044359440115314000081337702315 -0.36859770044359440115314000081337702315 -0.36859770044359440115314000081337702315 0.05643944161328937210171489439806231665 -0.89902035480320726247389235402687506805 -0.10097964519679273752610764597312493195 -0.10097964519679273752610764597312493195 0.04252923711047677324569976544392327613 -0.10097964519679273752610764597312493195 -0.89902035480320726247389235402687506805 -0.10097964519679273752610764597312493195 0.04252923711047677324569976544392327613 -0.89902035480320726247389235402687506805 -0.89902035480320726247389235402687506805 -0.10097964519679273752610764597312493195 0.04252923711047677324569976544392327613 -0.89902035480320726247389235402687506805 -0.10097964519679273752610764597312493195 -0.89902035480320726247389235402687506805 0.04252923711047677324569976544392327613 -0.10097964519679273752610764597312493195 -0.89902035480320726247389235402687506805 -0.89902035480320726247389235402687506805 0.04252923711047677324569976544392327613 -0.10097964519679273752610764597312493195 -0.10097964519679273752610764597312493195 -0.89902035480320726247389235402687506805 0.04252923711047677324569976544392327613 0.15034327517400004696648315404461503933 -0.62233233794799790452713779229082848999 -0.90567859927800423791220756946295805935 0.049609507637779495159487414921974827082 0.15034327517400004696648315404461503933 -0.62233233794799790452713779229082848999 -0.62233233794799790452713779229082848999 0.049609507637779495159487414921974827082 -0.62233233794799790452713779229082848999 -0.62233233794799790452713779229082848999 0.15034327517400004696648315404461503933 0.049609507637779495159487414921974827082 -0.90567859927800423791220756946295805935 0.15034327517400004696648315404461503933 -0.62233233794799790452713779229082848999 0.049609507637779495159487414921974827082 -0.62233233794799790452713779229082848999 -0.90567859927800423791220756946295805935 0.15034327517400004696648315404461503933 0.049609507637779495159487414921974827082 -0.62233233794799790452713779229082848999 0.15034327517400004696648315404461503933 -0.62233233794799790452713779229082848999 0.049609507637779495159487414921974827082 -0.90567859927800423791220756946295805935 -0.62233233794799790452713779229082848999 0.15034327517400004696648315404461503933 0.049609507637779495159487414921974827082 -0.62233233794799790452713779229082848999 -0.90567859927800423791220756946295805935 -0.62233233794799790452713779229082848999 0.049609507637779495159487414921974827082 -0.62233233794799790452713779229082848999 -0.62233233794799790452713779229082848999 -0.90567859927800423791220756946295805935 0.049609507637779495159487414921974827082 -0.62233233794799790452713779229082848999 0.15034327517400004696648315404461503933 -0.90567859927800423791220756946295805935 0.049609507637779495159487414921974827082 -0.90567859927800423791220756946295805935 -0.62233233794799790452713779229082848999 -0.62233233794799790452713779229082848999 0.049609507637779495159487414921974827082 0.15034327517400004696648315404461503933 -0.90567859927800423791220756946295805935 -0.62233233794799790452713779229082848999 0.049609507637779495159487414921974827082 0.62166048219709712223621075969646478759 -0.95746905491703350802232779700036011785 -0.70672237236303010619155516569574455189 0.010814361106537788754804577988128720209 0.62166048219709712223621075969646478759 -0.95746905491703350802232779700036011785 -0.95746905491703350802232779700036011785 0.010814361106537788754804577988128720209 -0.95746905491703350802232779700036011785 -0.95746905491703350802232779700036011785 0.62166048219709712223621075969646478759 0.010814361106537788754804577988128720209 -0.70672237236303010619155516569574455189 0.62166048219709712223621075969646478759 -0.95746905491703350802232779700036011785 0.010814361106537788754804577988128720209 -0.95746905491703350802232779700036011785 -0.70672237236303010619155516569574455189 0.62166048219709712223621075969646478759 0.010814361106537788754804577988128720209 -0.95746905491703350802232779700036011785 0.62166048219709712223621075969646478759 -0.95746905491703350802232779700036011785 0.010814361106537788754804577988128720209 -0.70672237236303010619155516569574455189 -0.95746905491703350802232779700036011785 0.62166048219709712223621075969646478759 0.010814361106537788754804577988128720209 -0.95746905491703350802232779700036011785 -0.70672237236303010619155516569574455189 -0.95746905491703350802232779700036011785 0.010814361106537788754804577988128720209 -0.95746905491703350802232779700036011785 -0.95746905491703350802232779700036011785 -0.70672237236303010619155516569574455189 0.010814361106537788754804577988128720209 -0.95746905491703350802232779700036011785 0.62166048219709712223621075969646478759 -0.70672237236303010619155516569574455189 0.010814361106537788754804577988128720209 -0.70672237236303010619155516569574455189 -0.95746905491703350802232779700036011785 -0.95746905491703350802232779700036011785 0.010814361106537788754804577988128720209 0.62166048219709712223621075969646478759 -0.70672237236303010619155516569574455189 -0.95746905491703350802232779700036011785 0.010814361106537788754804577988128720209 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n4-d2-sp.txt000066400000000000000000000012541277740313300237270ustar00rootroot00000000000000-0.72360679774997896964091736687312762354 -0.72360679774997896964091736687312762354 0.17082039324993690892275210061938287063 0.33333333333333333333333333333333333333 -0.72360679774997896964091736687312762354 0.17082039324993690892275210061938287063 -0.72360679774997896964091736687312762354 0.33333333333333333333333333333333333333 0.17082039324993690892275210061938287063 -0.72360679774997896964091736687312762354 -0.72360679774997896964091736687312762354 0.33333333333333333333333333333333333333 -0.72360679774997896964091736687312762354 -0.72360679774997896964091736687312762354 -0.72360679774997896964091736687312762354 0.33333333333333333333333333333333333333 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n46-d8-sp.txt000066400000000000000000000175621277740313300240340ustar00rootroot00000000000000 -0.78409455007557830303561343854585276851 -0.78409455007557830303561343854585276851 0.35228365022673490910684031563755830553 0.035235534544545108539097313565645827902 -0.78409455007557830303561343854585276851 0.35228365022673490910684031563755830553 -0.78409455007557830303561343854585276851 0.035235534544545108539097313565645827902 0.35228365022673490910684031563755830553 -0.78409455007557830303561343854585276851 -0.78409455007557830303561343854585276851 0.035235534544545108539097313565645827902 -0.78409455007557830303561343854585276851 -0.78409455007557830303561343854585276851 -0.78409455007557830303561343854585276851 0.035235534544545108539097313565645827902 -0.629781024434826859446183999496503797 -0.629781024434826859446183999496503797 -0.110656926695519421661448001510488609 0.069375663418318043619861410028472677606 -0.629781024434826859446183999496503797 -0.110656926695519421661448001510488609 -0.629781024434826859446183999496503797 0.069375663418318043619861410028472677606 -0.110656926695519421661448001510488609 -0.629781024434826859446183999496503797 -0.629781024434826859446183999496503797 0.069375663418318043619861410028472677606 -0.629781024434826859446183999496503797 -0.629781024434826859446183999496503797 -0.629781024434826859446183999496503797 0.069375663418318043619861410028472677606 -0.91536691263046543675183591431855057189 -0.91536691263046543675183591431855057189 0.74610073789139631025550774295565171568 0.010033674871386933040967405110292766211 -0.91536691263046543675183591431855057189 0.74610073789139631025550774295565171568 -0.91536691263046543675183591431855057189 0.010033674871386933040967405110292766211 0.74610073789139631025550774295565171568 -0.91536691263046543675183591431855057189 -0.91536691263046543675183591431855057189 0.010033674871386933040967405110292766211 -0.91536691263046543675183591431855057189 -0.91536691263046543675183591431855057189 -0.91536691263046543675183591431855057189 0.010033674871386933040967405110292766211 -0.37163658175192200927334245312373662702 -0.37163658175192200927334245312373662702 -0.88509025474423397217997264062879011895 0.055685043809246530275971813171748834223 -0.37163658175192200927334245312373662702 -0.88509025474423397217997264062879011895 -0.37163658175192200927334245312373662702 0.055685043809246530275971813171748834223 -0.88509025474423397217997264062879011895 -0.37163658175192200927334245312373662702 -0.37163658175192200927334245312373662702 0.055685043809246530275971813171748834223 -0.37163658175192200927334245312373662702 -0.37163658175192200927334245312373662702 -0.37163658175192200927334245312373662702 0.055685043809246530275971813171748834223 -0.12881734283233958954373367640680593526 -0.87118265716766041045626632359319406474 -0.87118265716766041045626632359319406474 0.048374573681745097334959362864457783412 -0.87118265716766041045626632359319406474 -0.12881734283233958954373367640680593526 -0.87118265716766041045626632359319406474 0.048374573681745097334959362864457783412 -0.12881734283233958954373367640680593526 -0.12881734283233958954373367640680593526 -0.87118265716766041045626632359319406474 0.048374573681745097334959362864457783412 -0.12881734283233958954373367640680593526 -0.87118265716766041045626632359319406474 -0.12881734283233958954373367640680593526 0.048374573681745097334959362864457783412 -0.87118265716766041045626632359319406474 -0.12881734283233958954373367640680593526 -0.12881734283233958954373367640680593526 0.048374573681745097334959362864457783412 -0.87118265716766041045626632359319406474 -0.87118265716766041045626632359319406474 -0.12881734283233958954373367640680593526 0.048374573681745097334959362864457783412 0.43492812685261664658005711425116290088 -0.95713213974573885031100182115353118963 -0.52066384736113894595805347194410052161 0.0095425371877925775336250150191510735196 0.43492812685261664658005711425116290088 -0.95713213974573885031100182115353118963 -0.95713213974573885031100182115353118963 0.0095425371877925775336250150191510735196 -0.95713213974573885031100182115353118963 -0.95713213974573885031100182115353118963 0.43492812685261664658005711425116290088 0.0095425371877925775336250150191510735196 -0.52066384736113894595805347194410052161 0.43492812685261664658005711425116290088 -0.95713213974573885031100182115353118963 0.0095425371877925775336250150191510735196 -0.95713213974573885031100182115353118963 -0.52066384736113894595805347194410052161 0.43492812685261664658005711425116290088 0.0095425371877925775336250150191510735196 -0.95713213974573885031100182115353118963 0.43492812685261664658005711425116290088 -0.95713213974573885031100182115353118963 0.0095425371877925775336250150191510735196 -0.52066384736113894595805347194410052161 -0.95713213974573885031100182115353118963 0.43492812685261664658005711425116290088 0.0095425371877925775336250150191510735196 -0.95713213974573885031100182115353118963 -0.52066384736113894595805347194410052161 -0.95713213974573885031100182115353118963 0.0095425371877925775336250150191510735196 -0.95713213974573885031100182115353118963 -0.95713213974573885031100182115353118963 -0.52066384736113894595805347194410052161 0.0095425371877925775336250150191510735196 -0.95713213974573885031100182115353118963 0.43492812685261664658005711425116290088 -0.52066384736113894595805347194410052161 0.0095425371877925775336250150191510735196 -0.52066384736113894595805347194410052161 -0.95713213974573885031100182115353118963 -0.95713213974573885031100182115353118963 0.0095425371877925775336250150191510735196 0.43492812685261664658005711425116290088 -0.52066384736113894595805347194410052161 -0.95713213974573885031100182115353118963 0.0095425371877925775336250150191510735196 0.16759475660428881185333950841466005283 -0.59172133224794175913941940243963088242 -0.98415209210840529357450070353539828799 0.020604648201280446418040434034344443905 0.16759475660428881185333950841466005283 -0.59172133224794175913941940243963088242 -0.59172133224794175913941940243963088242 0.020604648201280446418040434034344443905 -0.59172133224794175913941940243963088242 -0.59172133224794175913941940243963088242 0.16759475660428881185333950841466005283 0.020604648201280446418040434034344443905 -0.98415209210840529357450070353539828799 0.16759475660428881185333950841466005283 -0.59172133224794175913941940243963088242 0.020604648201280446418040434034344443905 -0.59172133224794175913941940243963088242 -0.98415209210840529357450070353539828799 0.16759475660428881185333950841466005283 0.020604648201280446418040434034344443905 -0.59172133224794175913941940243963088242 0.16759475660428881185333950841466005283 -0.59172133224794175913941940243963088242 0.020604648201280446418040434034344443905 -0.98415209210840529357450070353539828799 -0.59172133224794175913941940243963088242 0.16759475660428881185333950841466005283 0.020604648201280446418040434034344443905 -0.59172133224794175913941940243963088242 -0.98415209210840529357450070353539828799 -0.59172133224794175913941940243963088242 0.020604648201280446418040434034344443905 -0.59172133224794175913941940243963088242 -0.59172133224794175913941940243963088242 -0.98415209210840529357450070353539828799 0.020604648201280446418040434034344443905 -0.59172133224794175913941940243963088242 0.16759475660428881185333950841466005283 -0.98415209210840529357450070353539828799 0.020604648201280446418040434034344443905 -0.98415209210840529357450070353539828799 -0.59172133224794175913941940243963088242 -0.59172133224794175913941940243963088242 0.020604648201280446418040434034344443905 0.16759475660428881185333950841466005283 -0.98415209210840529357450070353539828799 -0.59172133224794175913941940243963088242 0.020604648201280446418040434034344443905 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n59-d9-sp.txt000066400000000000000000000245011277740313300240300ustar00rootroot00000000000000 -0.5 -0.5 -0.5 0.07734739854997367644741906257553729918 -0.99999999876036601109069831529161985423 -0.99999999876036601109069831529161985423 0.9999999962810980332720949458748595627 8.5759042345675186085903030258742437834e-05 -0.99999999876036601109069831529161985423 0.9999999962810980332720949458748595627 -0.99999999876036601109069831529161985423 8.5759042345675186085903030258742437834e-05 0.9999999962810980332720949458748595627 -0.99999999876036601109069831529161985423 -0.99999999876036601109069831529161985423 8.5759042345675186085903030258742437834e-05 -0.99999999876036601109069831529161985423 -0.99999999876036601109069831529161985423 -0.99999999876036601109069831529161985423 8.5759042345675186085903030258742437834e-05 -0.67845092920947681169601712222921603853 -0.67845092920947681169601712222921603853 0.035352787628430435088051366687648115583 0.030897784616567277310532826869162311937 -0.67845092920947681169601712222921603853 0.035352787628430435088051366687648115583 -0.67845092920947681169601712222921603853 0.030897784616567277310532826869162311937 0.035352787628430435088051366687648115583 -0.67845092920947681169601712222921603853 -0.67845092920947681169601712222921603853 0.030897784616567277310532826869162311937 -0.67845092920947681169601712222921603853 -0.67845092920947681169601712222921603853 -0.67845092920947681169601712222921603853 0.030897784616567277310532826869162311937 -0.35544695635715805159186380319222134027 -0.35544695635715805159186380319222134027 -0.93365913092852584522440859042333597919 0.039417216447239047523644877985518239107 -0.35544695635715805159186380319222134027 -0.93365913092852584522440859042333597919 -0.35544695635715805159186380319222134027 0.039417216447239047523644877985518239107 -0.93365913092852584522440859042333597919 -0.35544695635715805159186380319222134027 -0.35544695635715805159186380319222134027 0.039417216447239047523644877985518239107 -0.35544695635715805159186380319222134027 -0.35544695635715805159186380319222134027 -0.35544695635715805159186380319222134027 0.039417216447239047523644877985518239107 -0.90978216330917283407807385501200614331 -0.90978216330917283407807385501200614331 0.72934648992751850223422156503601842994 0.010751973306154910354337519688619045729 -0.90978216330917283407807385501200614331 0.72934648992751850223422156503601842994 -0.90978216330917283407807385501200614331 0.010751973306154910354337519688619045729 0.72934648992751850223422156503601842994 -0.90978216330917283407807385501200614331 -0.90978216330917283407807385501200614331 0.010751973306154910354337519688619045729 -0.90978216330917283407807385501200614331 -0.90978216330917283407807385501200614331 -0.90978216330917283407807385501200614331 0.010751973306154910354337519688619045729 -0.77540690799124790934402070093968875729 -0.22459309200875209065597929906031124271 -0.22459309200875209065597929906031124271 0.05084544013826995406889748131136091475 -0.22459309200875209065597929906031124271 -0.77540690799124790934402070093968875729 -0.22459309200875209065597929906031124271 0.05084544013826995406889748131136091475 -0.77540690799124790934402070093968875729 -0.77540690799124790934402070093968875729 -0.22459309200875209065597929906031124271 0.05084544013826995406889748131136091475 -0.77540690799124790934402070093968875729 -0.22459309200875209065597929906031124271 -0.77540690799124790934402070093968875729 0.05084544013826995406889748131136091475 -0.22459309200875209065597929906031124271 -0.77540690799124790934402070093968875729 -0.77540690799124790934402070093968875729 0.05084544013826995406889748131136091475 -0.22459309200875209065597929906031124271 -0.22459309200875209065597929906031124271 -0.77540690799124790934402070093968875729 0.05084544013826995406889748131136091475 -0.994890841533917338064711949103255315 -0.082257102495081453456435781598997046246 -0.84059495347591975502241648769875059251 0.011179229597731402927583520512290878612 -0.994890841533917338064711949103255315 -0.082257102495081453456435781598997046246 -0.082257102495081453456435781598997046246 0.011179229597731402927583520512290878612 -0.082257102495081453456435781598997046246 -0.082257102495081453456435781598997046246 -0.994890841533917338064711949103255315 0.011179229597731402927583520512290878612 -0.84059495347591975502241648769875059251 -0.994890841533917338064711949103255315 -0.082257102495081453456435781598997046246 0.011179229597731402927583520512290878612 -0.082257102495081453456435781598997046246 -0.84059495347591975502241648769875059251 -0.994890841533917338064711949103255315 0.011179229597731402927583520512290878612 -0.082257102495081453456435781598997046246 -0.994890841533917338064711949103255315 -0.082257102495081453456435781598997046246 0.011179229597731402927583520512290878612 -0.84059495347591975502241648769875059251 -0.082257102495081453456435781598997046246 -0.994890841533917338064711949103255315 0.011179229597731402927583520512290878612 -0.082257102495081453456435781598997046246 -0.84059495347591975502241648769875059251 -0.082257102495081453456435781598997046246 0.011179229597731402927583520512290878612 -0.082257102495081453456435781598997046246 -0.082257102495081453456435781598997046246 -0.84059495347591975502241648769875059251 0.011179229597731402927583520512290878612 -0.082257102495081453456435781598997046246 -0.994890841533917338064711949103255315 -0.84059495347591975502241648769875059251 0.011179229597731402927583520512290878612 -0.84059495347591975502241648769875059251 -0.082257102495081453456435781598997046246 -0.082257102495081453456435781598997046246 0.011179229597731402927583520512290878612 -0.994890841533917338064711949103255315 -0.84059495347591975502241648769875059251 -0.082257102495081453456435781598997046246 0.011179229597731402927583520512290878612 0.43670065288414901811354448912928750012 -0.93244825862932284418902737202159413719 -0.57180413562550332973548974508609922574 0.013646079136993770600501763121325612648 0.43670065288414901811354448912928750012 -0.93244825862932284418902737202159413719 -0.93244825862932284418902737202159413719 0.013646079136993770600501763121325612648 -0.93244825862932284418902737202159413719 -0.93244825862932284418902737202159413719 0.43670065288414901811354448912928750012 0.013646079136993770600501763121325612648 -0.57180413562550332973548974508609922574 0.43670065288414901811354448912928750012 -0.93244825862932284418902737202159413719 0.013646079136993770600501763121325612648 -0.93244825862932284418902737202159413719 -0.57180413562550332973548974508609922574 0.43670065288414901811354448912928750012 0.013646079136993770600501763121325612648 -0.93244825862932284418902737202159413719 0.43670065288414901811354448912928750012 -0.93244825862932284418902737202159413719 0.013646079136993770600501763121325612648 -0.57180413562550332973548974508609922574 -0.93244825862932284418902737202159413719 0.43670065288414901811354448912928750012 0.013646079136993770600501763121325612648 -0.93244825862932284418902737202159413719 -0.57180413562550332973548974508609922574 -0.93244825862932284418902737202159413719 0.013646079136993770600501763121325612648 -0.93244825862932284418902737202159413719 -0.93244825862932284418902737202159413719 -0.57180413562550332973548974508609922574 0.013646079136993770600501763121325612648 -0.93244825862932284418902737202159413719 0.43670065288414901811354448912928750012 -0.57180413562550332973548974508609922574 0.013646079136993770600501763121325612648 -0.57180413562550332973548974508609922574 -0.93244825862932284418902737202159413719 -0.93244825862932284418902737202159413719 0.013646079136993770600501763121325612648 0.43670065288414901811354448912928750012 -0.57180413562550332973548974508609922574 -0.93244825862932284418902737202159413719 0.013646079136993770600501763121325612648 -0.93116817884364945982158957577713628669 -0.63271726038014422042206258028726154683 0.19660269960393790066571473635165938035 0.027366554623984184053091789082666607808 -0.93116817884364945982158957577713628669 -0.63271726038014422042206258028726154683 -0.63271726038014422042206258028726154683 0.027366554623984184053091789082666607808 -0.63271726038014422042206258028726154683 -0.63271726038014422042206258028726154683 -0.93116817884364945982158957577713628669 0.027366554623984184053091789082666607808 0.19660269960393790066571473635165938035 -0.93116817884364945982158957577713628669 -0.63271726038014422042206258028726154683 0.027366554623984184053091789082666607808 -0.63271726038014422042206258028726154683 0.19660269960393790066571473635165938035 -0.93116817884364945982158957577713628669 0.027366554623984184053091789082666607808 -0.63271726038014422042206258028726154683 -0.93116817884364945982158957577713628669 -0.63271726038014422042206258028726154683 0.027366554623984184053091789082666607808 0.19660269960393790066571473635165938035 -0.63271726038014422042206258028726154683 -0.93116817884364945982158957577713628669 0.027366554623984184053091789082666607808 -0.63271726038014422042206258028726154683 0.19660269960393790066571473635165938035 -0.63271726038014422042206258028726154683 0.027366554623984184053091789082666607808 -0.63271726038014422042206258028726154683 -0.63271726038014422042206258028726154683 0.19660269960393790066571473635165938035 0.027366554623984184053091789082666607808 -0.63271726038014422042206258028726154683 -0.93116817884364945982158957577713628669 0.19660269960393790066571473635165938035 0.027366554623984184053091789082666607808 0.19660269960393790066571473635165938035 -0.63271726038014422042206258028726154683 -0.63271726038014422042206258028726154683 0.027366554623984184053091789082666607808 -0.93116817884364945982158957577713628669 0.19660269960393790066571473635165938035 -0.63271726038014422042206258028726154683 0.027366554623984184053091789082666607808 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n8-d3-sp.txt000066400000000000000000000025301277740313300237320ustar00rootroot00000000000000-0.34367339496723662642072827083693243093 -0.34367339496723662642072827083693243093 -0.9689798150982901207378151874892027072 0.18162379004944980942342872025562069427 -0.34367339496723662642072827083693243093 -0.9689798150982901207378151874892027072 -0.34367339496723662642072827083693243093 0.18162379004944980942342872025562069427 -0.9689798150982901207378151874892027072 -0.34367339496723662642072827083693243093 -0.34367339496723662642072827083693243093 0.18162379004944980942342872025562069427 -0.34367339496723662642072827083693243093 -0.34367339496723662642072827083693243093 -0.34367339496723662642072827083693243093 0.18162379004944980942342872025562069427 -0.78390550020314279176487322158837338344 -0.78390550020314279176487322158837338344 0.35171650060942837529461966476512015033 0.15170954328388352390990461307771263906 -0.78390550020314279176487322158837338344 0.35171650060942837529461966476512015033 -0.78390550020314279176487322158837338344 0.15170954328388352390990461307771263906 0.35171650060942837529461966476512015033 -0.78390550020314279176487322158837338344 -0.78390550020314279176487322158837338344 0.15170954328388352390990461307771263906 -0.78390550020314279176487322158837338344 -0.78390550020314279176487322158837338344 -0.78390550020314279176487322158837338344 0.15170954328388352390990461307771263906 pyfr-1.5.0/pyfr/quadrules/tet/witherden-vincent-n81-d10-sp.txt000066400000000000000000000342431277740313300240770ustar00rootroot00000000000000 -0.5 -0.5 -0.5 0.063199698074694317846318428237401466134 -0.3754998626096227045403833626263450896 -0.3754998626096227045403833626263450896 -0.87350041217113188637884991212096473119 0.035916079989691599737018881339842778615 -0.3754998626096227045403833626263450896 -0.87350041217113188637884991212096473119 -0.3754998626096227045403833626263450896 0.035916079989691599737018881339842778615 -0.87350041217113188637884991212096473119 -0.3754998626096227045403833626263450896 -0.3754998626096227045403833626263450896 0.035916079989691599737018881339842778615 -0.3754998626096227045403833626263450896 -0.3754998626096227045403833626263450896 -0.3754998626096227045403833626263450896 0.035916079989691599737018881339842778615 -0.77138069228530769882525760469269910942 -0.77138069228530769882525760469269910942 0.31414207685592309647577281407809732827 0.013158879622391177646076980573564101693 -0.77138069228530769882525760469269910942 0.31414207685592309647577281407809732827 -0.77138069228530769882525760469269910942 0.013158879622391177646076980573564101693 0.31414207685592309647577281407809732827 -0.77138069228530769882525760469269910942 -0.77138069228530769882525760469269910942 0.013158879622391177646076980573564101693 -0.77138069228530769882525760469269910942 -0.77138069228530769882525760469269910942 -0.77138069228530769882525760469269910942 0.013158879622391177646076980573564101693 -0.66902794876077789679101975111094717095 -0.17913852156206901142420431149697662502 -0.97269500811508408036057162589509957901 0.015191841626926975498161246507619114195 -0.66902794876077789679101975111094717095 -0.17913852156206901142420431149697662502 -0.17913852156206901142420431149697662502 0.015191841626926975498161246507619114195 -0.17913852156206901142420431149697662502 -0.17913852156206901142420431149697662502 -0.66902794876077789679101975111094717095 0.015191841626926975498161246507619114195 -0.97269500811508408036057162589509957901 -0.66902794876077789679101975111094717095 -0.17913852156206901142420431149697662502 0.015191841626926975498161246507619114195 -0.17913852156206901142420431149697662502 -0.97269500811508408036057162589509957901 -0.66902794876077789679101975111094717095 0.015191841626926975498161246507619114195 -0.17913852156206901142420431149697662502 -0.66902794876077789679101975111094717095 -0.17913852156206901142420431149697662502 0.015191841626926975498161246507619114195 -0.97269500811508408036057162589509957901 -0.17913852156206901142420431149697662502 -0.66902794876077789679101975111094717095 0.015191841626926975498161246507619114195 -0.17913852156206901142420431149697662502 -0.97269500811508408036057162589509957901 -0.17913852156206901142420431149697662502 0.015191841626926975498161246507619114195 -0.17913852156206901142420431149697662502 -0.17913852156206901142420431149697662502 -0.97269500811508408036057162589509957901 0.015191841626926975498161246507619114195 -0.17913852156206901142420431149697662502 -0.66902794876077789679101975111094717095 -0.97269500811508408036057162589509957901 0.015191841626926975498161246507619114195 -0.97269500811508408036057162589509957901 -0.17913852156206901142420431149697662502 -0.17913852156206901142420431149697662502 0.015191841626926975498161246507619114195 -0.66902794876077789679101975111094717095 -0.97269500811508408036057162589509957901 -0.17913852156206901142420431149697662502 0.015191841626926975498161246507619114195 0.8859775346904097323952611738365015259 -0.98772398235041850430481257350316929785 -0.9105295699895727237856360268301629302 0.00048259245911900483231983784641134908616 0.8859775346904097323952611738365015259 -0.98772398235041850430481257350316929785 -0.98772398235041850430481257350316929785 0.00048259245911900483231983784641134908616 -0.98772398235041850430481257350316929785 -0.98772398235041850430481257350316929785 0.8859775346904097323952611738365015259 0.00048259245911900483231983784641134908616 -0.9105295699895727237856360268301629302 0.8859775346904097323952611738365015259 -0.98772398235041850430481257350316929785 0.00048259245911900483231983784641134908616 -0.98772398235041850430481257350316929785 -0.9105295699895727237856360268301629302 0.8859775346904097323952611738365015259 0.00048259245911900483231983784641134908616 -0.98772398235041850430481257350316929785 0.8859775346904097323952611738365015259 -0.98772398235041850430481257350316929785 0.00048259245911900483231983784641134908616 -0.9105295699895727237856360268301629302 -0.98772398235041850430481257350316929785 0.8859775346904097323952611738365015259 0.00048259245911900483231983784641134908616 -0.98772398235041850430481257350316929785 -0.9105295699895727237856360268301629302 -0.98772398235041850430481257350316929785 0.00048259245911900483231983784641134908616 -0.98772398235041850430481257350316929785 -0.98772398235041850430481257350316929785 -0.9105295699895727237856360268301629302 0.00048259245911900483231983784641134908616 -0.98772398235041850430481257350316929785 0.8859775346904097323952611738365015259 -0.9105295699895727237856360268301629302 0.00048259245911900483231983784641134908616 -0.9105295699895727237856360268301629302 -0.98772398235041850430481257350316929785 -0.98772398235041850430481257350316929785 0.00048259245911900483231983784641134908616 0.8859775346904097323952611738365015259 -0.9105295699895727237856360268301629302 -0.98772398235041850430481257350316929785 0.00048259245911900483231983784641134908616 -0.045619240191439298911787183406185558751 -0.75789963770882114801220999680989894474 -0.43858148439091840506379282297401655176 0.034319642640608095038714683012872940214 -0.045619240191439298911787183406185558751 -0.75789963770882114801220999680989894474 -0.75789963770882114801220999680989894474 0.034319642640608095038714683012872940214 -0.75789963770882114801220999680989894474 -0.75789963770882114801220999680989894474 -0.045619240191439298911787183406185558751 0.034319642640608095038714683012872940214 -0.43858148439091840506379282297401655176 -0.045619240191439298911787183406185558751 -0.75789963770882114801220999680989894474 0.034319642640608095038714683012872940214 -0.75789963770882114801220999680989894474 -0.43858148439091840506379282297401655176 -0.045619240191439298911787183406185558751 0.034319642640608095038714683012872940214 -0.75789963770882114801220999680989894474 -0.045619240191439298911787183406185558751 -0.75789963770882114801220999680989894474 0.034319642640608095038714683012872940214 -0.43858148439091840506379282297401655176 -0.75789963770882114801220999680989894474 -0.045619240191439298911787183406185558751 0.034319642640608095038714683012872940214 -0.75789963770882114801220999680989894474 -0.43858148439091840506379282297401655176 -0.75789963770882114801220999680989894474 0.034319642640608095038714683012872940214 -0.75789963770882114801220999680989894474 -0.75789963770882114801220999680989894474 -0.43858148439091840506379282297401655176 0.034319642640608095038714683012872940214 -0.75789963770882114801220999680989894474 -0.045619240191439298911787183406185558751 -0.43858148439091840506379282297401655176 0.034319642640608095038714683012872940214 -0.43858148439091840506379282297401655176 -0.75789963770882114801220999680989894474 -0.75789963770882114801220999680989894474 0.034319642640608095038714683012872940214 -0.045619240191439298911787183406185558751 -0.43858148439091840506379282297401655176 -0.75789963770882114801220999680989894474 0.034319642640608095038714683012872940214 0.18851253896001405132314006877136059652 -0.93444106356711465845055795933535161918 -0.31963041182578473442202415010065735815 0.013514495573007723718021960153355702928 0.18851253896001405132314006877136059652 -0.93444106356711465845055795933535161918 -0.93444106356711465845055795933535161918 0.013514495573007723718021960153355702928 -0.93444106356711465845055795933535161918 -0.93444106356711465845055795933535161918 0.18851253896001405132314006877136059652 0.013514495573007723718021960153355702928 -0.31963041182578473442202415010065735815 0.18851253896001405132314006877136059652 -0.93444106356711465845055795933535161918 0.013514495573007723718021960153355702928 -0.93444106356711465845055795933535161918 -0.31963041182578473442202415010065735815 0.18851253896001405132314006877136059652 0.013514495573007723718021960153355702928 -0.93444106356711465845055795933535161918 0.18851253896001405132314006877136059652 -0.93444106356711465845055795933535161918 0.013514495573007723718021960153355702928 -0.31963041182578473442202415010065735815 -0.93444106356711465845055795933535161918 0.18851253896001405132314006877136059652 0.013514495573007723718021960153355702928 -0.93444106356711465845055795933535161918 -0.31963041182578473442202415010065735815 -0.93444106356711465845055795933535161918 0.013514495573007723718021960153355702928 -0.93444106356711465845055795933535161918 -0.93444106356711465845055795933535161918 -0.31963041182578473442202415010065735815 0.013514495573007723718021960153355702928 -0.93444106356711465845055795933535161918 0.18851253896001405132314006877136059652 -0.31963041182578473442202415010065735815 0.013514495573007723718021960153355702928 -0.31963041182578473442202415010065735815 -0.93444106356711465845055795933535161918 -0.93444106356711465845055795933535161918 0.013514495573007723718021960153355702928 0.18851253896001405132314006877136059652 -0.31963041182578473442202415010065735815 -0.93444106356711465845055795933535161918 0.013514495573007723718021960153355702928 0.60235456931668878246228336815716196359 -0.93502943687035390432897012004314760659 -0.73229569557598097380434312807086675041 0.0087681963693812055566076536006009347954 0.60235456931668878246228336815716196359 -0.93502943687035390432897012004314760659 -0.93502943687035390432897012004314760659 0.0087681963693812055566076536006009347954 -0.93502943687035390432897012004314760659 -0.93502943687035390432897012004314760659 0.60235456931668878246228336815716196359 0.0087681963693812055566076536006009347954 -0.73229569557598097380434312807086675041 0.60235456931668878246228336815716196359 -0.93502943687035390432897012004314760659 0.0087681963693812055566076536006009347954 -0.93502943687035390432897012004314760659 -0.73229569557598097380434312807086675041 0.60235456931668878246228336815716196359 0.0087681963693812055566076536006009347954 -0.93502943687035390432897012004314760659 0.60235456931668878246228336815716196359 -0.93502943687035390432897012004314760659 0.0087681963693812055566076536006009347954 -0.73229569557598097380434312807086675041 -0.93502943687035390432897012004314760659 0.60235456931668878246228336815716196359 0.0087681963693812055566076536006009347954 -0.93502943687035390432897012004314760659 -0.73229569557598097380434312807086675041 -0.93502943687035390432897012004314760659 0.0087681963693812055566076536006009347954 -0.93502943687035390432897012004314760659 -0.93502943687035390432897012004314760659 -0.73229569557598097380434312807086675041 0.0087681963693812055566076536006009347954 -0.93502943687035390432897012004314760659 0.60235456931668878246228336815716196359 -0.73229569557598097380434312807086675041 0.0087681963693812055566076536006009347954 -0.73229569557598097380434312807086675041 -0.93502943687035390432897012004314760659 -0.93502943687035390432897012004314760659 0.0087681963693812055566076536006009347954 0.60235456931668878246228336815716196359 -0.73229569557598097380434312807086675041 -0.93502943687035390432897012004314760659 0.0087681963693812055566076536006009347954 0.2561436909507320213865521444358193313 -0.65004131563212195143010154694337920556 -0.95606105968648811852634905054906092018 0.017209381065149320852393906999331987612 0.2561436909507320213865521444358193313 -0.65004131563212195143010154694337920556 -0.65004131563212195143010154694337920556 0.017209381065149320852393906999331987612 -0.65004131563212195143010154694337920556 -0.65004131563212195143010154694337920556 0.2561436909507320213865521444358193313 0.017209381065149320852393906999331987612 -0.95606105968648811852634905054906092018 0.2561436909507320213865521444358193313 -0.65004131563212195143010154694337920556 0.017209381065149320852393906999331987612 -0.65004131563212195143010154694337920556 -0.95606105968648811852634905054906092018 0.2561436909507320213865521444358193313 0.017209381065149320852393906999331987612 -0.65004131563212195143010154694337920556 0.2561436909507320213865521444358193313 -0.65004131563212195143010154694337920556 0.017209381065149320852393906999331987612 -0.95606105968648811852634905054906092018 -0.65004131563212195143010154694337920556 0.2561436909507320213865521444358193313 0.017209381065149320852393906999331987612 -0.65004131563212195143010154694337920556 -0.95606105968648811852634905054906092018 -0.65004131563212195143010154694337920556 0.017209381065149320852393906999331987612 -0.65004131563212195143010154694337920556 -0.65004131563212195143010154694337920556 -0.95606105968648811852634905054906092018 0.017209381065149320852393906999331987612 -0.65004131563212195143010154694337920556 0.2561436909507320213865521444358193313 -0.95606105968648811852634905054906092018 0.017209381065149320852393906999331987612 -0.95606105968648811852634905054906092018 -0.65004131563212195143010154694337920556 -0.65004131563212195143010154694337920556 0.017209381065149320852393906999331987612 0.2561436909507320213865521444358193313 -0.95606105968648811852634905054906092018 -0.65004131563212195143010154694337920556 0.017209381065149320852393906999331987612 pyfr-1.5.0/pyfr/quadrules/tri/000077500000000000000000000000001277740313300162675ustar00rootroot00000000000000pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n10-su.txt000066400000000000000000000003541277740313300217400ustar00rootroot00000000000000-0.3333333333333333 -0.3333333333333333 -1.0 1.0 1.0 -1.0 -1.0 -1.0 0.447213595499958 -0.447213595499958 -1.0 -0.447213595499958 -0.447213595499958 -1.0 0.447213595499958 -1.0 -1.0 0.447213595499958 -0.447213595499958 0.447213595499958 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n15-su.txt000066400000000000000000000005241277740313300217440ustar00rootroot00000000000000-1.0 1.0 1.0 -1.0 -1.0 -1.0 -0.5515835075553056 0.1031670151106112 0.1031670151106112 -0.5515835075553056 -0.5515835075553056 -0.5515835075553056 0.0 -1.0 -1.0 0.0 0.0 0.0 0.654653670707977 -0.654653670707977 -1.0 -0.654653670707977 -0.654653670707977 -1.0 0.654653670707977 -1.0 -1.0 0.654653670707977 -0.654653670707977 0.654653670707977 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n21-su.txt000066400000000000000000000011421277740313300217360ustar00rootroot00000000000000-1.0 1.0 1.0 -1.0 -1.0 -1.0 -0.6844725145019088 0.3689450290038176 0.3689450290038176 -0.6844725145019088 -0.6844725145019088 -0.6844725145019088 -0.1712454773320746 -0.6575090453358508 -0.6575090453358508 -0.1712454773320746 -0.1712454773320746 -0.1712454773320746 0.765055323929465 -0.765055323929465 -1.0 -0.765055323929465 -0.765055323929465 -1.0 0.765055323929465 -1.0 -1.0 0.765055323929465 -0.765055323929465 0.765055323929465 0.2852315164806452 -0.2852315164806452 -1.0 -0.2852315164806452 -0.2852315164806452 -1.0 0.2852315164806452 -1.0 -1.0 0.2852315164806452 -0.2852315164806452 0.2852315164806452 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n28-su.txt000066400000000000000000000014341277740313300217510ustar00rootroot00000000000000-0.3333333333333333 -0.3333333333333333 -1.0 1.0 1.0 -1.0 -1.0 -1.0 -0.7695164961934418 0.5390329923868836 0.5390329923868836 -0.7695164961934418 -0.7695164961934418 -0.7695164961934418 0.0 -1.0 -1.0 0.0 0.0 0.0 0.8302238962785673 -0.8302238962785673 -1.0 -0.8302238962785673 -0.8302238962785673 -1.0 0.8302238962785673 -1.0 -1.0 0.8302238962785673 -0.8302238962785673 0.8302238962785673 0.4688487934707144 -0.4688487934707144 -1.0 -0.4688487934707144 -0.4688487934707144 -1.0 0.4688487934707144 -1.0 -1.0 0.4688487934707144 -0.4688487934707144 0.4688487934707144 0.1088646525710102 -0.3647692565366892 -0.744095396034321 -0.3647692565366892 -0.3647692565366892 -0.744095396034321 0.1088646525710102 -0.744095396034321 -0.744095396034321 0.1088646525710102 -0.3647692565366892 0.1088646525710102 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n3-su.txt000066400000000000000000000000341277740313300216550ustar00rootroot00000000000000-1.0 1.0 1.0 -1.0 -1.0 -1.0 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n36-su.txt000066400000000000000000000021761277740313300217540ustar00rootroot00000000000000-1.0 1.0 1.0 -1.0 -1.0 -1.0 -0.82399615942763482 0.64799231885526964 0.64799231885526964 -0.82399615942763482 -0.82399615942763482 -0.82399615942763482 -0.102529737209732 -0.794940525580536 -0.794940525580536 -0.102529737209732 -0.102529737209732 -0.102529737209732 -0.4650732944293116 -0.0698534111413768 -0.0698534111413768 -0.4650732944293116 -0.4650732944293116 -0.4650732944293116 0.87174014850960668 -0.87174014850960668 -1.0 -0.87174014850960668 -0.87174014850960668 -1.0 0.87174014850960668 -1.0 -1.0 0.87174014850960668 -0.87174014850960668 0.87174014850960668 0.5917001814331424 -0.5917001814331424 -1.0 -0.5917001814331424 -0.5917001814331424 -1.0 0.5917001814331424 -1.0 -1.0 0.5917001814331424 -0.5917001814331424 0.5917001814331424 0.3047134441526058 -0.5032840332609758 -0.80142941089163 -0.5032840332609758 -0.5032840332609758 -0.80142941089163 0.3047134441526058 -0.80142941089163 -0.80142941089163 0.3047134441526058 -0.5032840332609758 0.3047134441526058 0.2092992179024786 -0.2092992179024786 -1.0 -0.2092992179024786 -0.2092992179024786 -1.0 0.2092992179024786 -1.0 -1.0 0.2092992179024786 -0.2092992179024786 0.2092992179024786 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n45-su.txt000066400000000000000000000026401277740313300217500ustar00rootroot00000000000000-1.0 1.0 1.0 -1.0 -1.0 -1.0 -0.5665379630179386 0.1330759260358772 0.1330759260358772 -0.5665379630179386 -0.5665379630179386 -0.5665379630179386 -0.2219883817461012 -0.5560232365077976 -0.5560232365077976 -0.2219883817461012 -0.2219883817461012 -0.2219883817461012 0.0 -1.0 -1.0 0.0 0.0 0.0 0.89975799541146028 -0.89975799541146028 -1.0 -0.89975799541146028 -0.89975799541146028 -1.0 0.89975799541146028 -1.0 -1.0 0.89975799541146028 -0.89975799541146028 0.89975799541146028 -0.86181986027653946 0.72363972055307892 0.72363972055307892 -0.86181986027653946 -0.86181986027653946 -0.86181986027653946 0.6771862795107378 -0.6771862795107378 -1.0 -0.6771862795107378 -0.6771862795107378 -1.0 0.6771862795107378 -1.0 -1.0 0.6771862795107378 -0.6771862795107378 0.6771862795107378 0.44642711029554092 -0.6025435027169984 -0.84388360757854252 -0.6025435027169984 -0.6025435027169984 -0.84388360757854252 0.44642711029554092 -0.84388360757854252 -0.84388360757854252 0.44642711029554092 -0.6025435027169984 0.44642711029554092 0.3631174638261782 -0.3631174638261782 -1.0 -0.3631174638261782 -0.3631174638261782 -1.0 0.3631174638261782 -1.0 -1.0 0.3631174638261782 -0.3631174638261782 0.3631174638261782 0.10189156171389752 -0.2647237999285756 -0.83716776178532192 -0.2647237999285756 -0.2647237999285756 -0.83716776178532192 0.10189156171389752 -0.83716776178532192 -0.83716776178532192 0.10189156171389752 -0.2647237999285756 0.10189156171389752 pyfr-1.5.0/pyfr/quadrules/tri/alpha-opt-n6-su.txt000066400000000000000000000000661277740313300216650ustar00rootroot00000000000000-1.0 1.0 1.0 -1.0 -1.0 -1.0 0.0 -1.0 -1.0 0.0 0.0 0.0 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n10-d5-spu.txt000066400000000000000000000010511277740313300235060ustar00rootroot00000000000000-0.333333333333333 -0.333333333333333 0.40308597716946 -0.888871894660414 0.777743789320828 0.083911025993298 0.777743789320828 -0.888871894660414 0.083911025993298 -0.888871894660414 -0.888871894660414 0.083911025993298 0.268421495491446 -0.408932576528214 0.224196824141774 -0.859488918963232 -0.408932576528214 0.224196824141774 -0.408932576528214 -0.859488918963232 0.224196824141774 0.268421495491446 -0.859488918963232 0.224196824141774 -0.859488918963232 0.268421495491446 0.224196824141774 -0.408932576528214 0.268421495491446 0.224196824141774 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n15-d7-spu.txt000066400000000000000000000014541277740313300235240ustar00rootroot00000000000000-0.928258244608532 0.856516489217064 0.035830910024606 0.856516489217064 -0.928258244608532 0.035830910024606 -0.928258244608532 -0.928258244608532 0.035830910024606 -0.516541208464066 0.033082416928132 0.25542439176253 0.033082416928132 -0.516541208464066 0.25542439176253 -0.516541208464066 -0.516541208464066 0.25542439176253 -0.051382424445842 -0.897235151108316 0.15241212477107 -0.897235151108316 -0.051382424445842 0.15241212477107 -0.051382424445842 -0.051382424445842 0.15241212477107 0.502367262212968 -0.5969922362364 0.11149962005423 -0.905375025976568 -0.5969922362364 0.11149962005423 -0.5969922362364 -0.905375025976568 0.11149962005423 0.502367262212968 -0.905375025976568 0.11149962005423 -0.905375025976568 0.502367262212968 0.11149962005423 -0.5969922362364 0.502367262212968 0.11149962005423 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n21-d8-spu.txt000066400000000000000000000022061277740313300235160ustar00rootroot00000000000000-0.943774095634672 0.887548191269344 0.020718749393076 0.887548191269344 -0.943774095634672 0.020718749393076 -0.943774095634672 -0.943774095634672 0.020718749393076 -0.645721803061366 0.291443606122732 0.150789768653476 0.291443606122732 -0.645721803061366 0.150789768653476 -0.645721803061366 -0.645721803061366 0.150789768653476 -0.188982808265134 -0.622034383469732 0.195095604746484 -0.622034383469732 -0.188982808265134 0.195095604746484 -0.188982808265134 -0.188982808265134 0.195095604746484 0.635801960056998 -0.702868375458226 0.057938538744946 -0.932933584598772 -0.702868375458226 0.057938538744946 -0.702868375458226 -0.932933584598772 0.057938538744946 0.635801960056998 -0.932933584598772 0.057938538744946 -0.932933584598772 0.635801960056998 0.057938538744946 -0.702868375458226 0.635801960056998 0.057938538744946 0.209957823550266 -0.285607402768638 0.09209273319187 -0.924350420781628 -0.285607402768638 0.09209273319187 -0.285607402768638 -0.924350420781628 0.09209273319187 0.209957823550266 -0.924350420781628 0.09209273319187 -0.924350420781628 0.209957823550266 0.09209273319187 -0.285607402768638 0.209957823550266 0.09209273319187 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n28-d10-spu.txt000066400000000000000000000027671277740313300236120ustar00rootroot00000000000000-0.333333333333333 -0.333333333333333 0.167216424431274 -0.960045625755614 0.920091251511228 0.01054434056099 0.920091251511228 -0.960045625755614 0.01054434056099 -0.960045625755614 -0.960045625755614 0.01054434056099 -0.736556464940004 0.473112929880008 0.089105873359008 0.473112929880008 -0.736556464940004 0.089105873359008 -0.736556464940004 -0.736556464940004 0.089105873359008 -0.029729306413078 -0.940541387173844 0.067631425608396 -0.940541387173844 -0.029729306413078 0.067631425608396 -0.029729306413078 -0.029729306413078 0.067631425608396 0.7358224202359 -0.784096036307978 0.031420922680366 -0.951726383927922 -0.784096036307978 0.031420922680366 -0.784096036307978 -0.951726383927922 0.031420922680366 0.7358224202359 -0.951726383927922 0.031420922680366 -0.951726383927922 0.7358224202359 0.031420922680366 -0.784096036307978 0.7358224202359 0.031420922680366 0.401745140761446 -0.458318454156866 0.056410272561232 -0.94342668660458 -0.458318454156866 0.056410272561232 -0.458318454156866 -0.94342668660458 0.056410272561232 0.401745140761446 -0.94342668660458 0.056410272561232 -0.94342668660458 0.401745140761446 0.056410272561232 -0.458318454156866 0.401745140761446 0.056410272561232 0.073309368412276 -0.366900802310766 0.13399191425566 -0.70640856610151 -0.366900802310766 0.13399191425566 -0.366900802310766 -0.70640856610151 0.13399191425566 0.073309368412276 -0.70640856610151 0.13399191425566 -0.70640856610151 0.073309368412276 0.13399191425566 -0.366900802310766 0.073309368412276 0.13399191425566 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n3-d2-spu.txt000066400000000000000000000002461277740313300234320ustar00rootroot00000000000000-0.666666666666666 0.333333333333332 0.666666666666666 0.333333333333332 -0.666666666666666 0.666666666666666 -0.666666666666666 -0.666666666666666 0.666666666666666 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n36-d12-spu.txt000066400000000000000000000036771277740313300236140ustar00rootroot00000000000000-0.95765715444107 0.91531430888214 0.01127824757382 0.91531430888214 -0.95765715444107 0.01127824757382 -0.95765715444107 -0.95765715444107 0.01127824757382 -0.798831205208224 0.597662410416448 0.054297936384556 0.597662410416448 -0.798831205208224 0.054297936384556 -0.798831205208224 -0.798831205208224 0.054297936384556 -0.457923384576136 -0.084153230847728 0.126201825066718 -0.084153230847728 -0.457923384576136 0.126201825066718 -0.457923384576136 -0.457923384576136 0.126201825066718 -0.119617483192336 -0.760765033615328 0.103505591359798 -0.760765033615328 -0.119617483192336 0.103505591359798 -0.119617483192336 -0.119617483192336 0.103505591359798 0.759959282854462 -0.963486641850504 0.019733507149292 -0.796472641003958 -0.963486641850504 0.019733507149292 -0.963486641850504 -0.796472641003958 0.019733507149292 0.759959282854462 -0.796472641003958 0.019733507149292 -0.796472641003958 0.759959282854462 0.019733507149292 -0.963486641850504 0.759959282854462 0.019733507149292 0.165124045727344 -0.211933456660026 0.044016409600294 -0.953190589067318 -0.211933456660026 0.044016409600294 -0.211933456660026 -0.953190589067318 0.044016409600294 0.165124045727344 -0.953190589067318 0.044016409600294 -0.953190589067318 0.165124045727344 0.044016409600294 -0.211933456660026 0.165124045727344 0.044016409600294 0.503061229085564 -0.547508938181542 0.033289140153472 -0.955552290904022 -0.547508938181542 0.033289140153472 -0.547508938181542 -0.955552290904022 0.033289140153472 0.503061229085564 -0.955552290904022 0.033289140153472 -0.955552290904022 0.503061229085564 0.033289140153472 -0.547508938181542 0.503061229085564 0.033289140153472 0.27147436652621 -0.501841544757336 0.088652476237828 -0.769632821768874 -0.501841544757336 0.088652476237828 -0.501841544757336 -0.769632821768874 0.088652476237828 0.27147436652621 -0.769632821768874 0.088652476237828 -0.769632821768874 0.27147436652621 0.088652476237828 -0.501841544757336 0.27147436652621 0.088652476237828 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n45-d14-spu.txt000066400000000000000000000046421277740313300236070ustar00rootroot00000000000000-0.895845867331362 0.791691734662724 0.026451952141012 0.791691734662724 -0.895845867331362 0.026451952141012 -0.895845867331362 -0.895845867331362 0.026451952141012 -0.772586942778008 0.545173885556016 0.034751629277362 0.545173885556016 -0.772586942778008 0.034751629277362 -0.772586942778008 -0.772586942778008 0.034751629277362 -0.565662308452164 0.131324616904328 0.094546156567652 0.131324616904328 -0.565662308452164 0.094546156567652 -0.565662308452164 -0.565662308452164 0.094546156567652 -0.227854451277354 -0.544291097445292 0.106004440942036 -0.544291097445292 -0.227854451277354 0.106004440942036 -0.227854451277354 -0.227854451277354 0.106004440942036 -0.02014813417346 -0.95970373165308 0.037885163927818 -0.95970373165308 -0.02014813417346 0.037885163927818 -0.02014813417346 -0.02014813417346 0.037885163927818 0.669376181231556 -0.703503756777164 0.023875566186922 -0.965872424454392 -0.703503756777164 0.023875566186922 -0.703503756777164 -0.965872424454392 0.023875566186922 0.669376181231556 -0.965872424454392 0.023875566186922 -0.965872424454392 0.669376181231556 0.023875566186922 -0.703503756777164 0.669376181231556 0.023875566186922 0.414495985308496 -0.57957674232286 0.04939584308527 -0.834919242985636 -0.57957674232286 0.04939584308527 -0.57957674232286 -0.834919242985636 0.04939584308527 0.414495985308496 -0.834919242985636 0.04939584308527 -0.834919242985636 0.414495985308496 0.04939584308527 -0.57957674232286 0.414495985308496 0.04939584308527 0.925803833285858 -0.92588151521622 0.004385767267822 -0.999922318069638 -0.92588151521622 0.004385767267822 -0.92588151521622 -0.999922318069638 0.004385767267822 0.925803833285858 -0.999922318069638 0.004385767267822 -0.999922318069638 0.925803833285858 0.004385767267822 -0.92588151521622 0.925803833285858 0.004385767267822 0.348012222825796 -0.38207975901364 0.030875038299906 -0.965932463812156 -0.38207975901364 0.030875038299906 -0.38207975901364 -0.965932463812156 0.030875038299906 0.348012222825796 -0.965932463812156 0.030875038299906 -0.965932463812156 0.348012222825796 0.030875038299906 -0.38207975901364 0.348012222825796 0.030875038299906 0.08389791764566 -0.279351646321358 0.074981447065474 -0.804546271324302 -0.279351646321358 0.074981447065474 -0.279351646321358 -0.804546271324302 0.074981447065474 0.08389791764566 -0.804546271324302 0.074981447065474 -0.804546271324302 0.08389791764566 0.074981447065474 -0.279351646321358 0.08389791764566 0.074981447065474 pyfr-1.5.0/pyfr/quadrules/tri/williams-shunn-n6-d4-spu.txt000066400000000000000000000004771277740313300234450ustar00rootroot00000000000000-0.81684757298044 0.63369514596088 0.219903487310666 0.63369514596088 -0.81684757298044 0.219903487310666 -0.81684757298044 -0.81684757298044 0.219903487310666 -0.108103018168072 -0.783793963663856 0.446763179356 -0.783793963663856 -0.108103018168072 0.446763179356 -0.108103018168072 -0.108103018168072 0.446763179356 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n1-d1-sp.txt000066400000000000000000000002001277740313300237130ustar00rootroot00000000000000-0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 2 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n12-d6-sp.txt000066400000000000000000000030441277740313300240130ustar00rootroot00000000000000 -0.87382197101699554331933679425836168532 0.74764394203399108663867358851672337064 0.10168981274041363384187361821373796809 0.74764394203399108663867358851672337064 -0.87382197101699554331933679425836168532 0.10168981274041363384187361821373796809 -0.87382197101699554331933679425836168532 -0.87382197101699554331933679425836168532 0.10168981274041363384187361821373796809 -0.50142650965817915741672289378596184782 0.0028530193163583148334457875719236956481 0.23357255145275873205057922277115888265 0.0028530193163583148334457875719236956481 -0.50142650965817915741672289378596184782 0.23357255145275873205057922277115888265 -0.50142650965817915741672289378596184782 -0.50142650965817915741672289378596184782 0.23357255145275873205057922277115888265 -0.89370990031036610529350065673720370601 0.27300499824279729446028518882409939961 0.16570215123674715038710691284088490796 0.27300499824279729446028518882409939961 -0.89370990031036610529350065673720370601 0.16570215123674715038710691284088490796 -0.37929509793243118916678453208689569359 0.27300499824279729446028518882409939961 0.16570215123674715038710691284088490796 0.27300499824279729446028518882409939961 -0.37929509793243118916678453208689569359 0.16570215123674715038710691284088490796 -0.37929509793243118916678453208689569359 -0.89370990031036610529350065673720370601 0.16570215123674715038710691284088490796 -0.89370990031036610529350065673720370601 -0.37929509793243118916678453208689569359 0.16570215123674715038710691284088490796 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n15-d7-sp.txt000066400000000000000000000036551277740313300240270ustar00rootroot00000000000000 -0.93253870289082430257005654739836752385 0.8650774057816486051401130947967350477 0.033090100221584262071955896945834891238 0.8650774057816486051401130947967350477 -0.93253870289082430257005654739836752385 0.033090100221584262071955896945834891238 -0.93253870289082430257005654739836752385 -0.93253870289082430257005654739836752385 0.033090100221584262071955896945834891238 -0.51684523480919288209962646032443600082 0.033690469618385764199252920648872001638 0.25588834246031114556580247036929262133 0.033690469618385764199252920648872001638 -0.51684523480919288209962646032443600082 0.25588834246031114556580247036929262133 -0.51684523480919288209962646032443600082 -0.51684523480919288209962646032443600082 0.25588834246031114556580247036929262133 -0.051380614990563531580838528101628435036 -0.89723877001887293683832294379674312993 0.15417329237197213566964304166748277293 -0.89723877001887293683832294379674312993 -0.051380614990563531580838528101628435036 0.15417329237197213566964304166748277293 -0.051380614990563531580838528101628435036 -0.051380614990563531580838528101628435036 0.15417329237197213566964304166748277293 -0.90592671069480953331718004928623004897 0.50856008110010635471247864925623992738 0.11175746580639956167963262884202819059 0.50856008110010635471247864925623992738 -0.90592671069480953331718004928623004897 0.11175746580639956167963262884202819059 -0.60263337040529682139529859997000987842 0.50856008110010635471247864925623992738 0.11175746580639956167963262884202819059 0.50856008110010635471247864925623992738 -0.60263337040529682139529859997000987842 0.11175746580639956167963262884202819059 -0.60263337040529682139529859997000987842 -0.90592671069480953331718004928623004897 0.11175746580639956167963262884202819059 -0.90592671069480953331718004928623004897 -0.60263337040529682139529859997000987842 0.11175746580639956167963262884202819059 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n16-d8-sp.txt000066400000000000000000000040601277740313300240200ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.2886312153555743365021822209781292496 -0.081414823414553687942368971011661355879 -0.83717035317089262411526205797667728824 0.1901832685345692495877922087771686332 -0.83717035317089262411526205797667728824 -0.081414823414553687942368971011661355879 0.1901832685345692495877922087771686332 -0.081414823414553687942368971011661355879 -0.081414823414553687942368971011661355879 0.1901832685345692495877922087771686332 -0.65886138449647958675541299701707099796 0.31772276899295917351082599403414199593 0.20643474106943650056358310058425806003 0.31772276899295917351082599403414199593 -0.65886138449647958675541299701707099796 0.20643474106943650056358310058425806003 -0.65886138449647958675541299701707099796 -0.65886138449647958675541299701707099796 0.20643474106943650056358310058425806003 -0.89890554336593804908315289880680210631 0.79781108673187609816630579761360421262 0.064916995246396160621851856683561193593 0.79781108673187609816630579761360421262 -0.89890554336593804908315289880680210631 0.064916995246396160621851856683561193593 -0.89890554336593804908315289880680210631 -0.89890554336593804908315289880680210631 0.064916995246396160621851856683561193593 -0.98321044518008478932557233092141110162 0.45698478591080856248200075835212392604 0.05446062834886998852968938014781784832 0.45698478591080856248200075835212392604 -0.98321044518008478932557233092141110162 0.05446062834886998852968938014781784832 -0.47377434073072377315642842743071282442 0.45698478591080856248200075835212392604 0.05446062834886998852968938014781784832 0.45698478591080856248200075835212392604 -0.47377434073072377315642842743071282442 0.05446062834886998852968938014781784832 -0.47377434073072377315642842743071282442 -0.98321044518008478932557233092141110162 0.05446062834886998852968938014781784832 -0.98321044518008478932557233092141110162 -0.47377434073072377315642842743071282442 0.05446062834886998852968938014781784832 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n19-d9-sp.txt000066400000000000000000000046711277740313300240340ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.19427159256559766763848396501457725948 -0.12582081701412672546013927112929005464 -0.74835836597174654907972145774141989072 0.15565508200954855863347871259880791224 -0.74835836597174654907972145774141989072 -0.12582081701412672546013927112929005464 0.15565508200954855863347871259880791224 -0.12582081701412672546013927112929005464 -0.12582081701412672546013927112929005464 0.15565508200954855863347871259880791224 -0.62359292876193453951807743906532886378 0.24718585752386907903615487813065772755 0.1592954778544205060657835485280905465 0.24718585752386907903615487813065772755 -0.62359292876193453951807743906532886378 0.1592954778544205060657835485280905465 -0.62359292876193453951807743906532886378 -0.62359292876193453951807743906532886378 0.1592954778544205060657835485280905465 -0.020634961602524744432586150327614401262 -0.95873007679495051113482769934477119748 0.062669400454278141073709662574418630986 -0.95873007679495051113482769934477119748 -0.020634961602524744432586150327614401262 0.062669400454278141073709662574418630986 -0.020634961602524744432586150327614401262 -0.020634961602524744432586150327614401262 0.062669400454278141073709662574418630986 -0.91054097321109458026978682006744727 0.82108194642218916053957364013489454 0.051155351317396062523357597117999647955 0.82108194642218916053957364013489454 -0.91054097321109458026978682006744727 0.051155351317396062523357597117999647955 -0.91054097321109458026978682006744727 -0.91054097321109458026978682006744727 0.051155351317396062523357597117999647955 -0.92632317589052743273036480243322979538 0.48239719756899604138015974704684765487 0.086567078754578754578754578754578754579 0.48239719756899604138015974704684765487 -0.92632317589052743273036480243322979538 0.086567078754578754578754578754578754579 -0.55607402167846860864979494461361785949 0.48239719756899604138015974704684765487 0.086567078754578754578754578754578754579 0.48239719756899604138015974704684765487 -0.55607402167846860864979494461361785949 0.086567078754578754578754578754578754579 -0.55607402167846860864979494461361785949 -0.92632317589052743273036480243322979538 0.086567078754578754578754578754578754579 -0.92632317589052743273036480243322979538 -0.55607402167846860864979494461361785949 0.086567078754578754578754578754578754579 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n25-d10-sp.txt000066400000000000000000000062001277740313300240670ustar00rootroot00000000000000-0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.16348665829257193285623736996835522439 -0.93588925356611297413803082132702052207 0.87177850713222594827606164265404104414 0.026705937626299132551145956798137306994 0.87177850713222594827606164265404104414 -0.93588925356611297413803082132702052207 0.026705937626299132551145956798137306994 -0.93588925356611297413803082132702052207 -0.93588925356611297413803082132702052207 0.026705937626299132551145956798137306994 -0.71567779788687122981567579361808335656 0.43135559577374245963135158723616671312 0.0919159272094894560275758192650956328 0.43135559577374245963135158723616671312 -0.71567779788687122981567579361808335656 0.0919159272094894560275758192650956328 -0.71567779788687122981567579361808335656 -0.71567779788687122981567579361808335656 0.0919159272094894560275758192650956328 -0.35637400942232915754980487802790257253 0.060108237854688056554191347891388233782 0.12780981279284809086579746752530664373 0.060108237854688056554191347891388233782 -0.35637400942232915754980487802790257253 0.12780981279284809086579746752530664373 -0.70373422843235889900438646986348566125 0.060108237854688056554191347891388233782 0.12780981279284809086579746752530664373 0.060108237854688056554191347891388233782 -0.70373422843235889900438646986348566125 0.12780981279284809086579746752530664373 -0.70373422843235889900438646986348566125 -0.35637400942232915754980487802790257253 0.12780981279284809086579746752530664373 -0.35637400942232915754980487802790257253 -0.70373422843235889900438646986348566125 0.12780981279284809086579746752530664373 -0.94076022102254046473232746114791439895 0.20246665736691849090948578691737561875 0.068369296325918857257383168082684580517 0.20246665736691849090948578691737561875 -0.94076022102254046473232746114791439895 0.068369296325918857257383168082684580517 -0.2617064363443780261771583257694612198 0.20246665736691849090948578691737561875 0.068369296325918857257383168082684580517 0.20246665736691849090948578691737561875 -0.2617064363443780261771583257694612198 0.068369296325918857257383168082684580517 -0.2617064363443780261771583257694612198 -0.94076022102254046473232746114791439895 0.068369296325918857257383168082684580517 -0.94076022102254046473232746114791439895 -0.2617064363443780261771583257694612198 0.068369296325918857257383168082684580517 -0.94326466932012312149912848884373958881 0.61586120184575813015989980576348821814 0.050595515414576768778085581365666435125 0.61586120184575813015989980576348821814 -0.94326466932012312149912848884373958881 0.050595515414576768778085581365666435125 -0.67259653252563500866077131691974862932 0.61586120184575813015989980576348821814 0.050595515414576768778085581365666435125 0.61586120184575813015989980576348821814 -0.67259653252563500866077131691974862932 0.050595515414576768778085581365666435125 -0.67259653252563500866077131691974862932 -0.94326466932012312149912848884373958881 0.050595515414576768778085581365666435125 -0.94326466932012312149912848884373958881 -0.67259653252563500866077131691974862932 0.050595515414576768778085581365666435125 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n28-d11-sp.txt000066400000000000000000000072501277740313300241010ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.17152235946444843427639825073065398895 -0.94302916477125618104036726638981901865 0.8860583295425123620807345327796380373 0.020863741025789391746056984197324633703 0.8860583295425123620807345327796380373 -0.94302916477125618104036726638981901865 0.020863741025789391746056984197324633703 -0.94302916477125618104036726638981901865 -0.94302916477125618104036726638981901865 0.020863741025789391746056984197324633703 -0.57956008659364348598387546330841477973 0.15912017318728697196775092661682955946 0.14103136822343315668414771834585673963 0.15912017318728697196775092661682955946 -0.57956008659364348598387546330841477973 0.14103136822343315668414771834585673963 -0.57956008659364348598387546330841477973 -0.57956008659364348598387546330841477973 0.14103136822343315668414771834585673963 -0.79472903457550713910176986023011167594 0.58945806915101427820353972046022335189 0.077261518474038644953267609178802298293 0.58945806915101427820353972046022335189 -0.79472903457550713910176986023011167594 0.077261518474038644953267609178802298293 -0.79472903457550713910176986023011167594 -0.79472903457550713910176986023011167594 0.077261518474038644953267609178802298293 -0.0082161980682181738701197619927680147278 -0.98356760386356365225976047601446397054 0.03321254610917073915275167855011212173 -0.98356760386356365225976047601446397054 -0.0082161980682181738701197619927680147278 0.03321254610917073915275167855011212173 -0.0082161980682181738701197619927680147278 -0.0082161980682181738701197619927680147278 0.03321254610917073915275167855011212173 -0.12306814647129561795332827431496109166 -0.75386370705740876409334345137007781667 0.13463230815893660239567441124657557177 -0.75386370705740876409334345137007781667 -0.12306814647129561795332827431496109166 0.13463230815893660239567441124657557177 -0.12306814647129561795332827431496109166 -0.12306814647129561795332827431496109166 0.13463230815893660239567441124657557177 -0.70135042269583522760854842424565295474 0.68669956732370632439798287279764986108 0.020580579145906554986161254967959059438 0.68669956732370632439798287279764986108 -0.70135042269583522760854842424565295474 0.020580579145906554986161254967959059438 -0.98534914462787109678943444855199690633 0.68669956732370632439798287279764986108 0.020580579145906554986161254967959059438 0.68669956732370632439798287279764986108 -0.98534914462787109678943444855199690633 0.020580579145906554986161254967959059438 -0.98534914462787109678943444855199690633 -0.70135042269583522760854842424565295474 0.020580579145906554986161254967959059438 -0.70135042269583522760854842424565295474 -0.98534914462787109678943444855199690633 0.020580579145906554986161254967959059438 -0.90797899966914008822008044741026548976 0.3288167483937283948070953526650315723 0.080664953281001105168489835817596259842 0.3288167483937283948070953526650315723 -0.90797899966914008822008044741026548976 0.080664953281001105168489835817596259842 -0.42083774872458830658701490525476608254 0.3288167483937283948070953526650315723 0.080664953281001105168489835817596259842 0.3288167483937283948070953526650315723 -0.42083774872458830658701490525476608254 0.080664953281001105168489835817596259842 -0.42083774872458830658701490525476608254 -0.90797899966914008822008044741026548976 0.080664953281001105168489835817596259842 -0.90797899966914008822008044741026548976 -0.42083774872458830658701490525476608254 0.080664953281001105168489835817596259842 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n3-d2-sp.txt000066400000000000000000000006001277740313300237220ustar00rootroot00000000000000-0.66666666666666666666666666666666666667 0.33333333333333333333333333333333333333 0.66666666666666666666666666666666666667 0.33333333333333333333333333333333333333 -0.66666666666666666666666666666666666667 0.66666666666666666666666666666666666667 -0.66666666666666666666666666666666666667 -0.66666666666666666666666666666666666667 0.66666666666666666666666666666666666667 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n33-d12-sp.txt000066400000000000000000000103431277740313300240730ustar00rootroot00000000000000-0.023592498108916896443983752262370486151 -0.9528150037821662071120324954752590277 0.048533676162904066301435945151216167798 -0.9528150037821662071120324954752590277 -0.023592498108916896443983752262370486151 0.048533676162904066301435945151216167798 -0.023592498108916896443983752262370486151 -0.023592498108916896443983752262370486151 0.048533676162904066301435945151216167798 -0.78148434468129141883250537599138250938 0.56296868936258283766501075198276501876 0.056972104137755089999388947815030892501 0.56296868936258283766501075198276501876 -0.78148434468129141883250537599138250938 0.056972104137755089999388947815030892501 -0.78148434468129141883250537599138250938 -0.78148434468129141883250537599138250938 0.056972104137755089999388947815030892501 -0.45707498597014783024400810395490980293 -0.08585002805970433951198379209018039414 0.12508242639180552093864756289103967826 -0.08585002805970433951198379209018039414 -0.45707498597014783024400810395490980293 0.12508242639180552093864756289103967826 -0.45707498597014783024400810395490980293 -0.45707498597014783024400810395490980293 0.12508242639180552093864756289103967826 -0.9507072731273288104665376055713308436 0.90141454625465762093307521114266168719 0.015863285019947276918629575811719468968 0.90141454625465762093307521114266168719 -0.9507072731273288104665376055713308436 0.015863285019947276918629575811719468968 -0.9507072731273288104665376055713308436 -0.9507072731273288104665376055713308436 0.015863285019947276918629575811719468968 -0.11977670268281377797309259385418361789 -0.76044659463437244405381481229163276421 0.099836669856121884238103444121988601916 -0.76044659463437244405381481229163276421 -0.11977670268281377797309259385418361789 0.099836669856121884238103444121988601916 -0.11977670268281377797309259385418361789 -0.11977670268281377797309259385418361789 0.099836669856121884238103444121988601916 -0.41668864052331807893217237613211876563 0.3706203278127837999688893722742605014 0.043567170077215115865262872678583643728 0.3706203278127837999688893722742605014 -0.41668864052331807893217237613211876563 0.043567170077215115865262872678583643728 -0.95393168728946572103671699614214173577 0.3706203278127837999688893722742605014 0.043567170077215115865262872678583643728 0.3706203278127837999688893722742605014 -0.95393168728946572103671699614214173577 0.043567170077215115865262872678583643728 -0.95393168728946572103671699614214173577 -0.41668864052331807893217237613211876563 0.043567170077215115865262872678583643728 -0.41668864052331807893217237613211876563 -0.95393168728946572103671699614214173577 0.043567170077215115865262872678583643728 -0.7674079606441468267385037317005977222 0.25649950336711213367579227673445839675 0.08645472731882842109826654183371845927 0.25649950336711213367579227673445839675 -0.7674079606441468267385037317005977222 0.08645472731882842109826654183371845927 -0.48909154272296530693728854503386067454 0.25649950336711213367579227673445839675 0.08645472731882842109826654183371845927 0.25649950336711213367579227673445839675 -0.48909154272296530693728854503386067454 0.08645472731882842109826654183371845927 -0.48909154272296530693728854503386067454 -0.7674079606441468267385037317005977222 0.08645472731882842109826654183371845927 -0.7674079606441468267385037317005977222 -0.48909154272296530693728854503386067454 0.08645472731882842109826654183371845927 0.70267558502048008323600722086411689719 -0.74544056553282126242431625050523532213 0.030167355153022877171701180925533825614 -0.74544056553282126242431625050523532213 0.70267558502048008323600722086411689719 0.030167355153022877171701180925533825614 -0.95723501948765882081169097035888157506 -0.74544056553282126242431625050523532213 0.030167355153022877171701180925533825614 -0.74544056553282126242431625050523532213 -0.95723501948765882081169097035888157506 0.030167355153022877171701180925533825614 -0.95723501948765882081169097035888157506 0.70267558502048008323600722086411689719 0.030167355153022877171701180925533825614 0.70267558502048008323600722086411689719 -0.95723501948765882081169097035888157506 0.030167355153022877171701180925533825614 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n37-d13-sp.txt000066400000000000000000000112001277740313300240710ustar00rootroot00000000000000-0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.13592007317366328856354884936176975902 -0.02184610709492130019862056181959122469 -0.95630778581015739960275887636081755062 0.047988803857789461547421598901919307449 -0.95630778581015739960275887636081755062 -0.02184610709492130019862056181959122469 0.047988803857789461547421598901919307449 -0.02184610709492130019862056181959122469 -0.02184610709492130019862056181959122469 0.047988803857789461547421598901919307449 -0.55725542741633419869037489058984184448 0.11451085483266839738074978117968368896 0.11655697023839996280953416702667961903 0.11451085483266839738074978117968368896 -0.55725542741633419869037489058984184448 0.11655697023839996280953416702667961903 -0.55725542741633419869037489058984184448 -0.55725542741633419869037489058984184448 0.11655697023839996280953416702667961903 -0.14611717148039918795837492993725157719 -0.70776565703920162408325014012549684562 0.11120393506090665741451493202092293506 -0.70776565703920162408325014012549684562 -0.14611717148039918795837492993725157719 0.11120393506090665741451493202092293506 -0.14611717148039918795837492993725157719 -0.14611717148039918795837492993725157719 0.11120393506090665741451493202092293506 -0.9569806377823136322614173729318958348 0.91396127556462726452283474586379166961 0.012104674207078343683585600064581648939 0.91396127556462726452283474586379166961 -0.9569806377823136322614173729318958348 0.012104674207078343683585600064581648939 -0.9569806377823136322614173729318958348 -0.9569806377823136322614173729318958348 0.012104674207078343683585600064581648939 -0.82420903393560535081381299499933379777 0.49701423179990439034603719157741930009 0.048358079623187638274891491146121518585 0.49701423179990439034603719157741930009 -0.82420903393560535081381299499933379777 0.048358079623187638274891491146121518585 -0.67280519786429903953222419657808550232 0.49701423179990439034603719157741930009 0.048358079623187638274891491146121518585 0.49701423179990439034603719157741930009 -0.67280519786429903953222419657808550232 0.048358079623187638274891491146121518585 -0.67280519786429903953222419657808550232 -0.82420903393560535081381299499933379777 0.048358079623187638274891491146121518585 -0.82420903393560535081381299499933379777 -0.67280519786429903953222419657808550232 0.048358079623187638274891491146121518585 -0.77815591439307320917426090955665095644 0.72941554059088555060509190179138636667 0.029930802210331334526491714265806876009 0.72941554059088555060509190179138636667 -0.77815591439307320917426090955665095644 0.029930802210331334526491714265806876009 -0.95125962619781234143083099223473541023 0.72941554059088555060509190179138636667 0.029930802210331334526491714265806876009 0.72941554059088555060509190179138636667 -0.95125962619781234143083099223473541023 0.029930802210331334526491714265806876009 -0.95125962619781234143083099223473541023 -0.77815591439307320917426090955665095644 0.029930802210331334526491714265806876009 -0.77815591439307320917426090955665095644 -0.95125962619781234143083099223473541023 0.029930802210331334526491714265806876009 -0.38311647821576445068305629491750938056 0.24709199110735114163170870637247317166 0.069282552281696740931973657021836440891 0.24709199110735114163170870637247317166 -0.38311647821576445068305629491750938056 0.069282552281696740931973657021836440891 -0.8639755128915866909486524114549637911 0.24709199110735114163170870637247317166 0.069282552281696740931973657021836440891 0.24709199110735114163170870637247317166 -0.8639755128915866909486524114549637911 0.069282552281696740931973657021836440891 -0.8639755128915866909486524114549637911 -0.38311647821576445068305629491750938056 0.069282552281696740931973657021836440891 -0.38311647821576445068305629491750938056 -0.8639755128915866909486524114549637911 0.069282552281696740931973657021836440891 -0.98974722179523526288134119331774178805 0.44471558624837593052124026460956809725 0.019181362007086525445190180332221782772 0.44471558624837593052124026460956809725 -0.98974722179523526288134119331774178805 0.019181362007086525445190180332221782772 -0.4549683644531406676398990712918263092 0.44471558624837593052124026460956809725 0.019181362007086525445190180332221782772 0.44471558624837593052124026460956809725 -0.4549683644531406676398990712918263092 0.019181362007086525445190180332221782772 -0.4549683644531406676398990712918263092 -0.98974722179523526288134119331774178805 0.019181362007086525445190180332221782772 -0.98974722179523526288134119331774178805 -0.4549683644531406676398990712918263092 0.019181362007086525445190180332221782772 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n42-d14-sp.txt000066400000000000000000000125761277740313300241070ustar00rootroot00000000000000 -0.64558893517491312608677861906988184783 0.29117787034982625217355723813976369567 0.084325177473986035076460874648372259691 0.29117787034982625217355723813976369567 -0.64558893517491312608677861906988184783 0.084325177473986035076460874648372259691 -0.64558893517491312608677861906988184783 -0.64558893517491312608677861906988184783 0.084325177473986035076460874648372259691 -0.16471056131909215498111835562871312178 -0.67057887736181569003776328874257375644 0.065576707088250701282621957477250686472 -0.67057887736181569003776328874257375644 -0.16471056131909215498111835562871312178 0.065576707088250701282621957477250686472 -0.16471056131909215498111835562871312178 -0.16471056131909215498111835562871312178 0.065576707088250701282621957477250686472 -0.87640023381825479746504234312612842323 0.75280046763650959493008468625225684647 0.028867399339553335203419842961306633228 0.75280046763650959493008468625225684647 -0.87640023381825479746504234312612842323 0.028867399339553335203419842961306633228 -0.87640023381825479746504234312612842323 -0.87640023381825479746504234312612842323 0.028867399339553335203419842961306633228 -0.022072179275642722645247959095219528414 -0.95585564144871455470950408180956094317 0.043767162738857781281689891926651943066 -0.95585564144871455470950408180956094317 -0.022072179275642722645247959095219528414 0.043767162738857781281689891926651943066 -0.022072179275642722645247959095219528414 -0.022072179275642722645247959095219528414 0.043767162738857781281689891926651943066 -0.45304494338232268049011143347460288761 -0.093910113235354639019777133050794224782 0.10354820901458317262956982033279280483 -0.093910113235354639019777133050794224782 -0.45304494338232268049011143347460288761 0.10354820901458317262956982033279280483 -0.45304494338232268049011143347460288761 -0.45304494338232268049011143347460288761 0.10354820901458317262956982033279280483 -0.96121807750259790364349980989094097785 0.9224361550051958072869996197818819557 0.009846807204800163363652047018084309531 0.9224361550051958072869996197818819557 -0.96121807750259790364349980989094097785 0.009846807204800163363652047018084309531 -0.96121807750259790364349980989094097785 -0.96121807750259790364349980989094097785 0.009846807204800163363652047018084309531 -0.40325423572748449405833696388077454282 0.37396033561617567471725430804062611952 0.028872616227067680992177383998031606893 0.37396033561617567471725430804062611952 -0.40325423572748449405833696388077454282 0.028872616227067680992177383998031606893 -0.97070609988869118065891734415985157669 0.37396033561617567471725430804062611952 0.028872616227067680992177383998031606893 0.37396033561617567471725430804062611952 -0.97070609988869118065891734415985157669 0.028872616227067680992177383998031606893 -0.97070609988869118065891734415985157669 -0.40325423572748449405833696388077454282 0.028872616227067680992177383998031606893 -0.40325423572748449405833696388077454282 -0.97070609988869118065891734415985157669 0.028872616227067680992177383998031606893 -0.88575048519270412192864575156217057937 0.54121710954999296517806654833485591265 0.049331506425127347925750490367272456636 0.54121710954999296517806654833485591265 -0.88575048519270412192864575156217057937 0.049331506425127347925750490367272456636 -0.65546662435728884324942079677268533329 0.54121710954999296517806654833485591265 0.049331506425127347925750490367272456636 0.54121710954999296517806654833485591265 -0.65546662435728884324942079677268533329 0.049331506425127347925750490367272456636 -0.65546662435728884324942079677268533329 -0.88575048519270412192864575156217057937 0.049331506425127347925750490367272456636 -0.88575048519270412192864575156217057937 -0.65546662435728884324942079677268533329 0.049331506425127347925750490367272456636 -0.32627708040730999651188960582214922188 0.14044458169336634699539242672470851928 0.077143021574121366456978055620821718469 0.14044458169336634699539242672470851928 -0.32627708040730999651188960582214922188 0.077143021574121366456978055620821718469 -0.8141675012860563504835028209025592974 0.14044458169336634699539242672470851928 0.077143021574121366456978055620821718469 0.14044458169336634699539242672470851928 -0.8141675012860563504835028209025592974 0.077143021574121366456978055620821718469 -0.8141675012860563504835028209025592974 -0.32627708040730999651188960582214922188 0.077143021574121366456978055620821718469 -0.32627708040730999651188960582214922188 -0.8141675012860563504835028209025592974 0.077143021574121366456978055620821718469 -0.99746333813425594982550719780901461465 0.75951434274034225902914327394920365201 0.010020457677001343539720186164978232925 0.75951434274034225902914327394920365201 -0.99746333813425594982550719780901461465 0.010020457677001343539720186164978232925 -0.76205100460608630920363607614018903735 0.75951434274034225902914327394920365201 0.010020457677001343539720186164978232925 0.75951434274034225902914327394920365201 -0.76205100460608630920363607614018903735 0.010020457677001343539720186164978232925 -0.76205100460608630920363607614018903735 -0.99746333813425594982550719780901461465 0.010020457677001343539720186164978232925 -0.99746333813425594982550719780901461465 -0.76205100460608630920363607614018903735 0.010020457677001343539720186164978232925 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n49-d15-sp.txt000066400000000000000000000144231277740313300241100ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.08867077476436815077519868131406480795 -0.18927557173204904426648777856049828207 -0.62144885653590191146702444287900343586 0.085427563142921134082725838745668360696 -0.62144885653590191146702444287900343586 -0.18927557173204904426648777856049828207 0.085427563142921134082725838745668360696 -0.18927557173204904426648777856049828207 -0.18927557173204904426648777856049828207 0.085427563142921134082725838745668360696 -0.85965289420002796503128049571314279073 0.71930578840005593006256099142628558146 0.03288947512525032753736001737701825892 0.71930578840005593006256099142628558146 -0.85965289420002796503128049571314279073 0.03288947512525032753736001737701825892 -0.85965289420002796503128049571314279073 -0.85965289420002796503128049571314279073 0.03288947512525032753736001737701825892 -0.051658637123960416042618609451788188253 -0.89668272575207916791476278109642362349 0.034792296001526829115453101768509506658 -0.89668272575207916791476278109642362349 -0.051658637123960416042618609451788188253 0.034792296001526829115453101768509506658 -0.051658637123960416042618609451788188253 -0.051658637123960416042618609451788188253 0.034792296001526829115453101768509506658 -0.54724257315930080341854883783076139455 0.094485146318601606837097675661522789095 0.093566723457419264712537789561548478374 0.094485146318601606837097675661522789095 -0.54724257315930080341854883783076139455 0.093566723457419264712537789561548478374 -0.54724257315930080341854883783076139455 -0.54724257315930080341854883783076139455 0.093566723457419264712537789561548478374 -0.010006086461747631524400704632178282105 -0.97998782707650473695119859073564343579 0.019147692364920172413138507253187117414 -0.97998782707650473695119859073564343579 -0.010006086461747631524400704632178282105 0.019147692364920172413138507253187117414 -0.010006086461747631524400704632178282105 -0.010006086461747631524400704632178282105 0.019147692364920172413138507253187117414 -0.96837654749802270888209653243226493969 0.93675309499604541776419306486452987938 0.0059215492758107511385526052767298787739 0.93675309499604541776419306486452987938 -0.96837654749802270888209653243226493969 0.0059215492758107511385526052767298787739 -0.96837654749802270888209653243226493969 -0.96837654749802270888209653243226493969 0.0059215492758107511385526052767298787739 -0.9632477752286378160779112088372081634 0.33395128960373617989264707840742420014 0.031205145661151929503549831657000846318 0.33395128960373617989264707840742420014 -0.9632477752286378160779112088372081634 0.031205145661151929503549831657000846318 -0.37070351437509836381473586957021603674 0.33395128960373617989264707840742420014 0.031205145661151929503549831657000846318 0.33395128960373617989264707840742420014 -0.37070351437509836381473586957021603674 0.031205145661151929503549831657000846318 -0.37070351437509836381473586957021603674 -0.9632477752286378160779112088372081634 0.031205145661151929503549831657000846318 -0.9632477752286378160779112088372081634 -0.37070351437509836381473586957021603674 0.031205145661151929503549831657000846318 -0.98172152592538320992689636501802696381 0.83982431545247212980572119059358474792 0.0080597067440361992367286698217130156564 0.83982431545247212980572119059358474792 -0.98172152592538320992689636501802696381 0.0080597067440361992367286698217130156564 -0.85810278952708891987882482557555778411 0.83982431545247212980572119059358474792 0.0080597067440361992367286698217130156564 0.83982431545247212980572119059358474792 -0.85810278952708891987882482557555778411 0.0080597067440361992367286698217130156564 -0.85810278952708891987882482557555778411 -0.98172152592538320992689636501802696381 0.0080597067440361992367286698217130156564 -0.98172152592538320992689636501802696381 -0.85810278952708891987882482557555778411 0.0080597067440361992367286698217130156564 -0.6189288210472121331386195006280717197 0.43044471386290140376795873756746088333 0.057441173850402680461331283343301712008 0.43044471386290140376795873756746088333 -0.6189288210472121331386195006280717197 0.057441173850402680461331283343301712008 -0.81151589281568927062933923693938916363 0.43044471386290140376795873756746088333 0.057441173850402680461331283343301712008 0.43044471386290140376795873756746088333 -0.81151589281568927062933923693938916363 0.057441173850402680461331283343301712008 -0.81151589281568927062933923693938916363 -0.6189288210472121331386195006280717197 0.057441173850402680461331283343301712008 -0.6189288210472121331386195006280717197 -0.81151589281568927062933923693938916363 0.057441173850402680461331283343301712008 -0.66386270955517128907044482283274107879 0.62658528209883853982451662602671593723 0.023345242363151690679154011088673171842 0.62658528209883853982451662602671593723 -0.66386270955517128907044482283274107879 0.023345242363151690679154011088673171842 -0.96272257254366725075407180319397485844 0.62658528209883853982451662602671593723 0.023345242363151690679154011088673171842 0.62658528209883853982451662602671593723 -0.96272257254366725075407180319397485844 0.023345242363151690679154011088673171842 -0.96272257254366725075407180319397485844 -0.66386270955517128907044482283274107879 0.023345242363151690679154011088673171842 -0.66386270955517128907044482283274107879 -0.96272257254366725075407180319397485844 0.023345242363151690679154011088673171842 -0.32209877704944562157081399065909603587 0.13050532975422842890370386873351257506 0.062630952569938568823485827212302985766 0.13050532975422842890370386873351257506 -0.32209877704944562157081399065909603587 0.062630952569938568823485827212302985766 -0.80840655270478280733288987807441653919 0.13050532975422842890370386873351257506 0.062630952569938568823485827212302985766 0.13050532975422842890370386873351257506 -0.80840655270478280733288987807441653919 0.062630952569938568823485827212302985766 -0.80840655270478280733288987807441653919 -0.32209877704944562157081399065909603587 0.062630952569938568823485827212302985766 -0.32209877704944562157081399065909603587 -0.80840655270478280733288987807441653919 0.062630952569938568823485827212302985766 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n55-d16-sp.txt000066400000000000000000000170241277740313300241060ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.090529132147637585798682804751497905871 -0.508019859065716531056564440465839641 0.016039718131433062113128880931679281991 0.082185846287397899082859837743846349856 0.016039718131433062113128880931679281991 -0.508019859065716531056564440465839641 0.082185846287397899082859837743846349856 -0.508019859065716531056564440465839641 -0.508019859065716531056564440465839641 0.082185846287397899082859837743846349856 -0.1688302062291589735580386476319745286 -0.6623395875416820528839227047360509428 0.081423666624850718504727604609892231433 -0.6623395875416820528839227047360509428 -0.1688302062291589735580386476319745286 0.081423666624850718504727604609892231433 -0.1688302062291589735580386476319745286 -0.1688302062291589735580386476319745286 0.081423666624850718504727604609892231433 -0.82928886682659935648935022895726939779 0.65857773365319871297870045791453879558 0.029563269380448807960364375206438726749 0.65857773365319871297870045791453879558 -0.82928886682659935648935022895726939779 0.029563269380448807960364375206438726749 -0.82928886682659935648935022895726939779 -0.82928886682659935648935022895726939779 0.029563269380448807960364375206438726749 -0.67616271161745754624623346597531512883 0.35232542323491509249246693195063025766 0.058836819397976195721222704445565411515 0.35232542323491509249246693195063025766 -0.67616271161745754624623346597531512883 0.058836819397976195721222704445565411515 -0.67616271161745754624623346597531512883 -0.67616271161745754624623346597531512883 0.058836819397976195721222704445565411515 -5.3815663675432935238750288859902834282e-109 -1 0.0088370926243011378507684635783092181714 -1 -5.3815663675432935238750288859902834282e-109 0.0088370926243011378507684635783092181714 -5.3815663675432935238750288859902834282e-109 -5.3815663675432935238750288859902834282e-109 0.0088370926243011378507684635783092181714 -0.049438544908115791823484418930976089946 -0.90112291018376841635303116213804782011 0.051948666596554316640604583694066880977 -0.90112291018376841635303116213804782011 -0.049438544908115791823484418930976089946 0.051948666596554316640604583694066880977 -0.049438544908115791823484418930976089946 -0.049438544908115791823484418930976089946 0.051948666596554316640604583694066880977 -0.89048965017059377421655257720683258971 0.50834012288953561570997807325829055003 0.037876544928831397939092427613418818028 0.50834012288953561570997807325829055003 -0.89048965017059377421655257720683258971 0.037876544928831397939092427613418818028 -0.61785047271894184149342549605145796032 0.50834012288953561570997807325829055003 0.037876544928831397939092427613418818028 0.50834012288953561570997807325829055003 -0.61785047271894184149342549605145796032 0.037876544928831397939092427613418818028 -0.61785047271894184149342549605145796032 -0.89048965017059377421655257720683258971 0.037876544928831397939092427613418818028 -0.89048965017059377421655257720683258971 -0.61785047271894184149342549605145796032 0.037876544928831397939092427613418818028 -0.95359314446237258192502291745679921363 0.93648873606191735836919518841625197884 0.0033089334296700963847916278962044308229 0.93648873606191735836919518841625197884 -0.95359314446237258192502291745679921363 0.0033089334296700963847916278962044308229 -0.98289559159954477644417227095945276521 0.93648873606191735836919518841625197884 0.0033089334296700963847916278962044308229 0.93648873606191735836919518841625197884 -0.98289559159954477644417227095945276521 0.0033089334296700963847916278962044308229 -0.98289559159954477644417227095945276521 -0.95359314446237258192502291745679921363 0.0033089334296700963847916278962044308229 -0.95359314446237258192502291745679921363 -0.98289559159954477644417227095945276521 0.0033089334296700963847916278962044308229 -0.96213644343918817003656945894522367429 0.29860739649089281625925299156381596948 0.030017203568571612165136964521714949941 0.29860739649089281625925299156381596948 -0.96213644343918817003656945894522367429 0.030017203568571612165136964521714949941 -0.3364709530517046462226835326185922952 0.29860739649089281625925299156381596948 0.030017203568571612165136964521714949941 0.29860739649089281625925299156381596948 -0.3364709530517046462226835326185922952 0.030017203568571612165136964521714949941 -0.3364709530517046462226835326185922952 -0.96213644343918817003656945894522367429 0.030017203568571612165136964521714949941 -0.96213644343918817003656945894522367429 -0.3364709530517046462226835326185922952 0.030017203568571612165136964521714949941 -0.96193974051260510241812957568503652064 0.80054740654085925227401383438774365525 0.015895187866784997621199196218108093516 0.80054740654085925227401383438774365525 -0.96193974051260510241812957568503652064 0.015895187866784997621199196218108093516 -0.83860766602825414985588425870270713461 0.80054740654085925227401383438774365525 0.015895187866784997621199196218108093516 0.80054740654085925227401383438774365525 -0.83860766602825414985588425870270713461 0.015895187866784997621199196218108093516 -0.83860766602825414985588425870270713461 -0.96193974051260510241812957568503652064 0.015895187866784997621199196218108093516 -0.96193974051260510241812957568503652064 -0.83860766602825414985588425870270713461 0.015895187866784997621199196218108093516 -0.79478761952120380739655029677085645407 0.17829768112849583758057340125685564327 0.063967220158740137569628123287866229484 0.17829768112849583758057340125685564327 -0.79478761952120380739655029677085645407 0.063967220158740137569628123287866229484 -0.3835100616072920301840231044859991892 0.17829768112849583758057340125685564327 0.063967220158740137569628123287866229484 0.17829768112849583758057340125685564327 -0.3835100616072920301840231044859991892 0.063967220158740137569628123287866229484 -0.3835100616072920301840231044859991892 -0.79478761952120380739655029677085645407 0.063967220158740137569628123287866229484 -0.79478761952120380739655029677085645407 -0.3835100616072920301840231044859991892 0.063967220158740137569628123287866229484 -0.988127299966355460185036064778683968 0.61324373499879128490286065261412937757 0.010782374233697622806764075031711751212 0.61324373499879128490286065261412937757 -0.988127299966355460185036064778683968 0.010782374233697622806764075031711751212 -0.62511643503243582471782458783544540958 0.61324373499879128490286065261412937757 0.010782374233697622806764075031711751212 0.61324373499879128490286065261412937757 -0.62511643503243582471782458783544540958 0.010782374233697622806764075031711751212 -0.62511643503243582471782458783544540958 -0.988127299966355460185036064778683968 0.010782374233697622806764075031711751212 -0.988127299966355460185036064778683968 -0.62511643503243582471782458783544540958 0.010782374233697622806764075031711751212 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n6-d4-sp.txt000066400000000000000000000014001277740313300237260ustar00rootroot00000000000000 -0.1081030181680702273633414922338960232 -0.7837939636638595452733170155322079536 0.44676317935602293139001401686624560874 -0.7837939636638595452733170155322079536 -0.1081030181680702273633414922338960232 0.44676317935602293139001401686624560874 -0.1081030181680702273633414922338960232 -0.1081030181680702273633414922338960232 0.44676317935602293139001401686624560874 -0.81684757298045851308085707319559698429 0.63369514596091702616171414639119396858 0.21990348731064373527665264980042105793 0.63369514596091702616171414639119396858 -0.81684757298045851308085707319559698429 0.21990348731064373527665264980042105793 -0.81684757298045851308085707319559698429 -0.81684757298045851308085707319559698429 0.21990348731064373527665264980042105793 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n60-d17-sp.txt000066400000000000000000000172641277740313300241110ustar00rootroot00000000000000 -0.16579311127680159678975416725600076679 -0.66841377744639680642049166548799846641 0.054621853056204215047557695108059484685 -0.66841377744639680642049166548799846641 -0.16579311127680159678975416725600076679 0.054621853056204215047557695108059484685 -0.16579311127680159678975416725600076679 -0.16579311127680159678975416725600076679 0.054621853056204215047557695108059484685 -0.97048901667849209319369164139840939816 0.94097803335698418638738328279681879631 0.0055477751552752843092249851846592899136 0.94097803335698418638738328279681879631 -0.97048901667849209319369164139840939816 0.0055477751552752843092249851846592899136 -0.97048901667849209319369164139840939816 -0.97048901667849209319369164139840939816 0.0055477751552752843092249851846592899136 -0.068804256762219396208216818306124542516 -0.86239148647556120758356636338775091497 0.050038901900994715594115060352765454535 -0.86239148647556120758356636338775091497 -0.068804256762219396208216818306124542516 0.050038901900994715594115060352765454535 -0.068804256762219396208216818306124542516 -0.068804256762219396208216818306124542516 0.050038901900994715594115060352765454535 -0.63928376746725875962831385554123912213 0.27856753493451751925662771108247824427 0.052625261176035969912068830347159305457 0.27856753493451751925662771108247824427 -0.63928376746725875962831385554123912213 0.052625261176035969912068830347159305457 -0.63928376746725875962831385554123912213 -0.63928376746725875962831385554123912213 0.052625261176035969912068830347159305457 -0.86669187304080614048646650320300230601 0.73338374608161228097293300640600461202 0.024918001604610884190500085730827367033 0.73338374608161228097293300640600461202 -0.86669187304080614048646650320300230601 0.024918001604610884190500085730827367033 -0.86669187304080614048646650320300230601 -0.86669187304080614048646650320300230601 0.024918001604610884190500085730827367033 -0.42858699512682674399632424251061595821 -0.14282600974634651200735151497876808358 0.075432474305590560032857611935910459517 -0.14282600974634651200735151497876808358 -0.42858699512682674399632424251061595821 0.075432474305590560032857611935910459517 -0.42858699512682674399632424251061595821 -0.42858699512682674399632424251061595821 0.075432474305590560032857611935910459517 -0.96796471527576140631518537573347042693 0.6495801403301760488685812163616402457 0.015956600411859186648565244290131049809 0.6495801403301760488685812163616402457 -0.96796471527576140631518537573347042693 0.015956600411859186648565244290131049809 -0.68161542505441464255339584062816981878 0.6495801403301760488685812163616402457 0.015956600411859186648565244290131049809 0.6495801403301760488685812163616402457 -0.68161542505441464255339584062816981878 0.015956600411859186648565244290131049809 -0.68161542505441464255339584062816981878 -0.96796471527576140631518537573347042693 0.015956600411859186648565244290131049809 -0.96796471527576140631518537573347042693 -0.68161542505441464255339584062816981878 0.015956600411859186648565244290131049809 -0.38743681650762691692938101229025325485 0.25273806077290452413744460559562465037 0.044975545093382132884644311560338005954 0.25273806077290452413744460559562465037 -0.38743681650762691692938101229025325485 0.044975545093382132884644311560338005954 -0.86530124426527760720806359330537139552 0.25273806077290452413744460559562465037 0.044975545093382132884644311560338005954 0.25273806077290452413744460559562465037 -0.86530124426527760720806359330537139552 0.044975545093382132884644311560338005954 -0.86530124426527760720806359330537139552 -0.38743681650762691692938101229025325485 0.044975545093382132884644311560338005954 -0.38743681650762691692938101229025325485 -0.86530124426527760720806359330537139552 0.044975545093382132884644311560338005954 -0.97354065447982621338596657330178882606 0.14258973588936810370129822339191719484 0.020796879911679072927257130756176547979 0.14258973588936810370129822339191719484 -0.97354065447982621338596657330178882606 0.020796879911679072927257130756176547979 -0.16904908140954189031533165009012836878 0.14258973588936810370129822339191719484 0.020796879911679072927257130756176547979 0.14258973588936810370129822339191719484 -0.16904908140954189031533165009012836878 0.020796879911679072927257130756176547979 -0.16904908140954189031533165009012836878 -0.97354065447982621338596657330178882606 0.020796879911679072927257130756176547979 -0.97354065447982621338596657330178882606 -0.16904908140954189031533165009012836878 0.020796879911679072927257130756176547979 -0.84391531886343515165733825896137376978 0.50647029187291623779285479822871979869 0.041115796640909034992011659162843848261 0.50647029187291623779285479822871979869 -0.84391531886343515165733825896137376978 0.041115796640909034992011659162843848261 -0.66255497300948108613551653926734602891 0.50647029187291623779285479822871979869 0.041115796640909034992011659162843848261 0.50647029187291623779285479822871979869 -0.66255497300948108613551653926734602891 0.041115796640909034992011659162843848261 -0.66255497300948108613551653926734602891 -0.84391531886343515165733825896137376978 0.041115796640909034992011659162843848261 -0.84391531886343515165733825896137376978 -0.66255497300948108613551653926734602891 0.041115796640909034992011659162843848261 -0.9737282583319946100667927211400606547 0.43014451822128492303184924075272604399 0.017384429002002383137547850880991473289 0.43014451822128492303184924075272604399 -0.9737282583319946100667927211400606547 0.017384429002002383137547850880991473289 -0.45641625988929031296505651961266538929 0.43014451822128492303184924075272604399 0.017384429002002383137547850880991473289 0.43014451822128492303184924075272604399 -0.45641625988929031296505651961266538929 0.017384429002002383137547850880991473289 -0.45641625988929031296505651961266538929 -0.9737282583319946100667927211400606547 0.017384429002002383137547850880991473289 -0.9737282583319946100667927211400606547 -0.45641625988929031296505651961266538929 0.017384429002002383137547850880991473289 -0.9768496481936387693039157631967710822 0.83183870659563391675486447827828667924 0.0091686968034717336858992147415592016162 0.83183870659563391675486447827828667924 -0.9768496481936387693039157631967710822 0.0091686968034717336858992147415592016162 -0.85498905840199514745094871508151559704 0.83183870659563391675486447827828667924 0.0091686968034717336858992147415592016162 0.83183870659563391675486447827828667924 -0.85498905840199514745094871508151559704 0.0091686968034717336858992147415592016162 -0.85498905840199514745094871508151559704 -0.9768496481936387693039157631967710822 0.0091686968034717336858992147415592016162 -0.9768496481936387693039157631967710822 -0.85498905840199514745094871508151559704 0.0091686968034717336858992147415592016162 -0.68498904414626018994477816895259857135 0.086551159192319548209296799380484667575 0.052343251870673974514245787611602525856 0.086551159192319548209296799380484667575 -0.68498904414626018994477816895259857135 0.052343251870673974514245787611602525856 -0.40156211504605935826451863042788609622 0.086551159192319548209296799380484667575 0.052343251870673974514245787611602525856 0.086551159192319548209296799380484667575 -0.40156211504605935826451863042788609622 0.052343251870673974514245787611602525856 -0.40156211504605935826451863042788609622 -0.68498904414626018994477816895259857135 0.052343251870673974514245787611602525856 -0.68498904414626018994477816895259857135 -0.40156211504605935826451863042788609622 0.052343251870673974514245787611602525856 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n67-d18-sp.txt000066400000000000000000000211111277740313300241030ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.072711470602853332335988402976151320416 -0.20008874386484753663926775646038722347 -0.59982251227030492672146448707922555305 0.066608940066780270570831020513249877437 -0.59982251227030492672146448707922555305 -0.20008874386484753663926775646038722347 0.066608940066780270570831020513249877437 -0.20008874386484753663926775646038722347 -0.20008874386484753663926775646038722347 0.066608940066780270570831020513249877437 -0.024839396850260875373628934599793544657 -0.95032120629947824925274213080041291069 0.024093295267999420236853581306803869378 -0.95032120629947824925274213080041291069 -0.024839396850260875373628934599793544657 0.024093295267999420236853581306803869378 -0.024839396850260875373628934599793544657 -0.024839396850260875373628934599793544657 0.024093295267999420236853581306803869378 -0.076380987187101537262574124416325864243 -0.84723802562579692547485175116734827151 0.037898343013557732052184724503582760819 -0.84723802562579692547485175116734827151 -0.076380987187101537262574124416325864243 0.037898343013557732052184724503582760819 -0.076380987187101537262574124416325864243 -0.076380987187101537262574124416325864243 0.037898343013557732052184724503582760819 -0.51547059497145607559012153340572104878 0.030941189942912151180243066811442097565 0.072950178817887274068289295917294690431 0.030941189942912151180243066811442097565 -0.51547059497145607559012153340572104878 0.072950178817887274068289295917294690431 -0.51547059497145607559012153340572104878 -0.51547059497145607559012153340572104878 0.072950178817887274068289295917294690431 -0.92233948782262881057955835940173820882 0.84467897564525762115911671880347641764 0.014258652039437941355528309610938991063 0.84467897564525762115911671880347641764 -0.92233948782262881057955835940173820882 0.014258652039437941355528309610938991063 -0.92233948782262881057955835940173820882 -0.92233948782262881057955835940173820882 0.014258652039437941355528309610938991063 -0.81610451575671360652823121099663693088 0.63220903151342721305646242199327386177 0.033118319904006498336116111979261819383 0.63220903151342721305646242199327386177 -0.81610451575671360652823121099663693088 0.033118319904006498336116111979261819383 -0.81610451575671360652823121099663693088 -0.81610451575671360652823121099663693088 0.033118319904006498336116111979261819383 -0.90839016828027843774281581498808452091 0.54074475242935042645861991501168424548 0.02751923246988441047583904641836977339 0.54074475242935042645861991501168424548 -0.90839016828027843774281581498808452091 0.02751923246988441047583904641836977339 -0.63235458414907198871580410002359972457 0.54074475242935042645861991501168424548 0.02751923246988441047583904641836977339 0.54074475242935042645861991501168424548 -0.63235458414907198871580410002359972457 0.02751923246988441047583904641836977339 -0.63235458414907198871580410002359972457 -0.90839016828027843774281581498808452091 0.02751923246988441047583904641836977339 -0.90839016828027843774281581498808452091 -0.63235458414907198871580410002359972457 0.02751923246988441047583904641836977339 -0.58730148513232413316130962964884514978 0.3419079703884690263223113955340021876 0.047563821800305659903183394223175954568 0.3419079703884690263223113955340021876 -0.58730148513232413316130962964884514978 0.047563821800305659903183394223175954568 -0.75460648525614489316100176588515703782 0.3419079703884690263223113955340021876 0.047563821800305659903183394223175954568 0.3419079703884690263223113955340021876 -0.75460648525614489316100176588515703782 0.047563821800305659903183394223175954568 -0.75460648525614489316100176588515703782 -0.58730148513232413316130962964884514978 0.047563821800305659903183394223175954568 -0.58730148513232413316130962964884514978 -0.75460648525614489316100176588515703782 0.047563821800305659903183394223175954568 -0.99220477793305323492615661731437867596 0.20083790926851382953172593624080189463 0.0090610690045141307984091089591295584041 0.20083790926851382953172593624080189463 -0.99220477793305323492615661731437867596 0.0090610690045141307984091089591295584041 -0.20863313133546059460556931892642321867 0.20083790926851382953172593624080189463 0.0090610690045141307984091089591295584041 0.20083790926851382953172593624080189463 -0.20863313133546059460556931892642321867 0.0090610690045141307984091089591295584041 -0.20863313133546059460556931892642321867 -0.99220477793305323492615661731437867596 0.0090610690045141307984091089591295584041 -0.99220477793305323492615661731437867596 -0.20863313133546059460556931892642321867 0.0090610690045141307984091089591295584041 -0.97307596651711002157127978980742349944 0.7566843789350434355117007033556566479 0.013680220239214362980455516076649575226 0.7566843789350434355117007033556566479 -0.97307596651711002157127978980742349944 0.013680220239214362980455516076649575226 -0.78360841241793341394042091354823314847 0.7566843789350434355117007033556566479 0.013680220239214362980455516076649575226 0.7566843789350434355117007033556566479 -0.78360841241793341394042091354823314847 0.013680220239214362980455516076649575226 -0.78360841241793341394042091354823314847 -0.97307596651711002157127978980742349944 0.013680220239214362980455516076649575226 -0.97307596651711002157127978980742349944 -0.78360841241793341394042091354823314847 0.013680220239214362980455516076649575226 -0.91947943306018387371123279519490851215 0.27997618400942918982209258667637955233 0.035494978204040810232789924461690967346 0.27997618400942918982209258667637955233 -0.91947943306018387371123279519490851215 0.035494978204040810232789924461690967346 -0.36049675094924531611085979148147104018 0.27997618400942918982209258667637955233 0.035494978204040810232789924461690967346 0.27997618400942918982209258667637955233 -0.36049675094924531611085979148147104018 0.035494978204040810232789924461690967346 -0.36049675094924531611085979148147104018 -0.91947943306018387371123279519490851215 0.035494978204040810232789924461690967346 -0.91947943306018387371123279519490851215 -0.36049675094924531611085979148147104018 0.035494978204040810232789924461690967346 -0.98940332962678046939842579820752941279 0.51785895971039698809029890766872251942 0.010021321749159443407741271393882052956 0.51785895971039698809029890766872251942 -0.98940332962678046939842579820752941279 0.010021321749159443407741271393882052956 -0.52845563008361651869187310946119310664 0.51785895971039698809029890766872251942 0.010021321749159443407741271393882052956 0.51785895971039698809029890766872251942 -0.52845563008361651869187310946119310664 0.010021321749159443407741271393882052956 -0.52845563008361651869187310946119310664 -0.98940332962678046939842579820752941279 0.010021321749159443407741271393882052956 -0.98940332962678046939842579820752941279 -0.52845563008361651869187310946119310664 0.010021321749159443407741271393882052956 -0.99890327991591536201516398045062601334 0.94472145792559133356359726011634553554 0.0024458962539221795584360481949957423674 0.94472145792559133356359726011634553554 -0.99890327991591536201516398045062601334 0.0024458962539221795584360481949957423674 -0.9458181780096759715484332796657195222 0.94472145792559133356359726011634553554 0.0024458962539221795584360481949957423674 0.94472145792559133356359726011634553554 -0.9458181780096759715484332796657195222 0.0024458962539221795584360481949957423674 -0.9458181780096759715484332796657195222 -0.99890327991591536201516398045062601334 0.0024458962539221795584360481949957423674 -0.99890327991591536201516398045062601334 -0.9458181780096759715484332796657195222 0.0024458962539221795584360481949957423674 -0.75882460967215071364642989357871249414 0.091837550772389199617388042151854332785 0.050964350623648878943912767860515151418 0.091837550772389199617388042151854332785 -0.75882460967215071364642989357871249414 0.050964350623648878943912767860515151418 -0.33301294110023848597095814857314183865 0.091837550772389199617388042151854332785 0.050964350623648878943912767860515151418 0.091837550772389199617388042151854332785 -0.33301294110023848597095814857314183865 0.050964350623648878943912767860515151418 -0.33301294110023848597095814857314183865 -0.75882460967215071364642989357871249414 0.050964350623648878943912767860515151418 -0.75882460967215071364642989357871249414 -0.33301294110023848597095814857314183865 0.050964350623648878943912767860515151418 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n7-d5-sp.txt000066400000000000000000000016251277740313300237410ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.45 -0.79742698535308732239802527616975234389 0.59485397070617464479605055233950468778 0.25187836108965430519136789100036266732 0.59485397070617464479605055233950468778 -0.79742698535308732239802527616975234389 0.25187836108965430519136789100036266732 -0.79742698535308732239802527616975234389 -0.79742698535308732239802527616975234389 0.25187836108965430519136789100036266732 -0.059715871789769820459117580973104798968 -0.88056825642046035908176483805379040206 0.26478830557701236147529877566630399935 -0.88056825642046035908176483805379040206 -0.059715871789769820459117580973104798968 0.26478830557701236147529877566630399935 -0.059715871789769820459117580973104798968 -0.059715871789769820459117580973104798968 0.26478830557701236147529877566630399935 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n73-d19-sp.txt000066400000000000000000000225331277740313300241120ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.068938795408024669812026416913714150021 -0.89495221929758206597048698795512662293 0.78990443859516413194097397591025324585 0.014218513195596261075438194944381222518 0.78990443859516413194097397591025324585 -0.89495221929758206597048698795512662293 0.014218513195596261075438194944381222518 -0.89495221929758206597048698795512662293 -0.89495221929758206597048698795512662293 0.014218513195596261075438194944381222518 -0.014974649917326261006204672820750524368 -0.97005070016534747798759065435849895126 0.020643510285888563379375271511299695768 -0.97005070016534747798759065435849895126 -0.014974649917326261006204672820750524368 0.020643510285888563379375271511299695768 -0.014974649917326261006204672820750524368 -0.014974649917326261006204672820750524368 0.020643510285888563379375271511299695768 -0.77710225335395724709458940859057135024 0.55420450670791449418917881718114270048 0.030468702186036599162431617970615364518 0.55420450670791449418917881718114270048 -0.77710225335395724709458940859057135024 0.030468702186036599162431617970615364518 -0.77710225335395724709458940859057135024 -0.77710225335395724709458940859057135024 0.030468702186036599162431617970615364518 -0.08161159792091268505961214209837404408 -0.83677680415817462988077571580325191184 0.045967180053483212460620337545594040128 -0.83677680415817462988077571580325191184 -0.08161159792091268505961214209837404408 0.045967180053483212460620337545594040128 -0.08161159792091268505961214209837404408 -0.08161159792091268505961214209837404408 0.045967180053483212460620337545594040128 -0.19206055489619760678392498292764093084 -0.61587889020760478643215003414471813831 0.063075069786309950153050389763287229858 -0.61587889020760478643215003414471813831 -0.19206055489619760678392498292764093084 0.063075069786309950153050389763287229858 -0.19206055489619760678392498292764093084 -0.19206055489619760678392498292764093084 0.063075069786309950153050389763287229858 -0.64365979043647137831445631799854042799 0.28731958087294275662891263599708085598 0.04930382969638170658102716032808733157 0.28731958087294275662891263599708085598 -0.64365979043647137831445631799854042799 0.04930382969638170658102716032808733157 -0.64365979043647137831445631799854042799 -0.64365979043647137831445631799854042799 0.04930382969638170658102716032808733157 -0.97672107763242110615802660011074523649 0.95344215526484221231605320022149047297 0.0035306455528856953194485177898948363749 0.95344215526484221231605320022149047297 -0.97672107763242110615802660011074523649 0.0035306455528856953194485177898948363749 -0.97672107763242110615802660011074523649 -0.97672107763242110615802660011074523649 0.0035306455528856953194485177898948363749 -0.48967673417278460498250110195791340279 -0.020646531654430790034997796084173194424 0.063506038732006153941897444999340725061 -0.020646531654430790034997796084173194424 -0.48967673417278460498250110195791340279 0.063506038732006153941897444999340725061 -0.48967673417278460498250110195791340279 -0.48967673417278460498250110195791340279 0.063506038732006153941897444999340725061 -0.73860464746393519086078211530574473521 0.6603129288005507482114383730999627094 0.019390968973710091597859466457133882581 0.6603129288005507482114383730999627094 -0.73860464746393519086078211530574473521 0.019390968973710091597859466457133882581 -0.92170828133661555735065625779421797419 0.6603129288005507482114383730999627094 0.019390968973710091597859466457133882581 0.6603129288005507482114383730999627094 -0.92170828133661555735065625779421797419 0.019390968973710091597859466457133882581 -0.92170828133661555735065625779421797419 -0.73860464746393519086078211530574473521 0.019390968973710091597859466457133882581 -0.73860464746393519086078211530574473521 -0.92170828133661555735065625779421797419 0.019390968973710091597859466457133882581 -0.37736474038091749444973870042603089225 0.11873961144060182831770759671302796842 0.052692643954781466370362997690064596362 0.11873961144060182831770759671302796842 -0.37736474038091749444973870042603089225 0.052692643954781466370362997690064596362 -0.74137487105968433386796889628699707617 0.11873961144060182831770759671302796842 0.052692643954781466370362997690064596362 0.11873961144060182831770759671302796842 -0.74137487105968433386796889628699707617 0.052692643954781466370362997690064596362 -0.74137487105968433386796889628699707617 -0.37736474038091749444973870042603089225 0.052692643954781466370362997690064596362 -0.37736474038091749444973870042603089225 -0.74137487105968433386796889628699707617 0.052692643954781466370362997690064596362 -0.99586214820679038477978859628118904207 0.26662658625756826609373531798200113825 0.006564153103671638511890683462332859992 0.26662658625756826609373531798200113825 -0.99586214820679038477978859628118904207 0.006564153103671638511890683462332859992 -0.27076443805077788131394672170081209618 0.26662658625756826609373531798200113825 0.006564153103671638511890683462332859992 0.26662658625756826609373531798200113825 -0.27076443805077788131394672170081209618 0.006564153103671638511890683462332859992 -0.27076443805077788131394672170081209618 -0.99586214820679038477978859628118904207 0.006564153103671638511890683462332859992 -0.99586214820679038477978859628118904207 -0.27076443805077788131394672170081209618 0.006564153103671638511890683462332859992 -0.85087941079674664292586974917469643186 0.40800963993208421976175838156331845374 0.036215889862424900129305127397133399259 0.40800963993208421976175838156331845374 -0.85087941079674664292586974917469643186 0.036215889862424900129305127397133399259 -0.55713022913533757683588863238862202188 0.40800963993208421976175838156331845374 0.036215889862424900129305127397133399259 0.40800963993208421976175838156331845374 -0.55713022913533757683588863238862202188 0.036215889862424900129305127397133399259 -0.55713022913533757683588863238862202188 -0.85087941079674664292586974917469643186 0.036215889862424900129305127397133399259 -0.85087941079674664292586974917469643186 -0.55713022913533757683588863238862202188 0.036215889862424900129305127397133399259 -0.98998542348529101773301781123483422136 0.70513390875377839935650663034800986154 0.0058526302069404008122936576981139743993 0.70513390875377839935650663034800986154 -0.98998542348529101773301781123483422136 0.0058526302069404008122936576981139743993 -0.71514848526848738162348881911317564017 0.70513390875377839935650663034800986154 0.0058526302069404008122936576981139743993 0.70513390875377839935650663034800986154 -0.71514848526848738162348881911317564017 0.0058526302069404008122936576981139743993 -0.71514848526848738162348881911317564017 -0.98998542348529101773301781123483422136 0.0058526302069404008122936576981139743993 -0.98998542348529101773301781123483422136 -0.71514848526848738162348881911317564017 0.0058526302069404008122936576981139743993 -0.91822397760796624772174420894241076741 0.21016795813741592822569883837786491478 0.032204325528048216419984026965287582219 0.21016795813741592822569883837786491478 -0.91822397760796624772174420894241076741 0.032204325528048216419984026965287582219 -0.29194398052944968050395462943545414738 0.21016795813741592822569883837786491478 0.032204325528048216419984026965287582219 0.21016795813741592822569883837786491478 -0.29194398052944968050395462943545414738 0.032204325528048216419984026965287582219 -0.29194398052944968050395462943545414738 -0.91822397760796624772174420894241076741 0.032204325528048216419984026965287582219 -0.91822397760796624772174420894241076741 -0.29194398052944968050395462943545414738 0.032204325528048216419984026965287582219 -0.51621084207884086284394200561371723534 0.48636273791487271949314123346299601262 0.016911774999072993635042140907181887112 0.48636273791487271949314123346299601262 -0.51621084207884086284394200561371723534 0.016911774999072993635042140907181887112 -0.97015189583603185664919922784927877729 0.48636273791487271949314123346299601262 0.016911774999072993635042140907181887112 0.48636273791487271949314123346299601262 -0.97015189583603185664919922784927877729 0.016911774999072993635042140907181887112 -0.97015189583603185664919922784927877729 -0.51621084207884086284394200561371723534 0.016911774999072993635042140907181887112 -0.51621084207884086284394200561371723534 -0.97015189583603185664919922784927877729 0.016911774999072993635042140907181887112 -0.87982744935538660401520750808428413826 0.86027539775361029331257605015603810029 0.0066544027257187765179463625108825701742 0.86027539775361029331257605015603810029 -0.87982744935538660401520750808428413826 0.0066544027257187765179463625108825701742 -0.98044794839822368929736854207175396203 0.86027539775361029331257605015603810029 0.0066544027257187765179463625108825701742 0.86027539775361029331257605015603810029 -0.98044794839822368929736854207175396203 0.0066544027257187765179463625108825701742 -0.98044794839822368929736854207175396203 -0.87982744935538660401520750808428413826 0.0066544027257187765179463625108825701742 -0.87982744935538660401520750808428413826 -0.98044794839822368929736854207175396203 0.0066544027257187765179463625108825701742 pyfr-1.5.0/pyfr/quadrules/tri/witherden-vincent-n79-d20-sp.txt000066400000000000000000000241551277740313300241120ustar00rootroot00000000000000 -0.33333333333333333333333333333333333333 -0.33333333333333333333333333333333333333 0.055640442805812463631566788253898051532 -0.49084146465332177523029470374523072315 -0.018317070693356449539410592509538553699 0.05633280523008099012864178412473069936 -0.018317070693356449539410592509538553699 -0.49084146465332177523029470374523072315 0.05633280523008099012864178412473069936 -0.49084146465332177523029470374523072315 -0.49084146465332177523029470374523072315 0.05633280523008099012864178412473069936 -0.97804771794320447192070397628224037507 0.95609543588640894384140795256448075015 0.0031953631642664794478945847330657770722 0.95609543588640894384140795256448075015 -0.97804771794320447192070397628224037507 0.0031953631642664794478945847330657770722 -0.97804771794320447192070397628224037507 -0.97804771794320447192070397628224037507 0.0031953631642664794478945847330657770722 -0.78123280657657080596625505020033275589 0.56246561315314161193251010040066551178 0.031320923104298133684407003648894203447 0.56246561315314161193251010040066551178 -0.78123280657657080596625505020033275589 0.031320923104298133684407003648894203447 -0.78123280657657080596625505020033275589 -0.78123280657657080596625505020033275589 0.031320923104298133684407003648894203447 -0.62741000451091811445653498388475129105 0.2548200090218362289130699677695025821 0.036693851897011657919252854118138043537 0.2548200090218362289130699677695025821 -0.62741000451091811445653498388475129105 0.036693851897011657919252854118138043537 -0.62741000451091811445653498388475129105 -0.62741000451091811445653498388475129105 0.036693851897011657919252854118138043537 -0.10889788608815036962555544313157118467 -0.78220422782369926074888911373685763067 0.037809599732929790747314162640799596721 -0.78220422782369926074888911373685763067 -0.10889788608815036962555544313157118467 0.037809599732929790747314162640799596721 -0.10889788608815036962555544313157118467 -0.10889788608815036962555544313157118467 0.037809599732929790747314162640799596721 -0.92537823880223061201299256742556755612 0.85075647760446122402598513485113511224 0.008645101642662310104692722157806774508 0.85075647760446122402598513485113511224 -0.92537823880223061201299256742556755612 0.008645101642662310104692722157806774508 -0.92537823880223061201299256742556755612 -0.92537823880223061201299256742556755612 0.008645101642662310104692722157806774508 -0.21314930436580028264207251299344481704 -0.57370139126839943471585497401311036593 0.055152202516281836053550890863277393079 -0.57370139126839943471585497401311036593 -0.21314930436580028264207251299344481704 0.055152202516281836053550890863277393079 -0.21314930436580028264207251299344481704 -0.21314930436580028264207251299344481704 0.055152202516281836053550890863277393079 -0.047508776919001973579296255534818088061 -0.90498244616199605284140748893036382388 0.028407301213633761967680465924479290382 -0.90498244616199605284140748893036382388 -0.047508776919001973579296255534818088061 0.028407301213633761967680465924479290382 -0.047508776919001973579296255534818088061 -0.047508776919001973579296255534818088061 0.028407301213633761967680465924479290382 -0.98485843899060694347353308294287690802 0.66659102367647249434430238008617319241 0.0088115896742339902561312708157853846482 0.66659102367647249434430238008617319241 -0.98485843899060694347353308294287690802 0.0088115896742339902561312708157853846482 -0.68173258468586555087076929714329628438 0.66659102367647249434430238008617319241 0.0088115896742339902561312708157853846482 0.66659102367647249434430238008617319241 -0.68173258468586555087076929714329628438 0.0088115896742339902561312708157853846482 -0.68173258468586555087076929714329628438 -0.98485843899060694347353308294287690802 0.0088115896742339902561312708157853846482 -0.98485843899060694347353308294287690802 -0.68173258468586555087076929714329628438 0.0088115896742339902561312708157853846482 -0.90687927018467136697246089078946388707 0.5098430057270950102124174847737658903 0.023945594315818760080585256144999165493 0.5098430057270950102124174847737658903 -0.90687927018467136697246089078946388707 0.023945594315818760080585256144999165493 -0.60296373554242364323995659398430200323 0.5098430057270950102124174847737658903 0.023945594315818760080585256144999165493 0.5098430057270950102124174847737658903 -0.60296373554242364323995659398430200323 0.023945594315818760080585256144999165493 -0.60296373554242364323995659398430200323 -0.90687927018467136697246089078946388707 0.023945594315818760080585256144999165493 -0.90687927018467136697246089078946388707 -0.60296373554242364323995659398430200323 0.023945594315818760080585256144999165493 -0.87181882878313187990026866476433962457 0.86210895356788437332353836160651207109 0.0045194784085034621179235150583929560485 0.86210895356788437332353836160651207109 -0.87181882878313187990026866476433962457 0.0045194784085034621179235150583929560485 -0.99029012478475249342326969684217244652 0.86210895356788437332353836160651207109 0.0045194784085034621179235150583929560485 0.86210895356788437332353836160651207109 -0.99029012478475249342326969684217244652 0.0045194784085034621179235150583929560485 -0.99029012478475249342326969684217244652 -0.87181882878313187990026866476433962457 0.0045194784085034621179235150583929560485 -0.87181882878313187990026866476433962457 -0.99029012478475249342326969684217244652 0.0045194784085034621179235150583929560485 -0.89002504171402637873154550296837045792 0.22375540709485139987629530764328543032 0.034668902268877332248730626058035734221 0.22375540709485139987629530764328543032 -0.89002504171402637873154550296837045792 0.034668902268877332248730626058035734221 -0.3337303653808250211447498046749149724 0.22375540709485139987629530764328543032 0.034668902268877332248730626058035734221 0.22375540709485139987629530764328543032 -0.3337303653808250211447498046749149724 0.034668902268877332248730626058035734221 -0.3337303653808250211447498046749149724 -0.89002504171402637873154550296837045792 0.034668902268877332248730626058035734221 -0.89002504171402637873154550296837045792 -0.3337303653808250211447498046749149724 0.034668902268877332248730626058035734221 -0.8000954074237226892341843533057676038 0.72336803787297349848896164841146460112 0.016582846110455430851049450635630476598 0.72336803787297349848896164841146460112 -0.8000954074237226892341843533057676038 0.016582846110455430851049450635630476598 -0.92327263044925080925477729510569699731 0.72336803787297349848896164841146460112 0.016582846110455430851049450635630476598 0.72336803787297349848896164841146460112 -0.92327263044925080925477729510569699731 0.016582846110455430851049450635630476598 -0.92327263044925080925477729510569699731 -0.8000954074237226892341843533057676038 0.016582846110455430851049450635630476598 -0.8000954074237226892341843533057676038 -0.92327263044925080925477729510569699731 0.016582846110455430851049450635630476598 -0.78754559055945991527489139589221510388 0.35633147577927110921599545999123193124 0.030890431288396919377481650650853417183 0.35633147577927110921599545999123193124 -0.78754559055945991527489139589221510388 0.030890431288396919377481650650853417183 -0.56878588521981119394110406409901682736 0.35633147577927110921599545999123193124 0.030890431288396919377481650650853417183 0.35633147577927110921599545999123193124 -0.56878588521981119394110406409901682736 0.030890431288396919377481650650853417183 -0.56878588521981119394110406409901682736 -0.78754559055945991527489139589221510388 0.030890431288396919377481650650853417183 -0.78754559055945991527489139589221510388 -0.56878588521981119394110406409901682736 0.030890431288396919377481650650853417183 -0.1599524823675518407071141661054621128 0.1402893857819467195500916946480886286 0.01478272600102119191287687445277038169 0.1402893857819467195500916946480886286 -0.1599524823675518407071141661054621128 0.01478272600102119191287687445277038169 -0.9803369034143948788429775285426265158 0.1402893857819467195500916946480886286 0.01478272600102119191287687445277038169 0.1402893857819467195500916946480886286 -0.9803369034143948788429775285426265158 0.01478272600102119191287687445277038169 -0.9803369034143948788429775285426265158 -0.1599524823675518407071141661054621128 0.01478272600102119191287687445277038169 -0.1599524823675518407071141661054621128 -0.9803369034143948788429775285426265158 0.01478272600102119191287687445277038169 -0.36427975232845596804806465673948070356 0.084663608344856170859761688802646336641 0.046766982927310947730184310937781849814 0.084663608344856170859761688802646336641 -0.36427975232845596804806465673948070356 0.046766982927310947730184310937781849814 -0.72038385601640020281169703206316563308 0.084663608344856170859761688802646336641 0.046766982927310947730184310937781849814 0.084663608344856170859761688802646336641 -0.72038385601640020281169703206316563308 0.046766982927310947730184310937781849814 -0.72038385601640020281169703206316563308 -0.36427975232845596804806465673948070356 0.046766982927310947730184310937781849814 -0.36427975232845596804806465673948070356 -0.72038385601640020281169703206316563308 0.046766982927310947730184310937781849814 -0.97852557428797782533895087798420844581 0.41736275144064735566397781689608203229 0.014312800953830741459725346431171736663 0.41736275144064735566397781689608203229 -0.97852557428797782533895087798420844581 0.014312800953830741459725346431171736663 -0.43883717715266953032502693891187358648 0.41736275144064735566397781689608203229 0.014312800953830741459725346431171736663 0.41736275144064735566397781689608203229 -0.43883717715266953032502693891187358648 0.014312800953830741459725346431171736663 -0.43883717715266953032502693891187358648 -0.97852557428797782533895087798420844581 0.014312800953830741459725346431171736663 -0.97852557428797782533895087798420844581 -0.43883717715266953032502693891187358648 0.014312800953830741459725346431171736663 pyfr-1.5.0/pyfr/rank_allocator.py000066400000000000000000000054461277740313300170420ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from collections import defaultdict import random import re from pyfr.mpiutil import get_comm_rank_root from pyfr.util import subclass_where def get_rank_allocation(mesh, cfg): name = cfg.get('backend', 'rank-allocator', 'linear') return subclass_where(BaseRankAllocator, name=name)(mesh, cfg) class BaseRankAllocator(object, metaclass=ABCMeta): name = None def __init__(self, mesh, cfg): self.cfg = cfg comm, rank, root = get_comm_rank_root() # Have the root rank determine the connectivity of the mesh if rank == root: prankconn = self._get_mesh_connectivity(mesh) nparts = len(prankconn) if nparts != comm.size: raise RuntimeError('Mesh has {0} partitions but running with ' '{1} MPI ranks'.format(nparts, comm.size)) else: prankconn = None # Get subclass dependant info about each rank (e.g., hostname) rinfo = comm.gather(self._get_rank_info(), root=root) # If we are the root rank then perform the rank allocation if rank == root: mprankmap = self._get_mprankmap(prankconn, rinfo) else: mprankmap = None # Broadcast the connectivity and rank mappings to all other ranks self.prankconn = prankconn = comm.bcast(prankconn, root=root) self.mprankmap = mprankmap = comm.bcast(mprankmap, root=root) # Invert the mapping to obtain the physical-to-MPI rank mapping self.pmrankmap = sorted(range(comm.size), key=mprankmap.__getitem__) # Compute our physical rank self.prank = mprankmap[rank] def _get_mesh_connectivity(self, mesh): conn = defaultdict(list) for f in mesh: m = re.match(r'con_p(\d+)p(\d+)$', f) if m: lhs, rhs = int(m.group(1)), int(m.group(2)) conn[lhs].append(rhs) if 'con_p{0}p{1}'.format(rhs, lhs) not in mesh: raise ValueError('MPI interface ({0}, {1}) is not ' 'symmetric'.format(lhs, rhs)) return [conn[i] for i in range(len(conn) or 1)] @abstractmethod def _get_rank_info(self): pass @abstractmethod def _get_mprankmap(self, prankconn, rinfo): pass class LinearRankAllocator(BaseRankAllocator): name = 'linear' def _get_rank_info(self): return None def _get_mprankmap(self, prankconn, rinfo): return list(range(len(rinfo))) class RandomRankAllocator(BaseRankAllocator): name = 'random' def _get_rank_info(self): return None def _get_mprankmap(self, prankconn, rinfo): return random.sample(range(len(rinfo)), len(rinfo)) pyfr-1.5.0/pyfr/readers/000077500000000000000000000000001277740313300151115ustar00rootroot00000000000000pyfr-1.5.0/pyfr/readers/__init__.py000066400000000000000000000010401277740313300172150ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.readers.base import BaseReader, NodalMeshAssembler from pyfr.readers.cgns import CGNSReader from pyfr.readers.gmsh import GmshReader from pyfr.util import subclasses, subclass_where def get_reader_by_name(name, *args, **kwargs): return subclass_where(BaseReader, name=name)(*args, **kwargs) def get_reader_by_extn(extn, *args, **kwargs): reader_map = {ex: cls for cls in subclasses(BaseReader) for ex in cls.extn} return reader_map[extn](*args, **kwargs) pyfr-1.5.0/pyfr/readers/base.py000066400000000000000000000171271277740313300164050ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from collections import defaultdict from itertools import chain import uuid import numpy as np from pyfr.nputil import fuzzysort class BaseReader(object, metaclass=ABCMeta): @abstractmethod def __init__(self): pass @abstractmethod def _to_raw_pyfrm(self): pass def to_pyfrm(self): mesh = self._to_raw_pyfrm() # Add metadata mesh['mesh_uuid'] = np.array(str(uuid.uuid4()), dtype='S') return mesh class NodalMeshAssembler(object): # Dimensionality of each element type _petype_ndim = {'tri': 2, 'quad': 2, 'tet': 3, 'hex': 3, 'pri': 3, 'pyr': 3} # Face numberings for each element type _petype_fnums = { 'tri': {'line': [0, 1, 2]}, 'quad': {'line': [0, 1, 2, 3]}, 'tet': {'tri': [0, 1, 2, 3]}, 'hex': {'quad': [0, 1, 2, 3, 4, 5]}, 'pri': {'quad': [2, 3, 4], 'tri': [0, 1]}, 'pyr': {'quad': [0], 'tri': [1, 2, 3, 4]} } # Number of nodes in the first-order representation an element _petype_focount = {'line': 2, 'tri': 3, 'quad': 4, 'tet': 4, 'pyr': 5, 'pri': 6, 'hex': 8} def __init__(self, nodepts, elenodes, pents, maps): self._nodepts = nodepts self._elenodes = elenodes self._felespent, self._bfacespents, self._pfacespents = pents self._etype_map, self._petype_fnmap, self._nodemaps = maps def _check_pyr_parallelogram(self, foeles): nodepts = self._nodepts # Find PyFR node map for the quad face fnmap = self._petype_fnmap['pyr']['quad'][0] pfnmap = self._nodemaps.from_pyfr['quad', 4][fnmap] # Face nodes fpts = np.array([[nodepts[i] for i in fidx] for fidx in foeles[:, pfnmap]]) fpts = fpts.swapaxes(0, 1) # Check parallelogram or not if np.any(np.abs(fpts[0] - fpts[1] - fpts[2] + fpts[3]) > 1e-10): raise ValueError('Pyramids with non-parallelogram bases are ' 'currently unsupported') def _to_first_order(self, elemap): foelemap = {} for (etype, epent), eles in elemap.items(): # PyFR element type ('hex', 'tri', &c) petype = self._etype_map[etype][0] # Number of nodes in the first-order representation focount = self._petype_focount[petype] foelemap[petype, epent] = eles[:,:focount] # Check if pyramids have a parallelogram base or not if petype == 'pyr': self._check_pyr_parallelogram(foelemap[petype, epent]) return foelemap def _split_fluid(self, elemap): selemap = defaultdict(dict) for (petype, epent), eles in elemap.items(): selemap[epent][petype] = eles return selemap.pop(self._felespent), selemap def _foface_info(self, petype, pftype, foeles): # Face numbers of faces of this type on this element fnums = self._petype_fnums[petype][pftype] # First-order nodes associated with this face fnmap = self._petype_fnmap[petype][pftype] # Connectivity; (petype, eidx, fidx, flags) con = [(petype, i, j, 0) for i in range(len(foeles)) for j in fnums] # Nodes nodes = np.sort(foeles[:, fnmap]).reshape(len(con), -1) return con, nodes def _extract_faces(self, foeles): fofaces = defaultdict(list) for petype, eles in foeles.items(): for pftype in self._petype_fnums[petype]: fofinf = self._foface_info(petype, pftype, eles) fofaces[pftype].append(fofinf) return fofaces def _pair_fluid_faces(self, ffofaces): pairs = defaultdict(list) resid = {} for pftype, faces in ffofaces.items(): for f, n in chain.from_iterable(zip(f, n) for f, n in faces): sn = tuple(n) # See if the nodes are in resid if sn in resid: pairs[pftype].append([resid.pop(sn), f]) # Otherwise add them to the unpaired dict else: resid[sn] = f return pairs, resid def _pair_periodic_fluid_faces(self, bpart, resid): pfaces = defaultdict(list) nodepts = self._nodepts for lpent, rpent in self._pfacespents.values(): for pftype in bpart[lpent]: lfnodes = bpart[lpent][pftype] rfnodes = bpart[rpent][pftype] lfpts = np.array([[nodepts[n] for n in fn] for fn in lfnodes]) rfpts = np.array([[nodepts[n] for n in fn] for fn in rfnodes]) lfidx = fuzzysort(lfpts.mean(axis=1).T, range(len(lfnodes))) rfidx = fuzzysort(rfpts.mean(axis=1).T, range(len(rfnodes))) for lfn, rfn in zip(lfnodes[lfidx], rfnodes[rfidx]): lf = resid.pop(tuple(sorted(lfn))) rf = resid.pop(tuple(sorted(rfn))) pfaces[pftype].append([lf, rf]) return pfaces def _ident_boundary_faces(self, bpart, resid): bfaces = defaultdict(list) bpents = set(self._bfacespents.values()) for epent, fnodes in bpart.items(): if epent in bpents: for fn in chain.from_iterable(fnodes.values()): bfaces[epent].append(resid.pop(tuple(sorted(fn)))) return bfaces def get_connectivity(self): # For connectivity a first-order representation is sufficient eles = self._to_first_order(self._elenodes) # Split into fluid and boundary parts fpart, bpart = self._split_fluid(eles) # Extract the faces of the fluid elements ffaces = self._extract_faces(fpart) # Pair the fluid-fluid faces fpairs, resid = self._pair_fluid_faces(ffaces) # Identify periodic boundary face pairs pfpairs = self._pair_periodic_fluid_faces(bpart, resid) # Identify the fixed boundary faces bf = self._ident_boundary_faces(bpart, resid) if any(resid.values()): raise ValueError('Unpaired faces in mesh') # Flattern the face-pair dicts pairs = chain(chain.from_iterable(fpairs.values()), chain.from_iterable(pfpairs.values())) # Generate the internal connectivity array con = list(pairs) # Generate boundary condition connectivity arrays bcon = {} for pbcrgn, pent in self._bfacespents.items(): bcon[pbcrgn] = bf[pent] # Output ret = {'con_p0': np.array(con, dtype='S4,i4,i1,i1').T} for k, v in bcon.items(): ret['bcon_{0}_p0'.format(k)] = np.array(v, dtype='S4,i4,i1,i1') return ret def get_shape_points(self): spts = {} # Global node map (node index to coords) nodepts = self._nodepts for etype, pent in self._elenodes: if pent != self._felespent: continue # Elements and type information eles = self._elenodes[etype, pent] petype, nnodes = self._etype_map[etype] # Go from Gmsh to PyFR node ordering peles = eles[:, self._nodemaps.from_pyfr[petype, nnodes]] # Obtain the dimensionality of the element type ndim = self._petype_ndim[petype] # Build the array arr = np.array([[nodepts[i] for i in nn] for nn in peles]) arr = arr.swapaxes(0, 1) arr = arr[..., :ndim] spts['spt_{0}_p0'.format(petype)] = arr return spts pyfr-1.5.0/pyfr/readers/cgns.py000066400000000000000000000333571277740313300164300ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import defaultdict from ctypes import POINTER, create_string_buffer, c_char_p, c_int, c_void_p import re import numpy as np from pyfr.ctypesutil import load_library from pyfr.readers import BaseReader, NodalMeshAssembler from pyfr.readers.nodemaps import CGNSNodeMaps # Possible CGNS exception types CGNSError = type('CGNSError', (Exception,), {}) CGNSNodeNotFound = type('CGNSNodeNotFound', (CGNSError,), {}) CGNSIncorrectPath = type('CGNSIncorrectPath', (CGNSError,), {}) CGNSNoIndexDim = type('CGNSNoIndexDim', (CGNSError,), {}) class CGNSWrappers(object): # Possible return codes _statuses = { -1: CGNSError, -2: CGNSNodeNotFound, -3: CGNSIncorrectPath, -4: CGNSNoIndexDim } def __init__(self): # Load CGNS 3.3+ # Previous version may yield undefined symbols from HDF5. # Develop branch after the commit (e0faea6) fixes this issue. self.lib = lib = load_library('cgns') # Constants (from cgnslib.h) self.CG_MODE_READ = 0 self.RealDouble = 4 self.Unstructured = 3 self.PointRange, self.ElementRange = 4, 6 # cg_open lib.cg_open.argtypes = [c_char_p, c_int, POINTER(c_int)] lib.cg_open.errcheck = self._errcheck # cg_close lib.cg_close.argtypes = [c_int] lib.cg_close.errcheck = self._errcheck # cg_base_read lib.cg_base_read.argtypes = [c_int, c_int, c_char_p, POINTER(c_int), POINTER(c_int)] lib.cg_base_read.errcheck = self._errcheck # cg_nzones lib.cg_nzones.argtypes = [c_int, c_int, POINTER(c_int)] lib.cg_nzones.errcheck = self._errcheck # cg_zone_read lib.cg_zone_read.argtypes = [c_int, c_int, c_int, c_char_p, POINTER(c_int)] lib.cg_zone_read.errcheck = self._errcheck # cg_zone_type lib.cg_zone_type.argtypes = [c_int, c_int, c_int, POINTER(c_int)] lib.cg_zone_type.errcheck = self._errcheck # cg_coord_read lib.cg_coord_read.argtypes = [ c_int, c_int, c_int, c_char_p, c_int, POINTER(c_int), POINTER(c_int), c_void_p ] lib.cg_coord_read.errcheck = self._errcheck # cg_nbocos lib.cg_nbocos.argtypes = [c_int, c_int, c_int, POINTER(c_int)] lib.cg_nbocos.errcheck = self._errcheck # cg_boco_info lib.cg_boco_info.argtypes = [ c_int, c_int, c_int, c_int, c_char_p, POINTER(c_int), POINTER(c_int), POINTER(c_int), POINTER(c_int), POINTER(c_int), POINTER(c_int), POINTER(c_int) ] lib.cg_boco_info.errcheck = self._errcheck # cg_boco_read lib.cg_boco_read.argtypes = [c_int, c_int, c_int, c_int, POINTER(c_int), c_void_p] lib.cg_boco_read.errcheck = self._errcheck # cg_nsections lib.cg_nsections.argtypes = [c_int, c_int, c_int, POINTER(c_int)] lib.cg_nsections.errcheck = self._errcheck # cg_section_read lib.cg_section_read.argtypes = [ c_int, c_int, c_int, c_int, c_char_p, POINTER(c_int), POINTER(c_int), POINTER(c_int), POINTER(c_int), POINTER(c_int) ] lib.cg_section_read.errcheck = self._errcheck # cg_ElementDataSize lib.cg_ElementDataSize.argtypes = [c_int, c_int, c_int, c_int, POINTER(c_int)] lib.cg_ElementDataSize.errcheck = self._errcheck # cg_elements_read lib.cg_elements_read.argtypes = [c_int, c_int, c_int, c_int, c_void_p, c_void_p] lib.cg_elements_read.errcheck = self._errcheck def _errcheck(self, status, fn, arg): if status != 0: try: raise self._statuses[status] except KeyError: raise CGNSError def open(self, name): file = c_int() self.lib.cg_open(bytes(name, 'utf-8'), self.CG_MODE_READ, file) return file def close(self, file): self.lib.cg_close(file) def base_read(self, file, idx): celldim, physdim = c_int(), c_int() name = create_string_buffer(32) self.lib.cg_base_read(file, idx + 1, name, celldim, physdim) return {'file': file, 'idx': idx + 1, 'name': name.value.decode('utf-8'), 'CellDim': celldim.value, 'PhysDim': physdim.value} def nzones(self, base): n = c_int() self.lib.cg_nzones(base['file'], base['idx'], n) return n.value def zone_read(self, base, idx): zonetype = c_int() name = create_string_buffer(32) size = (c_int * 3)() self.lib.cg_zone_read(base['file'], base['idx'], idx + 1, name, size) # Check zone type self.lib.cg_zone_type(base['file'], base['idx'], idx + 1, zonetype) if zonetype.value != self.Unstructured: raise RuntimeError('ReadCGNS_read: Incorrect zone type for file') return {'base': base, 'idx': idx + 1, 'name': name.value.decode('utf-8'), 'size': list(size)} def coord_read(self, zone, name, x): i = c_int(1) j = c_int(zone['size'][0]) file = zone['base']['file'] base = zone['base']['idx'] zone = zone['idx'] # The data type does not need to be the same as the one in which the # coordinates are stored in the file # http://cgns.github.io/CGNS_docs_current/midlevel/grid.html datatype = self.RealDouble self.lib.cg_coord_read(file, base, zone, bytes(name, 'utf-8'), datatype, i, j, x.ctypes.data) def nbocos(self, zone): file = zone['base']['file'] base = zone['base']['idx'] zone = zone['idx'] n = c_int() self.lib.cg_goto(file, base, b'Zone_t', 1, b'ZoneBC_t', 1, b'end') self.lib.cg_nbocos(file, base, zone, n) return n.value def boco_read(self, zone, idx): file = zone['base']['file'] base = zone['base']['idx'] zone = zone['idx'] name = create_string_buffer(32) bocotype = c_int() ptset_type = c_int() npnts = c_int() normalindex = (c_int * 3)() normallistsize = c_int() normaldatatype = c_int() ndataset = c_int() bcrange = (c_int * 2)() self.lib.cg_boco_info( file, base, zone, idx + 1, name, bocotype, ptset_type, npnts, normalindex, normallistsize, normaldatatype, ndataset ) if ptset_type.value not in [self.PointRange, self.ElementRange]: raise RuntimeError('Only element range BC is supported') self.lib.cg_boco_read(file, base, zone, idx + 1, bcrange, None) return {'name': name.value.decode('utf-8'), 'range': tuple(bcrange)} def nsections(self, zone): file = zone['base']['file'] base = zone['base']['idx'] zone = zone['idx'] n = c_int() self.lib.cg_nsections(file, base, zone, n) return n.value def section_read(self, zone, idx): file = zone['base']['file'] base = zone['base']['idx'] zidx = zone['idx'] name = create_string_buffer(32) etype, start, end, nbdry = c_int(), c_int(), c_int(), c_int() pflag, cdim = c_int(), c_int() self.lib.cg_section_read( file, base, zidx, idx + 1, name, etype, start, end, nbdry, pflag ) self.lib.cg_ElementDataSize(file, base, zidx, idx + 1, cdim) return {'zone': zone, 'idx': idx + 1, 'dim': cdim.value, 'etype': etype.value, 'range': (start.value, end.value)} def elements_read(self, sect, conn): file = sect['zone']['base']['file'] base = sect['zone']['base']['idx'] zone = sect['zone']['idx'] idx = sect['idx'] self.lib.cg_elements_read(file, base, zone, idx, conn.ctypes.data, None) class CGNSZoneReader(object): # CGNS element types to PyFR type (petype) and node counts cgns_map = { 3: ('line', 2), 4: ('line', 3), 24: ('line', 4), 40: ('line', 5), 5: ('tri', 3), 6: ('tri', 6), 26: ('tri', 10), 42: ('tri', 15), 7: ('quad', 4), 9: ('quad', 9), 28: ('quad', 16), 44: ('quad', 25), 10: ('tet', 4), 11: ('tet', 10), 30: ('tet', 20), 47: ('tet', 35), 12: ('pyr', 5), 13: ('pyr', 14), 33: ('pyr', 30), 50: ('pyr', 55), 14: ('pri', 6), 16: ('pri', 18), 36: ('pri', 40), 53: ('pri', 75), 17: ('hex', 8), 19: ('hex', 27), 39: ('hex', 64), 56: ('hex', 125), 20: ('mixed',), } def __init__(self, cgns, base, idx): self._cgns = cgns zone = cgns.zone_read(base, idx) # Read nodes self.nodepts = self._read_nodepts(zone) # Read bc bc = self._read_bc(zone) # Read elements self.elenodes = elenodes = {} self.pents = pents = {} # Construct elenodes and physical entity for idx in range(cgns.nsections(zone)): elerng, elenode = self._read_element(zone, idx) for bcname, bcrng in bc.items(): if elerng[0] >= bcrng[0] and elerng[1] <= bcrng[1]: name = bcname break else: name = 'fluid' pent = pents.setdefault(name, idx) elenodes.update({(k, pent): v for k, v in elenode.items()}) def _read_nodepts(self, zone): nnode = zone['size'][0] nodepts = np.zeros((3, nnode)) self._cgns.coord_read(zone, 'CoordinateX', nodepts[0]) self._cgns.coord_read(zone, 'CoordinateY', nodepts[1]) self._cgns.coord_read(zone, 'CoordinateZ', nodepts[2]) return nodepts def _read_bc(self, zone): nbc = self._cgns.nbocos(zone) bc = {} for idx_bc in range(nbc): boco = self._cgns.boco_read(zone, idx_bc) name = boco['name'].lower() bc[name] = boco['range'] return bc def _read_element(self, zone, idx): s = self._cgns.section_read(zone, idx) elerng = s['range'] conn = np.zeros(s['dim'], dtype=np.int32) self._cgns.elements_read(s, conn) cgns_type = s['etype'] petype = self.cgns_map[cgns_type][0] elenode = {} if petype == 'mixed': i = 0 mele = defaultdict(list) while i < s['dim']: try: cgns_type = conn[i] petype, spts = self.cgns_map[cgns_type] except KeyError: raise mele[cgns_type].append(conn[i + 1: i + 1 + spts]) i += 1 + spts elenode = {k: np.array(v) for k, v in mele.items()} else: spts = self.cgns_map[cgns_type][1] elenode[cgns_type] = conn.reshape(-1, spts) return elerng, elenode class CGNSReader(BaseReader): # Supported file types and extensions name = 'cgns' extn = ['.cgns'] # CGNS element types to PyFR type (petype) and node counts _etype_map = CGNSZoneReader.cgns_map # First-order node numbers associated with each element face _petype_fnmap = { 'tri': {'line': [[0, 1], [1, 2], [2, 0]]}, 'quad': {'line': [[0, 1], [1, 2], [2, 3], [3, 0]]}, 'tet': {'tri': [[0, 1, 2], [0, 1, 3], [0, 2, 3], [1, 2, 3]]}, 'hex': {'quad': [[0, 1, 2, 3], [0, 1, 4, 5], [1, 2, 5, 6], [2, 3, 6, 7], [0, 3, 4, 7], [4, 5, 6, 7]]}, 'pri': {'quad': [[0, 1, 3, 4], [1, 2, 4, 5], [0, 2, 3, 5]], 'tri': [[0, 1, 2], [3, 4, 5]]}, 'pyr': {'quad': [[0, 1, 2, 3]], 'tri': [[0, 1, 4], [1, 2, 4], [2, 3, 4], [0, 3, 4]]} } # Mappings between the node ordering of PyFR and that of CGNS _nodemaps = CGNSNodeMaps def __init__(self, msh): # Load and wrap CGNS self._cgns = cgns = CGNSWrappers() # Read CGNS mesh file self._file = file = cgns.open(msh.name) base = cgns.base_read(file, 0) if cgns.nzones(base) > 1: raise ValueError('Only single zone is supported') # Read the single CGNS Zone zone = CGNSZoneReader(cgns, base, 0) self._nodepts = {i + 1: v for i, v in enumerate(zone.nodepts.swapaxes(0, 1))} self._elenodes = zone.elenodes pents = zone.pents # Physical entities can be divided up into: # - fluid elements ('the mesh') # - boundary faces # - periodic faces self._felespent = pents.pop('fluid') self._bfacespents = {} self._pfacespents = defaultdict(list) for name, pent in pents.items(): if name.startswith('periodic'): p = re.match(r'periodic[ _-]([a-z0-9]+)[ _-](l|r)$', name) if not p: raise ValueError('Invalid periodic boundary condition') self._pfacespents[p.group(1)].append(name) # Other boundary faces else: self._bfacespents[name] = pent if any(len(pf) != 2 for pf in self._pfacespents.values()): raise ValueError('Unpaired periodic boundary in mesh') def __del__(self): if hasattr(self, '_file'): self._cgns.close(self._file) def _to_raw_pyfrm(self): # Assemble a nodal mesh maps = self._etype_map, self._petype_fnmap, self._nodemaps pents = self._felespent, self._bfacespents, self._pfacespents mesh = NodalMeshAssembler(self._nodepts, self._elenodes, pents, maps) rawm = {} rawm.update(mesh.get_connectivity()) rawm.update(mesh.get_shape_points()) return rawm pyfr-1.5.0/pyfr/readers/gmsh.py000066400000000000000000000153101277740313300164210ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import defaultdict import re import numpy as np from pyfr.readers import BaseReader, NodalMeshAssembler from pyfr.readers.nodemaps import GmshNodeMaps def msh_section(mshit, section): endln = '$End{}\n'.format(section) endix = int(next(mshit)) - 1 for i, l in enumerate(mshit): if l == endln: raise ValueError('Unexpected end of section $' + section) yield l.strip() if i == endix: break else: raise ValueError('Unexpected EOF') if next(mshit) != endln: raise ValueError('Expected $End' + section) class GmshReader(BaseReader): # Supported file types and extensions name = 'gmsh' extn = ['.msh'] # Gmsh element types to PyFR type (petype) and node counts _etype_map = { 1: ('line', 2), 8: ('line', 3), 26: ('line', 4), 27: ('line', 5), 2: ('tri', 3), 9: ('tri', 6), 21: ('tri', 10), 23: ('tri', 15), 3: ('quad', 4), 10: ('quad', 9), 36: ('quad', 16), 37: ('quad', 25), 4: ('tet', 4), 11: ('tet', 10), 29: ('tet', 20), 30: ('tet', 35), 5: ('hex', 8), 12: ('hex', 27), 92: ('hex', 64), 93: ('hex', 125), 6: ('pri', 6), 13: ('pri', 18), 90: ('pri', 40), 91: ('pri', 75), 7: ('pyr', 5), 14: ('pyr', 14), 118: ('pyr', 30), 119: ('pyr', 55) } # First-order node numbers associated with each element face _petype_fnmap = { 'tri': {'line': [[0, 1], [1, 2], [2, 0]]}, 'quad': {'line': [[0, 1], [1, 2], [2, 3], [3, 0]]}, 'tet': {'tri': [[0, 1, 2], [0, 1, 3], [0, 2, 3], [1, 2, 3]]}, 'hex': {'quad': [[0, 1, 2, 3], [0, 1, 4, 5], [1, 2, 5, 6], [2, 3, 6, 7], [0, 3, 4, 7], [4, 5, 6, 7]]}, 'pri': {'quad': [[0, 1, 3, 4], [1, 2, 4, 5], [0, 2, 3, 5]], 'tri': [[0, 1, 2], [3, 4, 5]]}, 'pyr': {'quad': [[0, 1, 2, 3]], 'tri': [[0, 1, 4], [1, 2, 4], [2, 3, 4], [0, 3, 4]]} } # Mappings between the node ordering of PyFR and that of Gmsh _nodemaps = GmshNodeMaps def __init__(self, msh): if isinstance(msh, str): msh = open(msh) # Get an iterator over the lines of the mesh mshit = iter(msh) # Required section readers sect_map = {'MeshFormat': self._read_mesh_format, 'Nodes': self._read_nodes, 'Elements': self._read_eles, 'PhysicalNames': self._read_phys_names} req_sect = frozenset(sect_map) # Seen sections seen_sect = set() for l in filter(lambda l: l != '\n', mshit): # Ensure we have encountered a section if not l.startswith('$'): raise ValueError('Expected a mesh section') # Strip the '$' and '\n' to get the section name sect = l[1:-1] # If the section is known then read it if sect in sect_map: sect_map[sect](mshit) seen_sect.add(sect) # Else skip over it else: endsect = '$End{}\n'.format(sect) for el in mshit: if el == endsect: break else: raise ValueError('Expected $End' + sect) # Check that all of the required sections are present if seen_sect != req_sect: missing = req_sect - seen_sect raise ValueError('Required sections: {} not found' .format(missing)) def _read_mesh_format(self, mshit): ver, ftype, dsize = next(mshit).split() if ver != '2.2': raise ValueError('Invalid mesh version') if ftype != '0': raise ValueError('Invalid file type') if dsize != '8': raise ValueError('Invalid data size') if next(mshit) != '$EndMeshFormat\n': raise ValueError('Expected $EndMeshFormat') def _read_phys_names(self, msh): # Physical entities can be divided up into: # - fluid elements ('the mesh') # - boundary faces # - periodic faces self._felespent = None self._bfacespents = {} self._pfacespents = defaultdict(list) # Seen physical names seen = set() # Extract the physical names for l in msh_section(msh, 'PhysicalNames'): m = re.match(r'(\d+) (\d+) "((?:[^"\\]|\\.)*)"$', l) if not m: raise ValueError('Malformed physical entity') pent, name = int(m.group(2)), m.group(3).lower() # Ensure we have not seen this name before if name in seen: raise ValueError('Duplicate physical name: {}'.format(name)) # Fluid elements if name == 'fluid': self._felespent = pent # Periodic boundary faces elif name.startswith('periodic'): p = re.match(r'periodic[ _-]([a-z0-9]+)[ _-](l|r)$', name) if not p: raise ValueError('Invalid periodic boundary condition') self._pfacespents[p.group(1)].append(pent) # Other boundary faces else: self._bfacespents[name] = pent seen.add(name) if self._felespent is None: raise ValueError('No fluid elements in mesh') if any(len(pf) != 2 for pf in self._pfacespents.values()): raise ValueError('Unpaired periodic boundary in mesh') def _read_nodes(self, msh): self._nodepts = nodepts = {} for l in msh_section(msh, 'Nodes'): nv = l.split() nodepts[int(nv[0])] = np.array([float(x) for x in nv[1:]]) def _read_eles(self, msh): elenodes = defaultdict(list) for l in msh_section(msh, 'Elements'): # Extract the raw element data elei = [int(i) for i in l.split()] enum, etype, entags = elei[:3] etags, enodes = elei[3:3 + entags], elei[3 + entags:] if etype not in self._etype_map: raise ValueError('Unsupported element type {}'.format(etype)) # Physical entity type (used for BCs) epent = etags[0] elenodes[etype, epent].append(enodes) self._elenodes = {k: np.array(v) for k, v in elenodes.items()} def _to_raw_pyfrm(self): # Assemble a nodal mesh maps = self._etype_map, self._petype_fnmap, self._nodemaps pents = self._felespent, self._bfacespents, self._pfacespents mesh = NodalMeshAssembler(self._nodepts, self._elenodes, pents, maps) rawm = {} rawm.update(mesh.get_connectivity()) rawm.update(mesh.get_shape_points()) return rawm pyfr-1.5.0/pyfr/readers/native.py000066400000000000000000000037121277740313300167540ustar00rootroot00000000000000# -*- coding: utf-8 -*- from collections import Mapping, OrderedDict import os import re import h5py import numpy as np from pyfr.util import memoize class NativeReader(Mapping): def __init__(self, fname): self.fname = os.path.abspath(fname) self._file = h5py.File(fname, 'r') def __contains__(self, aname): return aname in self._file def __getitem__(self, aname): ret = self._file[aname] if ret.shape == (): ret = ret.value else: ret = np.array(ret) return ret.decode() if isinstance(ret, bytes) else ret def __iter__(self): return iter(self._file) def __len__(self): return len(self._file) @memoize def array_info(self, prefix): # Entries in the file which start with the prefix names = [n for n in self if n.startswith(prefix)] # Distinct element types in the file ftypes = sorted({n.split('_')[1] for n in names}) # Highest partition number in the file fmaxpn = max(int(re.search(r'\d+$', n).group(0)) for n in names) # Extract array information info = OrderedDict() for i in range(fmaxpn + 1): for et in ftypes: try: n = '{0}_{1}_p{2}'.format(prefix, et, i) info[n] = (et, self._file.get(n).shape) except AttributeError: pass return info @memoize def partition_info(self, prefix): ai = self.array_info(prefix) # Number of partitions in the mesh npr = max(int(re.search(r'\d+$', k).group(0)) for k in ai) + 1 # Element types in the mesh etypes = {v[0] for v in ai.values()} # Compute the number of elements of each type in each partition nep = {et: [0]*npr for et in etypes} for k, v in ai.items(): nep[v[0]][int(re.search(r'\d+$', k).group(0))] = v[1][1] return nep pyfr-1.5.0/pyfr/readers/nodemaps.py000066400000000000000000000410061277740313300172720ustar00rootroot00000000000000# -*- coding: utf-8 -*- """Mappings between the ordering of PyFR nodes, and those of external formats """ import numpy as np class GmshNodeMaps(object): """Mappings between the node ordering of PyFR and that of Gmsh Node mappings are contained within two dictionaries; one maps from Gmsh node ordering to PyFR, and the other provides the inverse. Dictionary items are keyed by a tuple of element type (string) and number of solution points per element (integer). Each dictionary value is a list of integers that provide mappings via their list index. When lists in the "gmsh_to_pyfr" dictionary are indexed using the Gmsh node number, they return the equivalent PyFR node number. The reverse is true for the "pyfr_to_gmsh" dictionary. :Example: Convert Gmsh node number 4, in a 64 point hexahedra, to the equivalent node number in PyFR: >>> from pyfr.readers.nodemaps import GmshNodeMaps >>> GmshNodeMaps.gmsh_to_pyfr['hex', 64][4] >>> 48 """ to_pyfr = { ('tet', 4): np.array([0, 1, 2, 3]), ('tet', 10): np.array([0, 2, 5, 9, 1, 4, 3, 6, 8, 7]), ('tet', 20): np.array([0, 3, 9, 19, 1, 2, 6, 8, 7, 4, 16, 10, 18, 15, 17, 12, 5, 11, 13, 14]), ('tet', 35): np.array([0, 4, 14, 34, 1, 2, 3, 8, 11, 13, 12, 9, 5, 31, 25, 15, 33, 30, 24, 32, 27, 18, 6, 10, 7, 16, 17, 26, 19, 28, 22, 29, 21, 23, 20]), ('tet', 56): np.array([0, 5, 20, 55, 1, 2, 3, 4, 10, 14, 17, 19, 18, 15, 11, 6, 52, 46, 36, 21, 54, 51, 45, 35, 53, 48, 39, 25, 7, 16, 9, 12, 13, 8, 22, 24, 47, 23, 38, 37, 26, 49, 33, 40, 43, 30, 50, 29, 34, 42, 32, 44, 27, 28, 31, 41]), ('tet', 84): np.array([0, 6, 27, 83, 1, 2, 3, 4, 5, 12, 17, 21, 24, 26, 25, 22, 18, 13, 7, 80, 74, 64, 49, 28, 82, 79, 73, 63, 48, 81, 76, 67, 53, 33, 8, 23, 11, 14, 19, 20, 16, 10, 9, 15, 29, 32, 75, 30, 31, 52, 66, 65, 50, 51, 34, 77, 46, 54, 68, 71, 61, 43, 39, 58, 78, 38, 47, 70, 57, 42, 45, 62, 72, 60, 35, 37, 44, 69, 36, 41, 40, 55, 59, 56]), ('pri', 6): np.array([0, 1, 2, 3, 4, 5]), ('pri', 18): np.array([0, 2, 5, 12, 14, 17, 1, 3, 6, 4, 8, 11, 13, 15, 16, 7, 9, 10]), ('pri', 40): np.array([0, 3, 9, 30, 33, 39, 1, 2, 4, 7, 10, 20, 6, 8, 13, 23, 19, 29, 31, 32, 34, 37, 36, 38, 5, 35, 11, 12, 22, 21, 14, 24, 27, 17, 16, 18, 28, 26, 15, 25]), ('pri', 75): np.array([0, 4, 14, 60, 64, 74, 1, 2, 3, 5, 9, 12, 15, 30, 45, 8, 11, 13, 19, 34, 49, 29, 44, 59, 61, 62, 63, 65, 69, 72, 68, 71, 73, 6, 10, 7, 66, 67, 70, 16, 18, 48, 46, 17, 33, 47, 31, 32, 20, 50, 57, 27, 35, 54, 42, 24, 39, 23, 28, 58, 53, 26, 43, 56, 38, 41, 21, 51, 36, 22, 52, 37, 25, 55, 40]), ('pri', 126): np.array([0, 5, 20, 105, 110, 125, 1, 2, 3, 4, 6, 11, 15, 18, 21, 42, 63, 84, 10, 14, 17, 19, 26, 47, 68, 89, 41, 62, 83, 104, 106, 107, 108, 109, 111, 116, 120, 123, 115, 119, 122, 124, 7, 16, 9, 12, 13, 8, 112, 114, 121, 113, 118, 117, 22, 25, 88, 85, 23, 24, 46, 67, 87, 86, 64, 43, 44, 45, 66, 65, 27, 90, 102, 39, 48, 69, 95, 99, 81, 60, 36, 32, 53, 74, 78, 57, 31, 40, 103, 94, 35, 38, 61, 82, 101, 98, 73, 52, 56, 59, 80, 77, 28, 91, 49, 70, 30, 93, 51, 72, 37, 100, 58, 79, 29, 92, 50, 71, 34, 97, 55, 76, 33, 96, 54, 75]), ('pri', 196): np.array([0, 6, 27, 168, 174, 195, 1, 2, 3, 4, 5, 7, 13, 18, 22, 25, 28, 56, 84, 112, 140, 12, 17, 21, 24, 26, 34, 62, 90, 118, 146, 55, 83, 111, 139, 167, 169, 170, 171, 172, 173, 175, 181, 186, 190, 193, 180, 185, 189, 192, 194, 8, 23, 11, 14, 19, 20, 16, 10, 9, 15, 176, 179, 191, 177, 178, 184, 188, 187, 182, 183, 29, 33, 145, 141, 30, 31, 32, 61, 89, 117, 144, 143, 142, 113, 85, 57, 58, 60, 116, 114, 59, 88, 115, 86, 87, 35, 147, 165, 53, 63, 91, 119, 153, 158, 162, 137, 109, 81, 50, 46, 41, 69, 125, 134, 78, 97, 130, 106, 74, 102, 40, 54, 166, 152, 45, 49, 52, 82, 110, 138, 164, 161, 157, 124, 96, 68, 73, 80, 136, 129, 77, 108, 133, 101, 105, 36, 148, 64, 92, 120, 39, 151, 67, 95, 123, 51, 163, 79, 107, 135, 37, 149, 65, 93, 121, 38, 150, 66, 94, 122, 44, 156, 72, 100, 128, 48, 160, 76, 104, 132, 47, 159, 75, 103, 131, 42, 154, 70, 98, 126, 43, 155, 71, 99, 127]), ('pyr', 5): np.array([0, 1, 3, 2, 4]), ('pyr', 14): np.array([0, 2, 8, 6, 13, 1, 3, 9, 5, 10, 7, 12, 11, 4]), ('pyr', 30): np.array([0, 3, 15, 12, 29, 1, 2, 4, 8, 16, 25, 7, 11, 18, 26, 14, 13, 24, 28, 22, 27, 17, 19, 21, 23, 5, 9, 10, 6, 20]), ('pyr', 55): np.array([0, 4, 24, 20, 54, 1, 2, 3, 5, 10, 15, 25, 41, 50, 9, 14, 19, 28, 43, 51, 23, 22, 21, 40, 49, 53, 37, 47, 52, 26, 27, 42, 33, 29, 44, 32, 36, 46, 39, 38, 48, 6, 16, 18, 8, 11, 17, 13, 7, 12, 30, 31, 35, 34, 45]), ('pyr', 91): np.array([0, 5, 35, 30, 90, 1, 2, 3, 4, 6, 12, 18, 24, 36, 61, 77, 86, 11, 17, 23, 29, 40, 64, 79, 87, 34, 33, 32, 31, 60, 76, 85, 89, 56, 73, 83, 88, 37, 39, 78, 38, 63, 62, 51, 41, 80, 46, 65, 69, 45, 55, 82, 50, 72, 68, 59, 57, 84, 58, 74, 75, 7, 25, 28, 10, 13, 19, 26, 27, 22, 16, 9, 8, 14, 20, 21, 15, 42, 44, 54, 52, 81, 43, 47, 66, 49, 67, 53, 71, 70, 48]), ('pyr', 140): np.array([0, 6, 48, 42, 139, 1, 2, 3, 4, 5, 7, 14, 21, 28, 35, 49, 85, 110, 126, 135, 13, 20, 27, 34, 41, 54, 89, 113, 128, 136, 47, 46, 45, 44, 43, 84, 109, 125, 134, 138, 79, 105, 122, 132, 137, 50, 53, 127, 51, 52, 88, 112, 111, 86, 87, 73, 55, 129, 67, 61, 90, 114, 118, 100, 95, 60, 78, 131, 66, 72, 104, 121, 117, 94, 99, 83, 80, 133, 82, 81, 106, 123, 124, 108, 107, 8, 36, 40, 12, 15, 22, 29, 37, 38, 39, 33, 26, 19, 11, 10, 9, 16, 30, 32, 18, 23, 31, 25, 17, 24, 56, 59, 77, 74, 130, 57, 58, 62, 68, 91, 115, 65, 71, 93, 116, 76, 75, 103, 120, 101, 119, 92, 96, 98, 102, 63, 69, 70, 64, 97]), ('hex', 8): np.array([0, 1, 3, 2, 4, 5, 7, 6]), ('hex', 27): np.array([0, 2, 8, 6, 18, 20, 26, 24, 1, 3, 9, 5, 11, 7, 17, 15, 19, 21, 23, 25, 4, 10, 12, 14, 16, 22, 13]), ('hex', 64): np.array([0, 3, 15, 12, 48, 51, 63, 60, 1, 2, 4, 8, 16, 32, 7, 11, 19, 35, 14, 13, 31, 47, 28, 44, 49, 50, 52, 56, 55, 59, 62, 61, 5, 9, 10, 6, 17, 18, 34, 33, 20, 36, 40, 24, 23, 27, 43, 39, 30, 29, 45, 46, 53, 54, 58, 57, 21, 22, 26, 25, 37, 38, 42, 41]), ('hex', 125): np.array([0, 4, 24, 20, 100, 104, 124, 120, 1, 2, 3, 5, 10, 15, 25, 50, 75, 9, 14, 19, 29, 54, 79, 23, 22, 21, 49, 74, 99, 45, 70, 95, 101, 102, 103, 105, 110, 115, 109, 114, 119, 123, 122, 121, 6, 16, 18, 8, 11, 17, 13, 7, 12, 26, 28, 78, 76, 27, 53, 77, 51, 52, 30, 80, 90, 40, 55, 85, 65, 35, 60, 34, 44, 94, 84, 39, 69, 89, 59, 64, 48, 46, 96, 98, 47, 71, 97, 73, 72, 106, 108, 118, 116, 107, 113, 117, 111, 112, 31, 33, 43, 41, 81, 83, 93, 91, 32, 36, 56, 38, 58, 42, 68, 66, 82, 86, 88, 92, 37, 57, 61, 63, 67, 87, 62]), ('hex', 216): np.array([0, 5, 35, 30, 180, 185, 215, 210, 1, 2, 3, 4, 6, 12, 18, 24, 36, 72, 108, 144, 11, 17, 23, 29, 41, 77, 113, 149, 34, 33, 32, 31, 71, 107, 143, 179, 66, 102, 138, 174, 181, 182, 183, 184, 186, 192, 198, 204, 191, 197, 203, 209, 214, 213, 212, 211, 7, 25, 28, 10, 13, 19, 26, 27, 22, 16, 9, 8, 14, 20, 21, 15, 37, 40, 148, 145, 38, 39, 76, 112, 147, 146, 109, 73, 74, 75, 111, 110, 42, 150, 168, 60, 78, 114, 156, 162, 132, 96, 54, 48, 84, 120, 126, 90, 47, 65, 173, 155, 53, 59, 101, 137, 167, 161, 119, 83, 89, 95, 131, 125, 70, 67, 175, 178, 69, 68, 103, 139, 176, 177, 142, 106, 105, 104, 140, 141, 187, 190, 208, 205, 188, 189, 196, 202, 207, 206, 199, 193, 194, 195, 201, 200, 43, 46, 64, 61, 151, 154, 172, 169, 44, 45, 49, 55, 79, 115, 52, 58, 82, 118, 63, 62, 100, 136, 97, 133, 152, 153, 157, 163, 160, 166, 171, 170, 50, 56, 57, 51, 80, 81, 117, 116, 85, 121, 127, 91, 88, 94, 130, 124, 99, 98, 134, 135, 158, 159, 165, 164, 86, 87, 93, 92, 122, 123, 129, 128]), ('tri', 3): np.array([0, 1, 2]), ('tri', 6): np.array([0, 2, 5, 1, 4, 3]), ('tri', 10): np.array([0, 3, 9, 1, 2, 6, 8, 7, 4, 5]), ('tri', 15): np.array([0, 4, 14, 1, 2, 3, 8, 11, 13, 12, 9, 5, 6, 7, 10]), ('tri', 21): np.array([0, 5, 20, 1, 2, 3, 4, 10, 14, 17, 19, 18, 15, 11, 6, 7, 8, 9, 13, 16, 12]), ('quad', 4): np.array([0, 1, 3, 2]), ('quad', 9): np.array([0, 2, 8, 6, 1, 5, 7, 3, 4]), ('quad', 16): np.array([0, 3, 15, 12, 1, 2, 7, 11, 14, 13, 8, 4, 5, 6, 10, 9]), ('quad', 25): np.array([0, 4, 24, 20, 1, 2, 3, 9, 14, 19, 23, 22, 21, 15, 10, 5, 6, 8, 18, 16, 7, 13, 17, 11, 12]), ('quad', 36): np.array([0, 5, 35, 30, 1, 2, 3, 4, 11, 17, 23, 29, 34, 33, 32, 31, 24, 18, 12, 6, 7, 10, 28, 25, 8, 9, 16, 22, 27, 26, 19, 13, 14, 15, 21, 20]) } from_pyfr = {k: np.argsort(v) for k, v in to_pyfr.items()} class CGNSNodeMaps(object): to_pyfr = { ('tet', 4): np.array([0, 1, 2, 3]), ('tet', 10): np.array([0, 2, 5, 9, 1, 4, 3, 6, 7, 8]), ('tet', 20): np.array([0, 3, 9, 19, 1, 2, 6, 8, 7, 4, 10, 16, 12, 17, 15, 18, 5, 11, 14, 13]), ('tet', 35): np.array([0, 4, 14, 34, 1, 2, 3, 8, 11, 13, 12, 9, 5, 15, 25, 31, 18, 27, 32, 24, 30, 33, 6, 7, 10, 16, 17, 26, 21, 23, 29, 22, 19, 28, 20]), ('pri', 6): np.array([0, 1, 2, 3, 4, 5]), ('pri', 18): np.array([0, 2, 5, 12, 14, 17, 1, 4, 3, 6, 8, 11, 13, 16, 15, 7, 10, 9]), ('pri', 40): np.array([0, 3, 9, 30, 33, 39, 1, 2, 6, 8, 7, 4, 10, 20, 13, 23, 19, 29, 31, 32, 36, 38, 37, 34, 5, 11, 12, 22, 21, 16, 18, 28, 26, 17, 14, 24, 27, 35, 15, 25]), ('pri', 75): np.array([0, 4, 14, 60, 64, 74, 1, 2, 3, 8, 11, 13, 12, 9, 5, 15, 30, 45, 19, 34, 49, 29, 44, 59, 61, 62, 63, 68, 71, 73, 72, 69, 65, 6, 7, 10, 16, 17, 18, 33, 48, 47, 46, 31, 32, 23, 26, 28, 43, 58, 56, 53, 38, 41, 27, 24, 20, 35, 50, 54, 57, 42, 39, 66, 67, 70, 21, 22, 25, 36, 37, 40, 51, 52, 55]), ('pyr', 5): np.array([0, 1, 3, 2, 4]), ('pyr', 14): np.array([0, 2, 8, 6, 13, 1, 5, 7, 3, 9, 10, 12, 11, 4]), ('pyr', 30): np.array([0, 3, 15, 12, 29, 1, 2, 7, 11, 14, 13, 8, 4, 16, 25, 18, 26, 24, 28, 22, 27, 5, 6, 10, 9, 17, 21, 23, 19, 20]), ('pyr', 55): np.array([0, 4, 24, 20, 54, 1, 2, 3, 9, 14, 19, 23, 22, 21, 15, 10, 5, 25, 41, 50, 28, 43, 51, 40, 49, 53, 37, 47, 52, 6, 7, 8, 13, 18, 17, 16, 11, 12, 26, 27, 42, 32, 36, 46, 39, 38, 48, 33, 29, 44, 30, 31, 35, 34, 45]), ('hex', 8): np.array([0, 1, 3, 2, 4, 5, 7, 6]), ('hex', 27): np.array([0, 2, 8, 6, 18, 20, 26, 24, 1, 5, 7, 3, 9, 11, 17, 15, 19, 23, 25, 21, 4, 10, 14, 16, 12, 22, 13]), ('hex', 64): np.array([0, 3, 15, 12, 48, 51, 63, 60, 1, 2, 7, 11, 14, 13, 8, 4, 16, 32, 19, 35, 31, 47, 28, 44, 49, 50, 55, 59, 62, 61, 56, 52, 5, 6, 10, 9, 17, 18, 34, 33, 23, 27, 43, 39, 30, 29, 45, 46, 24, 20, 36, 40, 53, 54, 58, 57, 21, 22, 26, 25, 37, 38, 42, 41]), ('hex', 125): np.array([0, 4, 24, 20, 100, 104, 124, 120, 1, 2, 3, 9, 14, 19, 23, 22, 21, 15, 10, 5, 25, 50, 75, 29, 54, 79, 49, 74, 99, 45, 70, 95, 101, 102, 103, 109, 114, 119, 123, 122, 121, 115, 110, 105, 6, 7, 8, 13, 18, 17, 16, 11, 12, 26, 27, 28, 53, 78, 77, 76, 51, 52, 34, 39, 44, 69, 94, 89, 84, 59, 64, 48, 47, 46, 71, 96, 97, 98, 73, 72, 40, 35, 30, 55, 80, 85, 90, 65, 60, 106, 107, 108, 113, 118, 117, 116, 111, 112, 31, 32, 33, 38, 43, 42, 41, 36, 37, 56, 57, 58, 63, 68, 67, 66, 61, 62, 81, 82, 83, 88, 93, 92, 91, 86, 87]), ('tri', 3): np.array([0, 1, 2]), ('tri', 6): np.array([0, 2, 5, 1, 4, 3]), ('tri', 10): np.array([0, 3, 9, 1, 2, 6, 8, 7, 4, 5]), ('tri', 15): np.array([0, 4, 14, 1, 2, 3, 8, 11, 13, 12, 9, 5, 6, 7, 10]), ('quad', 4): np.array([0, 1, 3, 2]), ('quad', 9): np.array([0, 2, 8, 6, 1, 5, 7, 3, 4]), ('quad', 16): np.array([0, 3, 15, 12, 1, 2, 7, 11, 14, 13, 8, 4, 5, 6, 10, 9]), ('quad', 25): np.array([0, 4, 24, 20, 1, 2, 3, 9, 14, 19, 23, 22, 21, 15, 10, 5, 6, 8, 18, 16, 7, 13, 17, 11, 12]) } from_pyfr = {k: np.argsort(v) for k, v in to_pyfr.items()} pyfr-1.5.0/pyfr/shapes.py000066400000000000000000000314321277740313300153240ustar00rootroot00000000000000# -*- coding: utf-8 -*- import itertools as it from math import exp import re import numpy as np from pyfr.nputil import block_diag, clean from pyfr.polys import get_polybasis from pyfr.quadrules import get_quadrule from pyfr.util import lazyprop def _proj_pts(projector, pts): pts = np.atleast_2d(pts.T) return np.vstack(np.broadcast_arrays(*projector(*pts))).T @clean def _proj_l2(qrule, basis): return np.dot(basis.vdm.T, qrule.wts*basis.ortho_basis_at(qrule.pts)) class BaseShape(object): name = None ndims = -1 npts_coeffs = None npts_cdenom = None npts_for_face = { 'line': lambda order: order + 1, 'tri': lambda order: (order + 1)*(order + 2) // 2, 'quad': lambda order: (order + 1)**2 } def __init__(self, nspts, cfg): self.nspts = nspts self.cfg = cfg self.order = cfg.getint('solver', 'order') self.antialias = cfg.get('solver', 'anti-alias', 'none') self.antialias = {s.strip() for s in self.antialias.split(',')} self.antialias.discard('none') if self.antialias - {'flux', 'div-flux', 'surf-flux'}: raise ValueError('Invalid anti-alias options') self.ubasis = get_polybasis(self.name, self.order + 1, self.upts) if nspts: self.nsptsord = nsptord = self.order_from_nspts(nspts) self.sbasis = get_polybasis(self.name, nsptord, self.spts) # Basis for free-stream metric # We need p-th order pseudo grid points, which includes # p-th order points on faces. # It guarantees th q-th order collocation projection on the face # on the both adjacent cells. # Ref. 1 JCP 281, 28-54, Sec 4.2 # Ref. 2 JSC 26(3), 301-327, Definition 1 self.mbasis = get_polybasis(self.name, self.order + 1, self.mpts) @classmethod def nspts_from_order(cls, sptord): return np.polyval(cls.npts_coeffs, sptord) // cls.npts_cdenom @classmethod def order_from_nspts(cls, nspts): # Obtain the coefficients for the poly: P(n) - nspts = 0 coeffs = list(cls.npts_coeffs) coeffs[-1] -= cls.npts_cdenom*int(nspts) # Iterate for n in range(1, 15): if np.polyval(coeffs, n) == 0: return n else: raise ValueError('Invalid number of shape points') @clean def opmat(self, expr): if not re.match(r'[M0-9\-+*() ]+$', expr): raise ValueError('Invalid operator matrix expression') mats = {m: np.asmatrix(getattr(self, m.lower())) for m in re.findall(r'M\d+', expr)} return np.asarray(eval(expr, {'__builtins__': None}, mats)) @lazyprop def m0(self): return self.ubasis.nodal_basis_at(self.fpts) @lazyprop def m1(self): m = np.rollaxis(self.ubasis.jac_nodal_basis_at(self.upts), 2) return m.reshape(self.nupts, -1) @lazyprop def m2(self): m = self.norm_fpts[...,None]*self.m0[:,None,:] return m.reshape(self.nfpts, -1) @lazyprop def m3(self): m = self.gbasis_at(self.upts) if 'surf-flux' in self.antialias: fp = [_proj_l2(self._iqrules[kind], self.facebases[kind]) for kind, proj, norm in self.faces] m = np.dot(m, block_diag(fp)) return m @lazyprop def m4(self): m = self.m1.reshape(self.nupts, -1, self.nupts).swapaxes(0, 1) return m.reshape(-1, self.nupts) @lazyprop def m6(self): m = self.norm_fpts.T[:,None,:]*self.m3 return m.reshape(-1, self.nfpts) @lazyprop def m7(self): return self.ubasis.nodal_basis_at(self.qpts) @lazyprop def m8(self): return np.vstack([self.m0, self.m7]) @lazyprop def m9(self): return _proj_l2(self._eqrule, self.ubasis) @property def m10(self): return block_diag([self.m9]*self.ndims) @lazyprop @clean def m11(self): ub = self.ubasis n = max(ub.degrees) ncut = self.cfg.getint('soln-filter', 'cutoff') order = self.cfg.getint('soln-filter', 'order') alpha = self.cfg.getfloat('soln-filter', 'alpha') A = np.ones(self.nupts) for i, d in enumerate(ub.degrees): if d >= ncut < n: A[i] = exp(-alpha*((d - ncut)/(n - ncut))**order) return np.linalg.solve(ub.vdm, A[:,None]*ub.vdm).T @lazyprop def nupts(self): n = self.order + 1 return np.polyval(self.npts_coeffs, n) // self.npts_cdenom @lazyprop def upts(self): rname = self.cfg.get('solver-elements-' + self.name, 'soln-pts') return get_quadrule(self.name, rname, self.nupts).pts def _get_qrule(self, eleint, kind, **kwargs): sect = 'solver-{0}-{1}'.format(eleint, kind) if self.cfg.hasopt(sect, 'quad-pts'): kwargs['rule'] = self.cfg.get(sect, 'quad-pts') if self.cfg.hasopt(sect, 'quad-deg'): kwargs['qdeg'] = self.cfg.getint(sect, 'quad-deg') return get_quadrule(kind, **kwargs) @lazyprop def _eqrule(self): return self._get_qrule('elements', self.name) @lazyprop def _iqrules(self): return {kind: self._get_qrule('interfaces', kind, flags='s') for kind in {k for k, p, n in self.faces}} @property def qpts(self): return self._eqrule.pts @property def nqpts(self): return len(self.qpts) @lazyprop def fpts(self): ppts = [] for kind, proj, norm in self.faces: # Obtain the flux points in reference space for the face type if 'surf-flux' in self.antialias: r = self._iqrules[kind] else: rule = self.cfg.get('solver-interfaces-' + kind, 'flux-pts') npts = self.npts_for_face[kind](self.order) r = get_quadrule(kind, rule, npts) # Project ppts.append(_proj_pts(proj, r.pts)) return np.vstack(ppts) @lazyprop def fpts_wts(self): pwts = [] for kind, proj, norm in self.faces: # Obtain the weights in reference space for the face type if 'surf-flux' in self.antialias: r = self._iqrules[kind] else: rule = self.cfg.get('solver-interfaces-' + kind, 'flux-pts') npts = self.npts_for_face[kind](self.order) r = get_quadrule(kind, rule, npts) pwts.append(r.wts) return np.hstack(pwts) @lazyprop def gbasis_coeffs(self): coeffs = [] # Suitable quadrature rules for various face types qrule_map = { 'line': ('gauss-legendre', self.order + 1), 'quad': ('gauss-legendre', (self.order + 1)**2), 'tri': ('williams-shunn', 36) } for kind, proj, norm in self.faces: # Obtain a quadrature rule for integrating on the reference face # and evaluate this rule at the nodal basis defined by the flux # points qr = get_quadrule(kind, *qrule_map[kind]) L = self.facebases[kind].nodal_basis_at(qr.pts) # Do the quadrature M = self.ubasis.ortho_basis_at(_proj_pts(proj, qr.pts)) S = np.einsum('i...,ik,ji->kj', qr.wts, L, M) coeffs.append(S) return np.vstack(coeffs) @clean def gbasis_at(self, pts): return np.dot(self.gbasis_coeffs, self.ubasis.ortho_basis_at(pts)).T @property def facenorms(self): return [norm for kind, proj, norm in self.faces] @lazyprop def norm_fpts(self): fnorms = self.facenorms return np.vstack([fn]*n for fn, n in zip(fnorms, self.nfacefpts)) @lazyprop def spts(self): return self.std_ele(self.nsptsord - 1) @lazyprop def facebases(self): fb = {} for kind in {k for k, p, n in self.faces}: rule = self.cfg.get('solver-interfaces-' + kind, 'flux-pts') npts = self.npts_for_face[kind](self.order) pts = get_quadrule(kind, rule, npts).pts fb[kind] = get_polybasis(kind, self.order + 1, pts) return fb @lazyprop def facefpts(self): nf = np.cumsum([0] + self.nfacefpts) return [list(range(nf[i], nf[i + 1])) for i in range(len(nf) - 1)] @lazyprop def nfacefpts(self): if 'surf-flux' in self.antialias: cnt = lambda k: len(self._iqrules[k].pts) else: cnt = lambda k: self.npts_for_face[k](self.order) return [cnt(kind) for kind, proj, norm in self.faces] @property def nfpts(self): return sum(self.nfacefpts) @lazyprop def mpts(self): return self.std_ele(self.order) @lazyprop def nmpts(self): return len(self.mpts) class TensorProdShape(object): @classmethod def std_ele(cls, sptord): pts1d = np.linspace(-1, 1, sptord + 1) return list(p[::-1] for p in it.product(pts1d, repeat=cls.ndims)) class QuadShape(TensorProdShape, BaseShape): name = 'quad' ndims = 2 # nspts = n^2 npts_coeffs = [1, 0, 0] npts_cdenom = 1 # Faces: type, reference-to-face projection, normal faces = [ ('line', lambda s: (s, -1), (0, -1)), ('line', lambda s: (1, s), (1, 0)), ('line', lambda s: (s, 1), (0, 1)), ('line', lambda s: (-1, s), (-1, 0)), ] class HexShape(TensorProdShape, BaseShape): name = 'hex' ndims = 3 # nspts = n^3 npts_coeffs = [1, 0, 0, 0] npts_cdenom = 1 # Faces: type, reference-to-face projection, normal faces = [ ('quad', lambda s, t: (s, t, -1), (0, 0, -1)), ('quad', lambda s, t: (s, -1, t), (0, -1, 0)), ('quad', lambda s, t: (1, s, t), (1, 0, 0)), ('quad', lambda s, t: (s, 1, t), (0, 1, 0)), ('quad', lambda s, t: (-1, s, t), (-1, 0, 0)), ('quad', lambda s, t: (s, t, 1), (0, 0, 1)), ] class TriShape(BaseShape): name = 'tri' ndims = 2 # nspts = n*(n + 1)/2 npts_coeffs = [1, 1, 0] npts_cdenom = 2 # Faces: type, reference-to-face projection, normal faces = [ ('line', lambda s: (s, -1), (0, -1)), ('line', lambda s: (-s, s), (1, 1)), ('line', lambda s: (-1, s), (-1, 0)), ] @classmethod def std_ele(cls, sptord): pts1d = np.linspace(-1, 1, sptord + 1) return [(p, q) for i, q in enumerate(pts1d) for p in pts1d[:(sptord + 1 - i)]] class TetShape(BaseShape): name = 'tet' ndims = 3 # nspts = n*(n + 1)*(n + 2)/6 npts_coeffs = [1, 3, 2, 0] npts_cdenom = 6 # Faces: type, reference-to-face projection, normal faces = [ ('tri', lambda s, t: (s, t, -1), (0, 0, -1)), ('tri', lambda s, t: (s, -1, t), (0, -1, 0)), ('tri', lambda s, t: (-1, t, s), (-1, 0, 0)), ('tri', lambda s, t: (s, t, -s - t - 1), (1, 1, 1)), ] @classmethod def std_ele(cls, sptord): pts1d = np.linspace(-1, 1, sptord + 1) return [(p, q, r) for i, r in enumerate(pts1d) for j, q in enumerate(pts1d[:(sptord + 1 - i)]) for p in pts1d[:(sptord + 1 - i - j)]] class PriShape(BaseShape): name = 'pri' ndims = 3 # nspts = n^2*(n + 1)/2 npts_coeffs = [1, 1, 0, 0] npts_cdenom = 2 # Faces: type, reference-to-face projection, normal faces = [ ('tri', lambda s, t: (s, t, -1), (0, 0, -1)), ('tri', lambda s, t: (s, t, 1), (0, 0, 1)), ('quad', lambda s, t: (s, -1, t), (0, -1, 0)), ('quad', lambda s, t: (-s, s, t), (1, 1, 0)), ('quad', lambda s, t: (-1, s, t), (-1, 0, 0)), ] @classmethod def std_ele(cls, sptord): pts1d = np.linspace(-1, 1, sptord + 1) return [(p, q, r) for r in pts1d for i, q in enumerate(pts1d) for p in pts1d[:(sptord + 1 - i)]] class PyrShape(BaseShape): name = 'pyr' ndims = 3 # nspts = n*(n + 1)*(2*n + 1)/6 npts_coeffs = [2, 3, 1, 0] npts_cdenom = 6 # Faces: type, reference-to-face projection, normal faces = [ ('quad', lambda s, t: (s, t, -1), (0, 0, -1)), ('tri', lambda s, t: (s + (t + 1)/2, (t - 1)/2, t), (0, -1, 0.5)), ('tri', lambda s, t: ((1 - t)/2, -s - (t + 1)/2, t), (1, 0, 0.5)), ('tri', lambda s, t: (-s - (t + 1)/2, (1 - t)/2, t), (0, 1, 0.5)), ('tri', lambda s, t: ((t - 1)/2, s + (t + 1)/2, t), (-1, 0, 0.5)), ] @classmethod def std_ele(cls, sptord): npts1d = 2*sptord + 1 pts1d = np.linspace(-1, 1, npts1d) return [(p, q, r) for i, r in enumerate(pts1d[::2]) for q in pts1d[i:npts1d - i:2] for p in pts1d[i:npts1d - i:2]] pyfr-1.5.0/pyfr/solvers/000077500000000000000000000000001277740313300151615ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/__init__.py000066400000000000000000000007741277740313300173020ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.integrators import get_integrator from pyfr.solvers.base import BaseSystem from pyfr.solvers.euler import EulerSystem from pyfr.solvers.navstokes import NavierStokesSystem from pyfr.util import subclass_where def get_solver(backend, rallocs, mesh, initsoln, cfg): systemcls = subclass_where(BaseSystem, name=cfg.get('solver', 'system')) # Combine with an integrator to yield the solver return get_integrator(backend, systemcls, rallocs, mesh, initsoln, cfg) pyfr-1.5.0/pyfr/solvers/base/000077500000000000000000000000001277740313300160735ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/base/__init__.py000066400000000000000000000003001277740313300201750ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.base.elements import BaseElements from pyfr.solvers.base.inters import BaseInters, get_opt_view_perm from pyfr.solvers.base.system import BaseSystem pyfr-1.5.0/pyfr/solvers/base/elements.py000066400000000000000000000304221277740313300202620ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod, abstractproperty import math import re import numpy as np from pyfr.nputil import npeval, fuzzysort from pyfr.util import lazyprop, memoize class BaseElements(object, metaclass=ABCMeta): privarmap = None convarmap = None def __init__(self, basiscls, eles, cfg): self._be = None self.eles = eles self.cfg = cfg self.nspts = nspts = eles.shape[0] self.neles = neles = eles.shape[1] self.ndims = ndims = eles.shape[2] # Kernels we provide self.kernels = {} # Check the dimensionality of the problem if ndims != basiscls.ndims or ndims not in self.privarmap: raise ValueError('Invalid element matrix dimensions') # Determine the number of dynamical variables self.nvars = len(self.privarmap[ndims]) # Instantiate the basis class self.basis = basis = basiscls(nspts, cfg) # See what kind of projection the basis is using self.antialias = basis.antialias # If we need quadrature points or not haveqpts = 'flux' in self.antialias or 'div-flux' in self.antialias # Sizes self.nupts = basis.nupts self.nqpts = basis.nqpts if haveqpts else None self.nfpts = basis.nfpts self.nfacefpts = basis.nfacefpts self.nmpts = basis.nmpts @abstractmethod def pri_to_con(ics, cfg): pass def set_ics_from_cfg(self): # Bring simulation constants into scope vars = self.cfg.items_as('constants', float) if any(d in vars for d in 'xyz'): raise ValueError('Invalid constants (x, y, or z) in config file') # Get the physical location of each solution point coords = self.ploc_at_np('upts').swapaxes(0, 1) vars.update(dict(zip('xyz', coords))) # Evaluate the ICs from the config file ics = [npeval(self.cfg.getexpr('soln-ics', dv), vars) for dv in self.privarmap[self.ndims]] # Allocate self._scal_upts = np.empty((self.nupts, self.nvars, self.neles)) # Convert from primitive to conservative form for i, v in enumerate(self.pri_to_con(ics, self.cfg)): self._scal_upts[:, i, :] = v def set_ics_from_soln(self, solnmat, solncfg): # Recreate the existing solution basis solnb = self.basis.__class__(None, solncfg) # Form the interpolation operator interp = solnb.ubasis.nodal_basis_at(self.basis.upts) # Sizes nupts, neles, nvars = self.nupts, self.neles, self.nvars # Apply and reshape self._scal_upts = np.dot(interp, solnmat.reshape(solnb.nupts, -1)) self._scal_upts = self._scal_upts.reshape(nupts, nvars, neles) @lazyprop def plocfpts(self): # Construct the physical location operator matrix plocop = self.basis.sbasis.nodal_basis_at(self.basis.fpts) # Apply the operator to the mesh elements and reshape plocfpts = np.dot(plocop, self.eles.reshape(self.nspts, -1)) plocfpts = plocfpts.reshape(self.nfpts, self.neles, self.ndims) return plocfpts @lazyprop def _srtd_face_fpts(self): plocfpts = self.plocfpts.transpose(1, 2, 0) return [[np.array(fuzzysort(pts.tolist(), ffpts)) for pts in plocfpts] for ffpts in self.basis.facefpts] @abstractproperty def _scratch_bufs(self): pass @lazyprop def _src_exprs(self): convars = self.convarmap[self.ndims] # Variable and function substitutions subs = self.cfg.items('constants') subs.update(x='ploc[0]', y='ploc[1]', z='ploc[2]') subs.update({v: 'u[{0}]'.format(i) for i, v in enumerate(convars)}) subs.update(abs='fabs', pi=str(math.pi)) return [self.cfg.getexpr('solver-source-terms', v, '0', subs=subs) for v in convars] @lazyprop def _ploc_in_src_exprs(self): return any(re.search(r'\bploc\b', ex) for ex in self._src_exprs) @lazyprop def _soln_in_src_exprs(self): return any(re.search(r'\bu\b', ex) for ex in self._src_exprs) @abstractmethod def set_backend(self, backend, nscal_upts, nonce): self._be = backend # Sizes ndims, nvars, neles = self.ndims, self.nvars, self.neles nfpts, nupts, nqpts = self.nfpts, self.nupts, self.nqpts sbufs, abufs = self._scratch_bufs, [] # Convenience functions for scalar/vector allocation alloc = lambda ex, n: abufs.append( backend.matrix(n, extent=nonce + ex, tags={'align'}) ) or abufs[-1] salloc = lambda ex, n: alloc(ex, (n, nvars, neles)) valloc = lambda ex, n: alloc(ex, (ndims, n, nvars, neles)) # Allocate required scalar scratch space if 'scal_fpts' in sbufs and 'scal_qpts' in sbufs: self._scal_fqpts = salloc('_scal_fqpts', nfpts + nqpts) self._scal_fpts = self._scal_fqpts.rslice(0, nfpts) self._scal_qpts = self._scal_fqpts.rslice(nfpts, nfpts + nqpts) elif 'scal_fpts' in sbufs: self._scal_fpts = salloc('scal_fpts', nfpts) elif 'scal_qpts' in sbufs: self._scal_qpts = salloc('scal_qpts', nqpts) # Allocate additional scalar scratch space if 'scal_upts_cpy' in sbufs: self._scal_upts_cpy = salloc('scal_upts_cpy', nupts) elif 'scal_qpts_cpy' in sbufs: self._scal_qpts_cpy = salloc('scal_qpts_cpy', nqpts) # Allocate required vector scratch space if 'vect_upts' in sbufs: self._vect_upts = valloc('vect_upts', nupts) if 'vect_qpts' in sbufs: self._vect_qpts = valloc('vect_qpts', nqpts) if 'vect_fpts' in sbufs: self._vect_fpts = valloc('vect_fpts', nfpts) # Allocate and bank the storage required by the time integrator self._scal_upts = [backend.matrix(self._scal_upts.shape, self._scal_upts, tags={'align'}) for i in range(nscal_upts)] self.scal_upts_inb = inb = backend.matrix_bank(self._scal_upts) self.scal_upts_outb = backend.matrix_bank(self._scal_upts) # Find/allocate space for a solution-sized scalar that is # allowed to alias other scratch space in the simulation aliases = next((m for m in abufs if m.nbytes >= inb.nbytes), None) self._scal_upts_temp = backend.matrix(inb.ioshape, aliases=aliases, tags=inb.tags) @memoize def opmat(self, expr): return self._be.const_matrix(self.basis.opmat(expr), tags={expr, 'align'}) @memoize def smat_at_np(self, name): smats_mpts, _ = self._smats_djacs_mpts # Interpolation matrix to pts m0 = self.basis.mbasis.nodal_basis_at(getattr(self.basis, name)) # Interpolate the smats smats = np.array([np.dot(m0, smat) for smat in smats_mpts]) return smats.reshape(self.ndims, -1, self.ndims, self.neles) @memoize def smat_at(self, name): return self._be.const_matrix(self.smat_at_np(name), tags={'align'}) @memoize def rcpdjac_at_np(self, name): _, djacs_mpts = self._smats_djacs_mpts # Interpolation matrix to pts m0 = self.basis.mbasis.nodal_basis_at(getattr(self.basis, name)) # Interpolate the djacs djac = np.dot(m0, djacs_mpts) if np.any(djac < -1e-5): raise RuntimeError('Negative mesh Jacobians detected') return 1.0 / djac @memoize def rcpdjac_at(self, name): return self._be.const_matrix(self.rcpdjac_at_np(name), tags={'align'}) @memoize def ploc_at_np(self, name): op = self.basis.sbasis.nodal_basis_at(getattr(self.basis, name)) ploc = np.dot(op, self.eles.reshape(self.nspts, -1)) ploc = ploc.reshape(-1, self.neles, self.ndims).swapaxes(1, 2) return ploc @memoize def ploc_at(self, name): return self._be.const_matrix(self.ploc_at_np(name), tags={'align'}) def _gen_pnorm_fpts(self): smats = self.smat_at_np('fpts').transpose(1, 3, 0, 2) # We need to compute |J|*[(J^{-1})^{T}.N] where J is the # Jacobian and N is the normal for each fpt. Using # J^{-1} = S/|J| where S are the smats, we have S^{T}.N. pnorm_fpts = np.einsum('ijlk,il->ijk', smats, self.basis.norm_fpts) # Compute the magnitudes of these flux point normals mag_pnorm_fpts = np.einsum('...i,...i', pnorm_fpts, pnorm_fpts) mag_pnorm_fpts = np.sqrt(mag_pnorm_fpts) # Check that none of these magnitudes are zero if np.any(mag_pnorm_fpts < 1e-10): raise RuntimeError('Zero face normals detected') # Normalize the physical normals at the flux points self._norm_pnorm_fpts = pnorm_fpts / mag_pnorm_fpts[..., None] self._mag_pnorm_fpts = mag_pnorm_fpts @lazyprop def _norm_pnorm_fpts(self): self._gen_pnorm_fpts() return self._norm_pnorm_fpts @lazyprop def _mag_pnorm_fpts(self): self._gen_pnorm_fpts() return self._mag_pnorm_fpts @lazyprop def _smats_djacs_mpts(self): # Metric basis with grid point (q<=p) or pseudo grid points (q>p) mpts = self.basis.mpts mbasis = self.basis.mbasis # Dimensions, number of elements and number of mpts ndims, neles, nmpts = self.ndims, self.neles, self.nmpts # Physical locations of the pseudo grid points x = self.ploc_at_np('mpts') # Jacobian operator at these points jacop = np.rollaxis(mbasis.jac_nodal_basis_at(mpts), 2) jacop = jacop.reshape(-1, nmpts) # Cast as a matrix multiply and apply to eles jac = np.dot(jacop, x.reshape(nmpts, -1)) # Reshape (nmpts*ndims, neles*ndims) => (nmpts, ndims, neles, ndims) jac = jac.reshape(nmpts, ndims, ndims, neles) # Transpose to get (ndims, ndims, nmpts, neles) jac = jac.transpose(1, 2, 0, 3) smats = np.empty((ndims, nmpts, ndims, neles)) if ndims == 2: a, b, c, d = jac[0, 0], jac[1, 0], jac[0, 1], jac[1, 1] smats[0, :, 0], smats[0, :, 1] = d, -b smats[1, :, 0], smats[1, :, 1] = -c, a djacs = a*d - b*c else: dtt = [] for dx in jac: # Compute x cross x_(chi) tt = np.cross(x, dx, axisa=1, axisb=0, axisc=1) # Jacobian of x cross x_(chi) at the pseudo grid points dt = np.dot(jacop, tt.reshape(nmpts, -1)) dt = dt.reshape(nmpts, ndims, ndims, -1).swapaxes(0, 1) dtt.append(dt) # Kopriva's invariant form of smats; JSC 26(3), 301-327, Eq. (37) smats[0] = 0.5*(dtt[2][1] - dtt[1][2]) smats[1] = 0.5*(dtt[0][2] - dtt[2][0]) smats[2] = 0.5*(dtt[1][0] - dtt[0][1]) # Exploit the fact that det(J) = x0 . (x1 ^ x2) djacs = np.einsum('ij...,ji...->j...', jac[0], smats[0]) return smats.reshape(ndims, nmpts, -1), djacs def get_mag_pnorms(self, eidx, fidx): fpts_idx = self.basis.facefpts[fidx] return self._mag_pnorm_fpts[fpts_idx,eidx] def get_mag_pnorms_for_inter(self, eidx, fidx): fpts_idx = self._srtd_face_fpts[fidx][eidx] return self._mag_pnorm_fpts[fpts_idx,eidx] def get_norm_pnorms_for_inter(self, eidx, fidx): fpts_idx = self._srtd_face_fpts[fidx][eidx] return self._norm_pnorm_fpts[fpts_idx,eidx] def get_norm_pnorms(self, eidx, fidx): fpts_idx = self.basis.facefpts[fidx] return self._norm_pnorm_fpts[fpts_idx,eidx] def get_scal_fpts_for_inter(self, eidx, fidx): nfp = self.nfacefpts[fidx] rmap = self._srtd_face_fpts[fidx][eidx] cmap = (eidx,)*nfp return (self._scal_fpts.mid,)*nfp, rmap, cmap def get_vect_fpts_for_inter(self, eidx, fidx): nfp = self.nfacefpts[fidx] rmap = self._srtd_face_fpts[fidx][eidx] cmap = (eidx,)*nfp rstri = (self.nfpts,)*nfp return (self._vect_fpts.mid,)*nfp, rmap, cmap, rstri def get_ploc_for_inter(self, eidx, fidx): fpts_idx = self._srtd_face_fpts[fidx][eidx] return self.plocfpts[fpts_idx,eidx] pyfr-1.5.0/pyfr/solvers/base/inters.py000066400000000000000000000047071277740313300177610ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np def _get_inter_objs(interside, getter, elemap): # Map from element type to view mat getter emap = {type: getattr(ele, getter) for type, ele in elemap.items()} # Get the data from the interface return [emap[type](eidx, fidx) for type, eidx, fidx, flags in interside] def get_opt_view_perm(interside, mat, elemap): vm = _get_inter_objs(interside, mat, elemap) mmap, rmap, cmap = [np.concatenate([m[i] for m in vm]) for i in range(3)] # Sort return np.lexsort((cmap, rmap, mmap)) class BaseInters(object): def __init__(self, be, lhs, elemap, cfg): self._be = be self._elemap = elemap self.cfg = cfg # Get the number of dimensions and variables self.ndims = next(iter(elemap.values())).ndims self.nvars = next(iter(elemap.values())).nvars # Get the number of interfaces self.ninters = len(lhs) # Compute the total number of interface flux points self.ninterfpts = sum(elemap[etype].nfacefpts[fidx] for etype, eidx, fidx, flags in lhs) # By default do not permute any of the interface arrays self._perm = Ellipsis # Kernel constants self._tpl_c = cfg.items_as('constants', float) # Kernels we provide self.kernels = {} def _const_mat(self, inter, meth): m = _get_inter_objs(inter, meth, self._elemap) # Swizzle the dimensions and permute m = np.concatenate(m) m = np.atleast_2d(m.T) m = m[:,self._perm] return self._be.const_matrix(m) def _view(self, inter, meth, vshape=tuple()): vm = _get_inter_objs(inter, meth, self._elemap) vm = [np.concatenate(m)[self._perm] for m in zip(*vm)] return self._be.view(*vm, vshape=vshape) def _scal_view(self, inter, meth): return self._view(inter, meth, (self.nvars,)) def _vect_view(self, inter, meth): return self._view(inter, meth, (self.ndims, self.nvars)) def _xchg_view(self, inter, meth, vshape=tuple()): vm = _get_inter_objs(inter, meth, self._elemap) vm = [np.concatenate(m)[self._perm] for m in zip(*vm)] return self._be.xchg_view(*vm, vshape=vshape) def _scal_xchg_view(self, inter, meth): return self._xchg_view(inter, meth, (self.nvars,)) def _vect_xchg_view(self, inter, meth): return self._xchg_view(inter, meth, (self.ndims, self.nvars)) pyfr-1.5.0/pyfr/solvers/base/system.py000066400000000000000000000144451277740313300200010ustar00rootroot00000000000000# -*- coding: utf-8 -*- from abc import ABCMeta, abstractmethod from collections import defaultdict, OrderedDict import itertools as it import re from pyfr.inifile import Inifile from pyfr.shapes import BaseShape from pyfr.util import proxylist, subclasses class BaseSystem(object, metaclass=ABCMeta): elementscls = None intinterscls = None mpiinterscls = None bbcinterscls = None # Number of queues to allocate _nqueues = None # Nonce sequence _nonce_seq = it.count() def __init__(self, backend, rallocs, mesh, initsoln, nreg, cfg): self.backend = backend self.mesh = mesh self.cfg = cfg # Obtain a nonce to uniquely identify this system nonce = str(next(self._nonce_seq)) # Load the elements eles, elemap = self._load_eles(rallocs, mesh, initsoln, nreg, nonce) backend.commit() # Retain the element map; this may be deleted by clients self.ele_map = elemap # Get the banks, types, num DOFs and shapes of the elements self.ele_banks = list(eles.scal_upts_inb) self.ele_types = list(elemap) self.ele_ndofs = [e.neles*e.nupts*e.nvars for e in eles] self.ele_shapes = [(e.nupts, e.nvars, e.neles) for e in eles] # Get all the solution point locations for the elements self.ele_ploc_upts = [e.ploc_at_np('upts') for e in eles] # I/O banks for the elements self.eles_scal_upts_inb = eles.scal_upts_inb self.eles_scal_upts_outb = eles.scal_upts_outb # Save the number of dimensions and field variables self.ndims = eles[0].ndims self.nvars = eles[0].nvars # Load the interfaces int_inters = self._load_int_inters(rallocs, mesh, elemap) mpi_inters = self._load_mpi_inters(rallocs, mesh, elemap) bc_inters = self._load_bc_inters(rallocs, mesh, elemap) backend.commit() # Prepare the queues and kernels self._gen_queues() self._gen_kernels(eles, int_inters, mpi_inters, bc_inters) backend.commit() def _load_eles(self, rallocs, mesh, initsoln, nreg, nonce): basismap = {b.name: b for b in subclasses(BaseShape, just_leaf=True)} # Look for and load each element type from the mesh elemap = OrderedDict() for f in mesh: m = re.match('spt_(.+?)_p%d$' % rallocs.prank, f) if m: # Element type t = m.group(1) elemap[t] = self.elementscls(basismap[t], mesh[f], self.cfg) # Construct a proxylist to simplify collective operations eles = proxylist(elemap.values()) # Set the initial conditions either from a pyfrs file or from # explicit expressions in the config file if initsoln: # Load the config and stats files from the solution solncfg = Inifile(initsoln['config']) solnsts = Inifile(initsoln['stats']) # Get the names of the conserved variables (fields) solnfields = solnsts.get('data', 'fields', '') currfields = ','.join(eles[0].convarmap[eles[0].ndims]) # Ensure they match up if solnfields and solnfields != currfields: raise RuntimeError('Invalid solution for system') # Process the solution for k, ele in elemap.items(): soln = initsoln['soln_%s_p%d' % (k, rallocs.prank)] ele.set_ics_from_soln(soln, solncfg) else: eles.set_ics_from_cfg() # Allocate these elements on the backend eles.set_backend(self.backend, nreg, nonce) return eles, elemap def _load_int_inters(self, rallocs, mesh, elemap): key = 'con_p{0}'.format(rallocs.prank) lhs, rhs = mesh[key].astype('U4,i4,i1,i1').tolist() int_inters = self.intinterscls(self.backend, lhs, rhs, elemap, self.cfg) # Although we only have a single internal interfaces instance # we wrap it in a proxylist for consistency return proxylist([int_inters]) def _load_mpi_inters(self, rallocs, mesh, elemap): lhsprank = rallocs.prank mpi_inters = proxylist([]) for rhsprank in rallocs.prankconn[lhsprank]: rhsmrank = rallocs.pmrankmap[rhsprank] interarr = mesh['con_p%dp%d' % (lhsprank, rhsprank)] interarr = interarr.astype('U4,i4,i1,i1').tolist() mpiiface = self.mpiinterscls(self.backend, interarr, rhsmrank, rallocs, elemap, self.cfg) mpi_inters.append(mpiiface) return mpi_inters def _load_bc_inters(self, rallocs, mesh, elemap): bccls = self.bbcinterscls bcmap = {b.type: b for b in subclasses(bccls, just_leaf=True)} bc_inters = proxylist([]) for f in mesh: m = re.match('bcon_(.+?)_p%d$' % rallocs.prank, f) if m: # Get the region name rgn = m.group(1) # Determine the config file section cfgsect = 'soln-bcs-%s' % rgn # Get the interface interarr = mesh[f].astype('U4,i4,i1,i1').tolist() # Instantiate bcclass = bcmap[self.cfg.get(cfgsect, 'type')] bciface = bcclass(self.backend, interarr, elemap, cfgsect, self.cfg) bc_inters.append(bciface) return bc_inters def _gen_queues(self): self._queues = [self.backend.queue() for i in range(self._nqueues)] def _gen_kernels(self, eles, iint, mpiint, bcint): self._kernels = kernels = defaultdict(proxylist) provnames = ['eles', 'iint', 'mpiint', 'bcint'] provobjs = [eles, iint, mpiint, bcint] for pn, pobj in zip(provnames, provobjs): for kn, kgetter in it.chain(*pobj.kernels.items()): if not kn.startswith('_'): kernels[pn, kn].append(kgetter()) @abstractmethod def rhs(self, t, uinbank, foutbank): pass def filt(self, uinoutbank): self.eles_scal_upts_inb.active = uinoutbank self._queues[0] % self._kernels['eles', 'filter_soln']() def ele_scal_upts(self, idx): return [eb[idx].get() for eb in self.ele_banks] pyfr-1.5.0/pyfr/solvers/baseadvec/000077500000000000000000000000001277740313300170765ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/baseadvec/__init__.py000066400000000000000000000005411277740313300212070ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvec.system import BaseAdvectionSystem from pyfr.solvers.baseadvec.elements import BaseAdvectionElements from pyfr.solvers.baseadvec.inters import (BaseAdvectionBCInters, BaseAdvectionIntInters, BaseAdvectionMPIInters) pyfr-1.5.0/pyfr/solvers/baseadvec/elements.py000066400000000000000000000112551277740313300212700ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.kernels import ComputeMetaKernel from pyfr.solvers.base import BaseElements class BaseAdvectionElements(BaseElements): @property def _scratch_bufs(self): if 'flux' in self.antialias: bufs = {'scal_fpts', 'scal_qpts', 'vect_qpts'} elif 'div-flux' in self.antialias: bufs = {'scal_fpts', 'vect_upts', 'scal_qpts'} else: bufs = {'scal_fpts', 'vect_upts'} if self._soln_in_src_exprs: if 'div-flux' in self.antialias: bufs |= {'scal_qpts_cpy'} else: bufs |= {'scal_upts_cpy'} return bufs def set_backend(self, backend, nscal_upts, nonce): super().set_backend(backend, nscal_upts, nonce) # Register pointwise kernels with the backend backend.pointwise.register( 'pyfr.solvers.baseadvec.kernels.negdivconf' ) # What anti-aliasing options we're running with fluxaa = 'flux' in self.antialias divfluxaa = 'div-flux' in self.antialias # What the source term expressions (if any) are a function of plocsrc = self._ploc_in_src_exprs solnsrc = self._soln_in_src_exprs # Source term kernel arguments srctplargs = { 'ndims': self.ndims, 'nvars': self.nvars, 'srcex': self._src_exprs } # Interpolation from elemental points if fluxaa or (divfluxaa and solnsrc): self.kernels['disu'] = lambda: backend.kernel( 'mul', self.opmat('M8'), self.scal_upts_inb, out=self._scal_fqpts ) else: self.kernels['disu'] = lambda: backend.kernel( 'mul', self.opmat('M0'), self.scal_upts_inb, out=self._scal_fpts ) # Interpolations and projections to/from quadrature points if divfluxaa: self.kernels['tdivf_qpts'] = lambda: backend.kernel( 'mul', self.opmat('M7'), self.scal_upts_outb, out=self._scal_qpts ) self.kernels['divf_upts'] = lambda: backend.kernel( 'mul', self.opmat('M9'), self._scal_qpts, out=self.scal_upts_outb ) # First flux correction kernel if fluxaa: self.kernels['tdivtpcorf'] = lambda: backend.kernel( 'mul', self.opmat('(M1 - M3*M2)*M10'), self._vect_qpts, out=self.scal_upts_outb ) else: self.kernels['tdivtpcorf'] = lambda: backend.kernel( 'mul', self.opmat('M1 - M3*M2'), self._vect_upts, out=self.scal_upts_outb ) # Second flux correction kernel self.kernels['tdivtconf'] = lambda: backend.kernel( 'mul', self.opmat('M3'), self._scal_fpts, out=self.scal_upts_outb, beta=1.0 ) # Transformed to physical divergence kernel + source term if divfluxaa: plocqpts = self.ploc_at('qpts') if plocsrc else None solnqpts = self._scal_qpts_cpy if solnsrc else None if solnsrc: self.kernels['copy_soln'] = lambda: backend.kernel( 'copy', self._scal_qpts_cpy, self._scal_qpts ) self.kernels['negdivconf'] = lambda: backend.kernel( 'negdivconf', tplargs=srctplargs, dims=[self.nqpts, self.neles], tdivtconf=self._scal_qpts, rcpdjac=self.rcpdjac_at('qpts'), ploc=plocqpts, u=solnqpts ) else: plocupts = self.ploc_at('upts') if plocsrc else None solnupts = self._scal_upts_cpy if solnsrc else None if solnsrc: self.kernels['copy_soln'] = lambda: backend.kernel( 'copy', self._scal_upts_cpy, self.scal_upts_inb ) self.kernels['negdivconf'] = lambda: backend.kernel( 'negdivconf', tplargs=srctplargs, dims=[self.nupts, self.neles], tdivtconf=self.scal_upts_outb, rcpdjac=self.rcpdjac_at('upts'), ploc=plocupts, u=solnupts ) # In-place solution filter if self.cfg.getint('soln-filter', 'nsteps', '0'): def filter_soln(): mul = backend.kernel( 'mul', self.opmat('M11'), self.scal_upts_inb, out=self._scal_upts_temp ) copy = backend.kernel( 'copy', self.scal_upts_inb, self._scal_upts_temp ) return ComputeMetaKernel([mul, copy]) self.kernels['filter_soln'] = filter_soln pyfr-1.5.0/pyfr/solvers/baseadvec/inters.py000066400000000000000000000102451277740313300207560ustar00rootroot00000000000000# -*- coding: utf-8 -*- import math from pyfr.solvers.base import BaseInters, get_opt_view_perm from pyfr.nputil import npeval class BaseAdvectionIntInters(BaseInters): def __init__(self, be, lhs, rhs, elemap, cfg): super().__init__(be, lhs, elemap, cfg) const_mat = self._const_mat # Compute the `optimal' permutation for our interface self._gen_perm(lhs, rhs) # Generate the left and right hand side view matrices self._scal_lhs = self._scal_view(lhs, 'get_scal_fpts_for_inter') self._scal_rhs = self._scal_view(rhs, 'get_scal_fpts_for_inter') # Generate the constant matrices self._mag_pnorm_lhs = const_mat(lhs, 'get_mag_pnorms_for_inter') self._norm_pnorm_lhs = const_mat(lhs, 'get_norm_pnorms_for_inter') def _gen_perm(self, lhs, rhs): # Arbitrarily, take the permutation which results in an optimal # memory access pattern for the LHS of the interface self._perm = get_opt_view_perm(lhs, 'get_scal_fpts_for_inter', self._elemap) class BaseAdvectionMPIInters(BaseInters): # Tag used for MPI MPI_TAG = 2314 def __init__(self, be, lhs, rhsrank, rallocs, elemap, cfg): super().__init__(be, lhs, elemap, cfg) self._rhsrank = rhsrank self._rallocs = rallocs const_mat = self._const_mat # Generate the left hand view matrix and its dual self._scal_lhs = self._scal_xchg_view(lhs, 'get_scal_fpts_for_inter') self._scal_rhs = be.xchg_matrix_for_view(self._scal_lhs) self._mag_pnorm_lhs = const_mat(lhs, 'get_mag_pnorms_for_inter') self._norm_pnorm_lhs = const_mat(lhs, 'get_norm_pnorms_for_inter') # Kernels self.kernels['scal_fpts_pack'] = lambda: be.kernel( 'pack', self._scal_lhs ) self.kernels['scal_fpts_send'] = lambda: be.kernel( 'send_pack', self._scal_lhs, self._rhsrank, self.MPI_TAG ) self.kernels['scal_fpts_recv'] = lambda: be.kernel( 'recv_pack', self._scal_rhs, self._rhsrank, self.MPI_TAG ) self.kernels['scal_fpts_unpack'] = lambda: be.kernel( 'unpack', self._scal_rhs ) class BaseAdvectionBCInters(BaseInters): type = None def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfg) self.cfgsect = cfgsect const_mat = self._const_mat # For BC interfaces, which only have an LHS state, we take the # permutation which results in an optimal memory access pattern # iterating over this state. self._perm = get_opt_view_perm(lhs, 'get_scal_fpts_for_inter', elemap) # LHS view and constant matrices self._scal_lhs = self._scal_view(lhs, 'get_scal_fpts_for_inter') self._mag_pnorm_lhs = const_mat(lhs, 'get_mag_pnorms_for_inter') self._norm_pnorm_lhs = const_mat(lhs, 'get_norm_pnorms_for_inter') self._ploc = None def _eval_opts(self, opts, default=None): # Boundary conditions, much like initial conditions, can be # parameterized by values in [constants] so we must bring these # into scope when evaluating the boundary conditions cc = self.cfg.items_as('constants', float) cfg, sect = self.cfg, self.cfgsect # Evaluate any BC specific arguments from the config file if default is not None: return [npeval(cfg.getexpr(sect, k, default), cc) for k in opts] else: return [npeval(cfg.getexpr(sect, k), cc) for k in opts] def _exp_opts(self, opts, lhs, default={}): cfg, sect = self.cfg, self.cfgsect subs = cfg.items('constants') subs.update(x='ploc[0]', y='ploc[1]', z='ploc[2]') subs.update(abs='fabs', pi=str(math.pi)) exprs = {} for k in opts: if k in default: exprs[k] = cfg.getexpr(sect, k, default[k], subs=subs) else: exprs[k] = cfg.getexpr(sect, k, subs=subs) if any('ploc' in ex for ex in exprs.values()) and not self._ploc: self._ploc = self._const_mat(lhs, 'get_ploc_for_inter') return exprs pyfr-1.5.0/pyfr/solvers/baseadvec/kernels/000077500000000000000000000000001277740313300205415ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/baseadvec/kernels/__init__.py000066400000000000000000000000301277740313300226430ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/baseadvec/kernels/negdivconf.mako000066400000000000000000000007541277740313300235420ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:kernel name='negdivconf' ndim='2' t='scalar fpdtype_t' tdivtconf='inout fpdtype_t[${str(nvars)}]' ploc='in fpdtype_t[${str(ndims)}]' u='in fpdtype_t[${str(nvars)}]' rcpdjac='in fpdtype_t'> % for i, ex in enumerate(srcex): tdivtconf[${i}] = -rcpdjac*tdivtconf[${i}] + ${ex}; % endfor pyfr-1.5.0/pyfr/solvers/baseadvec/system.py000066400000000000000000000024501277740313300207750ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.base import BaseSystem class BaseAdvectionSystem(BaseSystem): _nqueues = 2 def rhs(self, t, uinbank, foutbank): runall = self.backend.runall q1, q2 = self._queues kernels = self._kernels self.eles_scal_upts_inb.active = uinbank self.eles_scal_upts_outb.active = foutbank q1 << kernels['eles', 'disu']() q1 << kernels['mpiint', 'scal_fpts_pack']() runall([q1]) if ('eles', 'copy_soln') in kernels: q1 << kernels['eles', 'copy_soln']() q1 << kernels['eles', 'tdisf']() q1 << kernels['eles', 'tdivtpcorf']() q1 << kernels['iint', 'comm_flux']() q1 << kernels['bcint', 'comm_flux'](t=t) q2 << kernels['mpiint', 'scal_fpts_send']() q2 << kernels['mpiint', 'scal_fpts_recv']() q2 << kernels['mpiint', 'scal_fpts_unpack']() runall([q1, q2]) q1 << kernels['mpiint', 'comm_flux']() q1 << kernels['eles', 'tdivtconf']() if ('eles', 'tdivf_qpts') in kernels: q1 << kernels['eles', 'tdivf_qpts']() q1 << kernels['eles', 'negdivconf'](t=t) q1 << kernels['eles', 'divf_upts']() else: q1 << kernels['eles', 'negdivconf'](t=t) runall([q1]) pyfr-1.5.0/pyfr/solvers/baseadvecdiff/000077500000000000000000000000001277740313300177275ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/baseadvecdiff/__init__.py000066400000000000000000000006421277740313300220420ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvecdiff.system import BaseAdvectionDiffusionSystem from pyfr.solvers.baseadvecdiff.elements import BaseAdvectionDiffusionElements from pyfr.solvers.baseadvecdiff.inters import (BaseAdvectionDiffusionBCInters, BaseAdvectionDiffusionIntInters, BaseAdvectionDiffusionMPIInters) pyfr-1.5.0/pyfr/solvers/baseadvecdiff/elements.py000066400000000000000000000106561277740313300221250ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base.kernels import ComputeMetaKernel from pyfr.solvers.baseadvec import BaseAdvectionElements class BaseAdvectionDiffusionElements(BaseAdvectionElements): @property def _scratch_bufs(self): bufs = {'scal_fpts', 'vect_fpts', 'vect_upts'} if 'flux' in self.antialias: bufs |= {'scal_qpts', 'vect_qpts'} elif 'div-flux' in self.antialias: bufs |= {'scal_qpts'} if self._soln_in_src_exprs: if 'div-flux' in self.antialias: bufs |= {'scal_qpts_cpy'} else: bufs |= {'scal_upts_cpy'} return bufs def set_backend(self, backend, nscal_upts, nonce): super().set_backend(backend, nscal_upts, nonce) # Register pointwise kernels backend.pointwise.register( 'pyfr.solvers.baseadvecdiff.kernels.gradcoru' ) self.kernels['_copy_fpts'] = lambda: backend.kernel( 'copy', self._vect_fpts.rslice(0, self.nfpts), self._scal_fpts ) self.kernels['tgradpcoru_upts'] = lambda: backend.kernel( 'mul', self.opmat('M4 - M6*M0'), self.scal_upts_inb, out=self._vect_upts ) self.kernels['tgradcoru_upts'] = lambda: backend.kernel( 'mul', self.opmat('M6'), self._vect_fpts.rslice(0, self.nfpts), out=self._vect_upts, beta=1.0 ) self.kernels['gradcoru_upts'] = lambda: backend.kernel( 'gradcoru', tplargs=dict(ndims=self.ndims, nvars=self.nvars), dims=[self.nupts, self.neles], smats=self.smat_at('upts'), rcpdjac=self.rcpdjac_at('upts'), gradu=self._vect_upts ) def gradcoru_fpts(): nupts, nfpts = self.nupts, self.nfpts vupts, vfpts = self._vect_upts, self._vect_fpts # Exploit the block-diagonal form of the operator muls = [backend.kernel('mul', self.opmat('M0'), vupts.rslice(i*nupts, (i + 1)*nupts), vfpts.rslice(i*nfpts, (i + 1)*nfpts)) for i in range(self.ndims)] return ComputeMetaKernel(muls) self.kernels['gradcoru_fpts'] = gradcoru_fpts if 'flux' in self.antialias: def gradcoru_qpts(): nupts, nqpts = self.nupts, self.nqpts vupts, vqpts = self._vect_upts, self._vect_qpts # Exploit the block-diagonal form of the operator muls = [backend.kernel('mul', self.opmat('M7'), vupts.rslice(i*nupts, (i + 1)*nupts), vqpts.rslice(i*nqpts, (i + 1)*nqpts)) for i in range(self.ndims)] return ComputeMetaKernel(muls) self.kernels['gradcoru_qpts'] = gradcoru_qpts # Shock capturing shock_capturing = self.cfg.get('solver', 'shock-capturing', 'none') if shock_capturing == 'artificial-viscosity': tags = {'align'} # Register the kernels backend.pointwise.register( 'pyfr.solvers.baseadvecdiff.kernels.shocksensor' ) # Obtain the scalar variable to be used for shock sensing shockvar = self.convarmap[self.ndims].index(self.shockvar) # Template arguments tplargs = dict( nvars=self.nvars, nupts=self.nupts, svar=shockvar, c=self.cfg.items_as('solver-artificial-viscosity', float), order=self.basis.order, ubdegs=self.basis.ubasis.degrees, invvdm=self.basis.ubasis.invvdm.T ) # Allocate space for the artificial viscosity vector self.artvisc = backend.matrix((1, self.neles), extent=nonce + 'artvisc', tags=tags) # Apply the sensor to estimate the required artificial viscosity self.kernels['shocksensor'] = lambda: backend.kernel( 'shocksensor', tplargs=tplargs, dims=[self.neles], u=self.scal_upts_inb, artvisc=self.artvisc ) elif shock_capturing == 'none': self.artvisc = None else: raise ValueError('Invalid shock capturing scheme') def get_artvisc_fpts_for_inter(self, eidx, fidx): nfp = self.nfacefpts[fidx] return (self.artvisc.mid,)*nfp, (0,)*nfp, (eidx,)*nfp pyfr-1.5.0/pyfr/solvers/baseadvecdiff/inters.py000066400000000000000000000141541277740313300216120ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.backends.base import NullComputeKernel, NullMPIKernel from pyfr.solvers.base import get_opt_view_perm from pyfr.solvers.baseadvec import (BaseAdvectionIntInters, BaseAdvectionMPIInters, BaseAdvectionBCInters) class BaseAdvectionDiffusionIntInters(BaseAdvectionIntInters): def __init__(self, be, lhs, rhs, elemap, cfg): super().__init__(be, lhs, rhs, elemap, cfg) # Generate the additional view matrices self._vect_lhs = self._vect_view(lhs, 'get_vect_fpts_for_inter') self._vect_rhs = self._vect_view(rhs, 'get_vect_fpts_for_inter') # Generate the additional view matrices for artificial viscosity if cfg.get('solver', 'shock-capturing') == 'artificial-viscosity': self._artvisc_lhs = self._view(lhs, 'get_artvisc_fpts_for_inter') self._artvisc_rhs = self._view(rhs, 'get_artvisc_fpts_for_inter') else: self._artvisc_lhs = self._artvisc_rhs = None # Additional kernel constants self._tpl_c.update(cfg.items_as('solver-interfaces', float)) def _gen_perm(self, lhs, rhs): # In the special case of β = -0.5 it is better to sort by the # RHS interface; otherwise we simply opt for the LHS beta = self.cfg.getfloat('solver-interfaces', 'ldg-beta') side = lhs if beta != -0.5 else rhs # Compute the relevant permutation self._perm = get_opt_view_perm(side, 'get_scal_fpts_for_inter', self._elemap) class BaseAdvectionDiffusionMPIInters(BaseAdvectionMPIInters): def __init__(self, be, lhs, rhsrank, rallocs, elemap, cfg): super().__init__(be, lhs, rhsrank, rallocs, elemap, cfg) lhsprank = rallocs.prank rhsprank = rallocs.mprankmap[rhsrank] # Generate second set of view matrices self._vect_lhs = self._vect_xchg_view(lhs, 'get_vect_fpts_for_inter') self._vect_rhs = be.xchg_matrix_for_view(self._vect_lhs) # Additional kernel constants self._tpl_c.update(cfg.items_as('solver-interfaces', float)) # We require cflux(l,r,n_l) = -cflux(r,l,n_r) and # conu(l,r) = conu(r,l) and where l and r are left and right # solutions at an interface and n_[l,r] are physical normals. # The simplest way to enforce this at an MPI interface is for # one side to take β = -β for the cflux and conu kernels. We # pick this side (arbitrarily) by comparing the physical ranks # of the two partitions. if (lhsprank + rhsprank) % 2: self._tpl_c['ldg-beta'] *= 1.0 if lhsprank > rhsprank else -1.0 else: self._tpl_c['ldg-beta'] *= 1.0 if rhsprank > lhsprank else -1.0 # Null kernel generators null_mpi_kern = lambda: NullMPIKernel() null_comp_kern = lambda: NullComputeKernel() # If we need to send our gradients to the RHS if self._tpl_c['ldg-beta'] != -0.5: self.kernels['vect_fpts_pack'] = lambda: be.kernel( 'pack', self._vect_lhs ) self.kernels['vect_fpts_send'] = lambda: be.kernel( 'send_pack', self._vect_lhs, self._rhsrank, self.MPI_TAG ) else: self.kernels['vect_fpts_pack'] = null_comp_kern self.kernels['vect_fpts_send'] = null_mpi_kern # If we need to recv gradients from the RHS if self._tpl_c['ldg-beta'] != 0.5: self.kernels['vect_fpts_recv'] = lambda: be.kernel( 'recv_pack', self._vect_rhs, self._rhsrank, self.MPI_TAG ) self.kernels['vect_fpts_unpack'] = lambda: be.kernel( 'unpack', self._vect_rhs ) else: self.kernels['vect_fpts_recv'] = null_mpi_kern self.kernels['vect_fpts_unpack'] = null_comp_kern # Generate the additional kernels/views for artificial viscosity if cfg.get('solver', 'shock-capturing') == 'artificial-viscosity': self._artvisc_lhs = self._xchg_view(lhs, 'get_artvisc_fpts_for_inter') self._artvisc_rhs = be.xchg_matrix_for_view(self._artvisc_lhs) # If we need to send our artificial viscosity to the RHS if self._tpl_c['ldg-beta'] != -0.5: self.kernels['artvisc_fpts_pack'] = lambda: be.kernel( 'pack', self._artvisc_lhs ) self.kernels['artvisc_fpts_send'] = lambda: be.kernel( 'send_pack', self._artvisc_lhs, self._rhsrank, self.MPI_TAG ) else: self.kernels['artvisc_fpts_pack'] = null_comp_kern self.kernels['artvisc_fpts_send'] = null_mpi_kern # If we need to recv artificial viscosity from the RHS if self._tpl_c['ldg-beta'] != 0.5: self.kernels['artvisc_fpts_recv'] = lambda: be.kernel( 'recv_pack', self._artvisc_rhs, self._rhsrank, self.MPI_TAG ) self.kernels['artvisc_fpts_unpack'] = lambda: be.kernel( 'unpack', self._artvisc_rhs ) else: self.kernels['artvisc_fpts_recv'] = null_mpi_kern self.kernels['artvisc_fpts_unpack'] = null_comp_kern else: self._artvisc_lhs = self._artvisc_rhs = None class BaseAdvectionDiffusionBCInters(BaseAdvectionBCInters): def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) # Additional view matrices self._vect_lhs = self._vect_view(lhs, 'get_vect_fpts_for_inter') # Additional kernel constants self._tpl_c.update(cfg.items_as('solver-interfaces', float)) # Generate the additional view matrices for artificial viscosity if cfg.get('solver', 'shock-capturing') == 'artificial-viscosity': self._artvisc_lhs = self._view(lhs, 'get_artvisc_fpts_for_inter') else: self._artvisc_lhs = None pyfr-1.5.0/pyfr/solvers/baseadvecdiff/kernels/000077500000000000000000000000001277740313300213725ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/baseadvecdiff/kernels/__init__.py000066400000000000000000000000301277740313300234740ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/baseadvecdiff/kernels/artvisc.mako000066400000000000000000000005271277740313300237220ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:macro name='artificial_viscosity_add' params='grad_uin, fout, artvisc'> % if shock_capturing == 'artificial-viscosity': % for i, j in pyfr.ndrange(ndims, nvars): fout[${i}][${j}] -= artvisc*grad_uin[${i}][${j}]; % endfor % endif pyfr-1.5.0/pyfr/solvers/baseadvecdiff/kernels/gradcoru.mako000066400000000000000000000013311277740313300240470ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:kernel name='gradcoru' ndim='2' smats='in fpdtype_t[${str(ndims)}][${str(ndims)}]' rcpdjac='in fpdtype_t' gradu='inout fpdtype_t[${str(ndims)}][${str(nvars)}]'> fpdtype_t tmpgradu[${ndims}]; % for j in range(nvars): % for i in range(ndims): tmpgradu[${i}] = gradu[${i}][${j}]; % endfor % for i in range(ndims): gradu[${i}][${j}] = rcpdjac*(${' + '.join('smats[{k}][{i}]*tmpgradu[{k}]' .format(i=i, k=k) for k in range(ndims))}); % endfor % endfor pyfr-1.5.0/pyfr/solvers/baseadvecdiff/kernels/shocksensor.mako000066400000000000000000000017371277740313300246140ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <% se0 = math.log10(c['s0']) %> <%pyfr:kernel name='shocksensor' ndim='1' u='in fpdtype_t[${str(nupts)}][${str(nvars)}]' artvisc='out fpdtype_t'> // Smoothness indicator fpdtype_t totEn = 0.0, pnEn = 1e-15, tmp; % for i, deg in enumerate(ubdegs): tmp = ${' + '.join('{jx}*u[{j}][{svar}]'.format(j=j, jx=jx, svar=svar) for j, jx in enumerate(invvdm[i]) if jx != 0)}; totEn += tmp*tmp; % if deg >= order: pnEn += tmp*tmp; % endif % endfor fpdtype_t se = ${1/math.log(10)}*log(pnEn/totEn); // Compute cell-wise artificial viscosity fpdtype_t mu = (se < ${se0 - c['kappa']}) ? 0.0 : ${0.5*c['max-artvisc']}*(1.0 + sin(${0.5*math.pi/c['kappa']}*(se - ${se0}))); mu = (se < ${se0 + c['kappa']}) ? mu : ${c['max-artvisc']}; artvisc = mu; pyfr-1.5.0/pyfr/solvers/baseadvecdiff/system.py000066400000000000000000000047061277740313300216340ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvec import BaseAdvectionSystem class BaseAdvectionDiffusionSystem(BaseAdvectionSystem): def rhs(self, t, uinbank, foutbank): runall = self.backend.runall q1, q2 = self._queues kernels = self._kernels self.eles_scal_upts_inb.active = uinbank self.eles_scal_upts_outb.active = foutbank q1 << kernels['eles', 'disu']() q1 << kernels['mpiint', 'scal_fpts_pack']() runall([q1]) if ('eles', 'copy_soln') in kernels: q1 << kernels['eles', 'copy_soln']() if ('iint', 'copy_fpts') in kernels: q1 << kernels['iint', 'copy_fpts']() q1 << kernels['iint', 'con_u']() q1 << kernels['bcint', 'con_u'](t=t) if ('eles', 'shocksensor') in kernels: q1 << kernels['eles', 'shocksensor']() q1 << kernels['mpiint', 'artvisc_fpts_pack']() q1 << kernels['eles', 'tgradpcoru_upts']() q2 << kernels['mpiint', 'scal_fpts_send']() q2 << kernels['mpiint', 'scal_fpts_recv']() q2 << kernels['mpiint', 'scal_fpts_unpack']() runall([q1, q2]) q1 << kernels['mpiint', 'con_u']() q1 << kernels['eles', 'tgradcoru_upts']() q1 << kernels['eles', 'gradcoru_upts']() q1 << kernels['eles', 'gradcoru_fpts']() q1 << kernels['mpiint', 'vect_fpts_pack']() if ('eles', 'shockvar') in kernels: q2 << kernels['mpiint', 'artvisc_fpts_send']() q2 << kernels['mpiint', 'artvisc_fpts_recv']() q2 << kernels['mpiint', 'artvisc_fpts_unpack']() runall([q1, q2]) if ('eles', 'gradcoru_qpts') in kernels: q1 << kernels['eles', 'gradcoru_qpts']() q1 << kernels['eles', 'tdisf']() q1 << kernels['eles', 'tdivtpcorf']() q1 << kernels['iint', 'comm_flux']() q1 << kernels['bcint', 'comm_flux'](t=t) q2 << kernels['mpiint', 'vect_fpts_send']() q2 << kernels['mpiint', 'vect_fpts_recv']() q2 << kernels['mpiint', 'vect_fpts_unpack']() runall([q1, q2]) q1 << kernels['mpiint', 'comm_flux']() q1 << kernels['eles', 'tdivtconf']() if ('eles', 'tdivf_qpts') in kernels: q1 << kernels['eles', 'tdivf_qpts']() q1 << kernels['eles', 'negdivconf'](t=t) q1 << kernels['eles', 'divf_upts']() else: q1 << kernels['eles', 'negdivconf'](t=t) runall([q1]) pyfr-1.5.0/pyfr/solvers/euler/000077500000000000000000000000001277740313300162755ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/euler/__init__.py000066400000000000000000000001131277740313300204010ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.euler.system import EulerSystem pyfr-1.5.0/pyfr/solvers/euler/elements.py000066400000000000000000000044201277740313300204630ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvec import BaseAdvectionElements class BaseFluidElements(object): formulations = ['std', 'dual'] privarmap = {2: ['rho', 'u', 'v', 'p'], 3: ['rho', 'u', 'v', 'w', 'p']} convarmap = {2: ['rho', 'rhou', 'rhov', 'E'], 3: ['rho', 'rhou', 'rhov', 'rhow', 'E']} dualcoeffs = convarmap visvarmap = { 2: {'density': ['rho'], 'velocity': ['u', 'v'], 'pressure': ['p']}, 3: {'density': ['rho'], 'velocity': ['u', 'v', 'w'], 'pressure': ['p']} } @staticmethod def pri_to_con(pris, cfg): rho, p = pris[0], pris[-1] # Multiply velocity components by rho rhovs = [rho*c for c in pris[1:-1]] # Compute the energy gamma = cfg.getfloat('constants', 'gamma') E = p/(gamma - 1) + 0.5*rho*sum(c*c for c in pris[1:-1]) return [rho] + rhovs + [E] @staticmethod def con_to_pri(cons, cfg): rho, E = cons[0], cons[-1] # Divide momentum components by rho vs = [rhov/rho for rhov in cons[1:-1]] # Compute the pressure gamma = cfg.getfloat('constants', 'gamma') p = (gamma - 1)*(E - 0.5*rho*sum(v*v for v in vs)) return [rho] + vs + [p] class EulerElements(BaseFluidElements, BaseAdvectionElements): def set_backend(self, backend, nscalupts, nonce): super().set_backend(backend, nscalupts, nonce) # Register our flux kernel backend.pointwise.register('pyfr.solvers.euler.kernels.tflux') # Template parameters for the flux kernel tplargs = dict(ndims=self.ndims, nvars=self.nvars, c=self.cfg.items_as('constants', float)) if 'flux' in self.antialias: self.kernels['tdisf'] = lambda: backend.kernel( 'tflux', tplargs=tplargs, dims=[self.nqpts, self.neles], u=self._scal_qpts, smats=self.smat_at('qpts'), f=self._vect_qpts ) else: self.kernels['tdisf'] = lambda: backend.kernel( 'tflux', tplargs=tplargs, dims=[self.nupts, self.neles], u=self.scal_upts_inb, smats=self.smat_at('upts'), f=self._vect_upts ) pyfr-1.5.0/pyfr/solvers/euler/inters.py000066400000000000000000000054561277740313300201650ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvec import (BaseAdvectionIntInters, BaseAdvectionMPIInters, BaseAdvectionBCInters) class EulerIntInters(BaseAdvectionIntInters): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._be.pointwise.register('pyfr.solvers.euler.kernels.intcflux') rsolver = self.cfg.get('solver-interfaces', 'riemann-solver') tplargs = dict(ndims=self.ndims, nvars=self.nvars, rsolver=rsolver, c=self._tpl_c) self.kernels['comm_flux'] = lambda: self._be.kernel( 'intcflux', tplargs=tplargs, dims=[self.ninterfpts], ul=self._scal_lhs, ur=self._scal_rhs, magnl=self._mag_pnorm_lhs, nl=self._norm_pnorm_lhs ) class EulerMPIInters(BaseAdvectionMPIInters): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._be.pointwise.register('pyfr.solvers.euler.kernels.mpicflux') rsolver = self.cfg.get('solver-interfaces', 'riemann-solver') tplargs = dict(ndims=self.ndims, nvars=self.nvars, rsolver=rsolver, c=self._tpl_c) self.kernels['comm_flux'] = lambda: self._be.kernel( 'mpicflux', tplargs, dims=[self.ninterfpts], ul=self._scal_lhs, ur=self._scal_rhs, magnl=self._mag_pnorm_lhs, nl=self._norm_pnorm_lhs ) class EulerBaseBCInters(BaseAdvectionBCInters): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._be.pointwise.register('pyfr.solvers.euler.kernels.bccflux') rsolver = self.cfg.get('solver-interfaces', 'riemann-solver') tplargs = dict(ndims=self.ndims, nvars=self.nvars, rsolver=rsolver, c=self._tpl_c, bctype=self.type) self.kernels['comm_flux'] = lambda: self._be.kernel( 'bccflux', tplargs, dims=[self.ninterfpts], ul=self._scal_lhs, magnl=self._mag_pnorm_lhs, nl=self._norm_pnorm_lhs, ploc=self._ploc ) class EulerSupInflowBCInters(EulerBaseBCInters): type = 'sup-in-fa' def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) tplc = self._exp_opts( ['rho', 'p', 'u', 'v', 'w'][:self.ndims + 2], lhs ) self._tpl_c.update(tplc) class EulerCharRiemInvBCInters(EulerBaseBCInters): type = 'char-riem-inv' def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) tplc = self._exp_opts( ['rho', 'p', 'u', 'v', 'w'][:self.ndims + 2], lhs ) self._tpl_c.update(tplc) class EulerSlpAdiaWallBCInters(EulerBaseBCInters): type = 'slp-adia-wall' pyfr-1.5.0/pyfr/solvers/euler/kernels/000077500000000000000000000000001277740313300177405ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/euler/kernels/__init__.py000066400000000000000000000000301277740313300220420ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/euler/kernels/bccflux.mako000066400000000000000000000015461277740313300222450ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%include file='pyfr.solvers.euler.kernels.bcs.${bctype}'/> <%pyfr:kernel name='bccflux' ndim='1' ul='inout view fpdtype_t[${str(nvars)}]' nl='in fpdtype_t[${str(ndims)}]' magnl='in fpdtype_t' ploc='in fpdtype_t[${str(ndims)}]' t='scalar fpdtype_t'> // Compute the RHS fpdtype_t ur[${nvars}]; ${pyfr.expand('bc_rsolve_state', 'ul', 'nl', 'ur', 'ploc', 't')}; // Perform the Riemann solve fpdtype_t fn[${nvars}]; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'fn')}; // Scale and write out the common normal fluxes % for i in range(nvars): ul[${i}] = magnl*fn[${i}]; % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/bcs/000077500000000000000000000000001277740313300205075ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/euler/kernels/bcs/__init__.py000066400000000000000000000000301277740313300226110ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/euler/kernels/bcs/char-riem-inv.mako000066400000000000000000000032731277740313300240260ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <% gmo = c['gamma'] - 1.0 %> <% gamma = c['gamma'] %> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> fpdtype_t cs = sqrt(${gamma}*${c['p']}/${c['rho']}); fpdtype_t s = ${c['p']}*pow(${c['rho']}, -${gamma}); fpdtype_t ratio = cs*${2.0/gmo}; fpdtype_t inv = 1.0/ul[0]; fpdtype_t V_e = ${' + '.join('{0}*nl[{1}]'.format(c['uvw'[i]], i) for i in range(ndims))}; fpdtype_t V_i = inv*(${' + '.join('ul[{1}]*nl[{0}]'.format(i, i + 1) for i in range(ndims))}); fpdtype_t p_i = ${gmo}*ul[${nvars - 1}] - ${0.5*gmo}*inv*${pyfr.dot('ul[{i}]', i=(1, ndims + 1))}; fpdtype_t c_i = sqrt(${gamma}*p_i*inv); fpdtype_t R_e = (fabs(V_e) >= cs && V_i >= 0) ? V_i - c_i*${2.0/gmo} : V_e - ratio; fpdtype_t R_i = (fabs(V_e) >= cs && V_i < 0) ? V_e + ratio : V_i + c_i*${2.0/gmo}; fpdtype_t V_b = 0.5*(R_e + R_i); fpdtype_t c_b = ${0.25*gmo}*(R_i - R_e); fpdtype_t rho_b = (V_i < 0) ? pow((1.0/(${gamma}*s))*c_b*c_b, ${1.0/gmo}) : ul[0]*pow(ul[0]*c_b*c_b/(${gamma}*p_i), ${1.0/gmo}); fpdtype_t p_b = ${1.0/gamma}*rho_b*c_b*c_b; ur[0] = rho_b; % for i in range(ndims): ur[${i + 1}] = (V_i >= 0) ? rho_b*(ul[${i + 1}]*inv + (V_b - V_i)*nl[${i}]) : rho_b*(${c['uvw'[i]]} + (V_b - V_e)*nl[${i}]); % endfor ur[${nvars - 1}] = p_b*${1.0/gmo} + 0.5*(1.0/ur[0])*${pyfr.dot('ur[{i}]', i=(1, ndims + 1))}; pyfr-1.5.0/pyfr/solvers/euler/kernels/bcs/slp-adia-wall.mako000066400000000000000000000006671277740313300240200ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> fpdtype_t nor = ${' + '.join('ul[{1}]*nl[{0}]'.format(i, i + 1) for i in range(ndims))}; ur[0] = ul[0]; % for i in range(ndims): ur[${i + 1}] = ul[${i + 1}] - 2*nor*nl[${i}]; % endfor ur[${nvars - 1}] = ul[${nvars - 1}]; pyfr-1.5.0/pyfr/solvers/euler/kernels/bcs/sup-in-fa.mako000066400000000000000000000006451277740313300231640ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> ur[0] = ${c['rho']}; % for i, v in enumerate('uvw'[:ndims]): ur[${i + 1}] = (${c['rho']})*(${c[v]}); % endfor ur[${nvars - 1}] = ${c['p']}/${c['gamma'] - 1} + 0.5*(1.0/ur[0])*${pyfr.dot('ur[{i}]', i=(1, ndims + 1))}; pyfr-1.5.0/pyfr/solvers/euler/kernels/flux.mako000066400000000000000000000013751277740313300215750ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:macro name='inviscid_flux' params='s, f, p, v'> fpdtype_t invrho = 1.0/s[0], E = s[${nvars - 1}]; // Compute the velocities fpdtype_t rhov[${ndims}]; % for i in range(ndims): rhov[${i}] = s[${i + 1}]; v[${i}] = invrho*rhov[${i}]; % endfor // Compute the pressure p = ${c['gamma'] - 1}*(E - 0.5*invrho*${pyfr.dot('rhov[{i}]', i=ndims)}); // Density and energy fluxes % for i in range(ndims): f[${i}][0] = rhov[${i}]; f[${i}][${nvars - 1}] = (E + p)*v[${i}]; % endfor // Momentum fluxes % for i, j in pyfr.ndrange(ndims, ndims): f[${i}][${j + 1}] = rhov[${i}]*v[${j}]${' + p' if i == j else ''}; % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/intcflux.mako000066400000000000000000000012651277740313300224510ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%pyfr:kernel name='intcflux' ndim='1' ul='inout view fpdtype_t[${str(nvars)}]' ur='inout view fpdtype_t[${str(nvars)}]' nl='in fpdtype_t[${str(ndims)}]' magnl='in fpdtype_t'> // Perform the Riemann solve fpdtype_t fn[${nvars}]; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'fn')}; // Scale and write out the common normal fluxes % for i in range(nvars): ul[${i}] = magnl*fn[${i}]; ur[${i}] = -magnl*fn[${i}]; % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/mpicflux.mako000066400000000000000000000012201277740313300224330ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%pyfr:kernel name='mpicflux' ndim='1' ul='inout view fpdtype_t[${str(nvars)}]' ur='in mpi fpdtype_t[${str(nvars)}]' nl='in fpdtype_t[${str(ndims)}]' magnl='in fpdtype_t'> // Perform the Riemann solve fpdtype_t fn[${nvars}]; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'fn')}; // Scale and write out the common normal fluxes % for i in range(nvars): ul[${i}] = magnl*fn[${i}]; % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/000077500000000000000000000000001277740313300216175ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/__init__.py000066400000000000000000000000301277740313300237210ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/hll.mako000066400000000000000000000033201277740313300232450ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.flux'/> <%pyfr:macro name='rsolve' params='ul, ur, n, nf'> // Compute the left and right fluxes + velocities and pressures fpdtype_t fl[${ndims}][${nvars}], fr[${ndims}][${nvars}]; fpdtype_t vl[${ndims}], vr[${ndims}]; fpdtype_t pl, pr; fpdtype_t nf_sub, nf_fl, nf_fr; ${pyfr.expand('inviscid_flux', 'ul', 'fl', 'pl', 'vl')}; ${pyfr.expand('inviscid_flux', 'ur', 'fr', 'pr', 'vr')}; // Get the normal left and right velocities fpdtype_t nvl = ${pyfr.dot('n[{i}]', 'vl[{i}]', i=ndims)}; fpdtype_t nvr = ${pyfr.dot('n[{i}]', 'vr[{i}]', i=ndims)}; // Compute the Roe-averaged velocity fpdtype_t nv = (sqrt(ul[0])*nvl + sqrt(ur[0])*nvr) / (sqrt(ul[0]) + sqrt(ur[0])); // Compute the Roe-averaged enthalpy fpdtype_t H = (sqrt(ul[0])*(pr + ur[${ndims + 1}]) + sqrt(ur[0])*(pl + ul[${ndims + 1}])) / (sqrt(ul[0])*ur[0] + sqrt(ur[0])*ul[0]); // Roe average sound speed fpdtype_t a = sqrt(${c['gamma'] - 1}*(H - 0.5*nv*nv)); // Estimate the left and right wave speed, sl and sr fpdtype_t sl = nv - a; fpdtype_t sr = nv + a; fpdtype_t rcpsrsl = 1/(sr - sl); // Output % for i in range(nvars): nf_fl = ${' + '.join('n[{j}]*fl[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; nf_fr = ${' + '.join('n[{j}]*fr[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; nf_sub = (sr*nf_fl - sl*nf_fr + sl*sr*(ur[${i}] - ul[${i}]))*rcpsrsl; nf[${i}] = (0 <= sl) ? nf_fl : (0 >= sr) ? nf_fr : nf_sub; % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/hllc.mako000066400000000000000000000047121277740313300234160ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.flux'/> <%pyfr:macro name='rsolve' params='ul, ur, n, nf'> // Compute the left and right fluxes + velocities and pressures fpdtype_t fl[${ndims}][${nvars}], fr[${ndims}][${nvars}]; fpdtype_t vl[${ndims}], vr[${ndims}]; fpdtype_t pl, pr; fpdtype_t nf_fl, nf_fr, nf_flstar, nf_frstar, d_star; fpdtype_t rcp_lstar, rcp_rstar; ${pyfr.expand('inviscid_flux', 'ul', 'fl', 'pl', 'vl')}; ${pyfr.expand('inviscid_flux', 'ur', 'fr', 'pr', 'vr')}; // Get the normal left and right velocities fpdtype_t nvl = ${pyfr.dot('n[{i}]', 'vl[{i}]', i=ndims)}; fpdtype_t nvr = ${pyfr.dot('n[{i}]', 'vr[{i}]', i=ndims)}; // Compute the Roe-averaged velocity fpdtype_t nv = (sqrt(ul[0])*nvl + sqrt(ur[0])*nvr) / (sqrt(ul[0]) + sqrt(ur[0])); // Compute the Roe-averaged enthalpy fpdtype_t H = (sqrt(ul[0])*(pr + ur[${ndims + 1}]) + sqrt(ur[0])*(pl + ul[${ndims + 1}])) / (sqrt(ul[0])*ur[0] + sqrt(ur[0])*ul[0]); // Roe average sound speed fpdtype_t a = sqrt(${c['gamma'] - 1}*(H - 0.5*nv*nv)); // Estimate the left and right wave speed, sl and sr fpdtype_t sl = nv - a; fpdtype_t sr = nv + a; fpdtype_t s_star = (pr - pl + ul[0]*nvl*(sl - nvl) - ur[0]*nvr*(sr - nvr)) / (ul[0]*(sl - nvl) - ur[0]*(sr - nvr)); // Output rcp_lstar = 1 / (sl - s_star); rcp_rstar = 1 / (sr - s_star); % for i in range(nvars): nf_fl = ${' + '.join('n[{j}]*fl[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; nf_fr = ${' + '.join('n[{j}]*fr[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; % if i == 0: nf_flstar = s_star*(sl*ul[${i}] - nf_fl) * rcp_lstar; nf_frstar = s_star*(sr*ur[${i}] - nf_fr) * rcp_rstar; % else: d_star = ${'s_star' if i == nvars - 1 else 'n[{0}]'.format(i - 1)}; nf_flstar = (s_star*(sl*ul[${i}] - nf_fl) + sl*(pl + ul[0]*(sl - nvl)*(s_star - nvl))*d_star) * rcp_lstar; nf_frstar = (s_star*(sr*ur[${i}] - nf_fr) + sr*(pr + ur[0]*(sr - nvr)*(s_star - nvr))*d_star) * rcp_rstar; % endif nf[${i}] = (sl >= 0) ? nf_fl : (sl <= 0 && s_star >= 0) ? nf_flstar : (s_star <= 0 && sr >= 0) ? nf_frstar : nf_fr; % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/roe.mako000066400000000000000000000051531277740313300232610ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.flux'/> <% eps = 0.001 %> <%pyfr:macro name='rsolve' params='ul, ur, n, nf'> // Compute the left and right fluxes + velocities and pressures fpdtype_t fl[${ndims}][${nvars}], fr[${ndims}][${nvars}]; fpdtype_t vl[${ndims}], vr[${ndims}], va[${ndims}], dv[${ndims}]; fpdtype_t v1[${nvars}], v2[${nvars}], v3[${nvars}]; fpdtype_t pl, pr, r2a2; ${pyfr.expand('inviscid_flux', 'ul', 'fl', 'pl', 'vl')}; ${pyfr.expand('inviscid_flux', 'ur', 'fr', 'pr', 'vr')}; // Get the normal velocity jump fpdtype_t dvs = ${pyfr.dot('n[{i}]', 'vr[{i}] - vl[{i}]', i=ndims)}; // Compute Roe averaged density and enthalpy fpdtype_t roa = sqrt(ul[0])*sqrt(ur[0]); fpdtype_t ha = (sqrt(ul[0])*(pr + ur[${ndims + 1}]) + sqrt(ur[0])*(pl + ul[${ndims + 1}])) / (sqrt(ul[0])*ur[0] + sqrt(ur[0])*ul[0]); fpdtype_t invsqrulpur = 1/(sqrt(ul[0]) + sqrt(ur[0])); % for i in range(ndims): va[${i}] = (vl[${i}]*sqrt(ul[0]) + vr[${i}]*sqrt(ur[0]))*invsqrulpur; % endfor fpdtype_t qq = ${pyfr.dot('va[{i}]', 'va[{i}]', i=ndims)}; fpdtype_t vs = ${pyfr.dot('n[{i}]', 'va[{i}]', i=ndims)}; fpdtype_t a = sqrt(${c['gamma'] - 1}*(ha - 0.5*qq)); // Compute the Eigenvalues fpdtype_t l1 = fabs(vs - a); fpdtype_t l2 = fabs(vs); fpdtype_t l3 = fabs(vs + a); // Entropy fix l1 = (l1 < ${eps}) ? ${1/(2*eps)}*(l1*l1 + ${eps**2}) : l1; l3 = (l3 < ${eps}) ? ${1/(2*eps)}*(l3*l3 + ${eps**2}) : l3; // Get the jumps % for i in range(ndims): dv[${i}] = vr[${i}] - vl[${i}]; % endfor fpdtype_t dro = ur[0] - ul[0]; fpdtype_t dp = pr - pl; // Compute the Eigenvectors r2a2 = 1/(2*a*a); v1[0] = (dp - roa*a*dvs)*r2a2; v1[${nvars - 1}] = (dp - roa*a*dvs)*r2a2*(ha - a*vs); v2[0] = dro - dp*2*r2a2; v2[${nvars - 1}] = (dro - dp*2*r2a2)*qq*0.5 + roa*(${pyfr.dot('va[{i}]', 'dv[{i}]', i=ndims)} - vs*dvs); v3[0] = (dp + roa*a*dvs)*r2a2; v3[${nvars - 1}] = (dp + roa*a*dvs)*r2a2*(ha + a*vs); % for i in range(ndims): v1[${i + 1}] = (dp - roa*a*dvs)*r2a2*(va[${i}] - a*n[${i}]); v2[${i + 1}] = (dro - dp*2*r2a2)*va[${i}] + roa*(dv[${i}] - dvs*n[${i}]); v3[${i + 1}] = (dp + roa*a*dvs)*r2a2*(va[${i}] + a*n[${i}]); % endfor // Output % for i in range(nvars): nf[${i}] = 0.5*(${' + '.join('n[{j}]*(fl[{j}][{i}] + fr[{j}][{i}])' .format(i=i, j=j) for j in range(ndims))} - (l1*v1[${i}] + l2*v2[${i}] + l3*v3[${i}])); % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/roem.mako000066400000000000000000000056411277740313300234400ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.flux'/> // RoeM scheme (ref: JCP 185(2), 342-374) <%pyfr:macro name='rsolve' params='ul, ur, n, nf'> // Compute the left and right fluxes + velocities and pressures fpdtype_t fl[${ndims}][${nvars}], fr[${ndims}][${nvars}]; fpdtype_t vl[${ndims}], vr[${ndims}], va[${ndims}], dv[${ndims}]; fpdtype_t du[${nvars}], bdq[${nvars}]; fpdtype_t pl, pr; ${pyfr.expand('inviscid_flux', 'ul', 'fl', 'pl', 'vl')}; ${pyfr.expand('inviscid_flux', 'ur', 'fr', 'pr', 'vr')}; // Specific enthalpy, contra velocity for left / right fpdtype_t hl = (ul[${ndims + 1}] + pl)/ul[0]; fpdtype_t hr = (ur[${ndims + 1}] + pr)/ur[0]; fpdtype_t contral = ${pyfr.dot('n[{i}]', 'vl[{i}]', i=ndims)}; fpdtype_t contrar = ${pyfr.dot('n[{i}]', 'vr[{i}]', i=ndims)}; // Difference between two state fpdtype_t drho = ur[0] - ul[0]; fpdtype_t dp = pr - pl; fpdtype_t dh = hr - hl; fpdtype_t dcontra = contrar - contral; % for i in range(ndims): dv[${i}] = vr[${i}] - vl[${i}]; % endfor // Compute Roe averaged density and enthalpy fpdtype_t rrr = sqrt(ur[0]/ul[0]); fpdtype_t ratl = 1.0/(1.0 + rrr); fpdtype_t ratr = rrr*ratl; fpdtype_t ra = rrr*ul[0]; fpdtype_t ha = hl*ratl + hr*ratr; % for i in range(ndims): va[${i}] = vl[${i}]*ratl + vr[${i}]*ratr; % endfor fpdtype_t qq = ${pyfr.dot('va[{i}]', 'va[{i}]', i=ndims)}; fpdtype_t contraa = ${pyfr.dot('n[{i}]', 'va[{i}]', i=ndims)}; fpdtype_t aa = sqrt(${c['gamma'] - 1}*(ha - 0.5*qq)); fpdtype_t rcp_aa = 1.0/aa; // Compute |M|, add a small number to avoid a possible singularity of f fpdtype_t abs_ma = fabs(contraa*rcp_aa) + 1e-15; // Eigen structure fpdtype_t b1 = max(0.0, max(contraa + aa, contrar + aa)); fpdtype_t b2 = min(0.0, min(contraa - aa, contral - aa)); // Normalized wave speed fpdtype_t b1b2 = b1*b2; fpdtype_t rcp_b1_b2 = 1.0/(b1 - b2); b1 = b1*rcp_b1_b2; b2 = b2*rcp_b1_b2; b1b2 = b1b2*rcp_b1_b2; // 1-D shock discontinuity sensing term and Mach number based function f,g fpdtype_t SDST = (pl < pr) ? pl / pr : pr / pl; fpdtype_t h = 1.0 - SDST; fpdtype_t f = pow(abs_ma, h); fpdtype_t g = f/(1.0 + abs_ma); // Difference of U, du %for i in range(nvars - 1): du[${i}] = ur[${i}] - ul[${i}]; %endfor du[${nvars - 1}] = ur[0]*hr - ul[0]*hl; // BdQ bdq[0] = drho - f*dp*rcp_aa*rcp_aa; bdq[${nvars - 1}] = bdq[0]*ha + ra*dh; % for i in range(ndims): bdq[${i + 1}] = bdq[0]*va[${i}] + ra*(dv[${i}] - n[${i}]*dcontra); % endfor // Flux % for i in range(nvars): nf[${i}] = ${' + '.join('n[{j}]*(b1*fl[{j}][{i}] - b2*fr[{j}][{i}])' .format(i=i, j=j) for j in range(ndims))} + b1b2*(du[${i}] - g*bdq[${i}]); % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/rsolvers/rusanov.mako000066400000000000000000000020171277740313300241650ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.flux'/> <%pyfr:macro name='rsolve' params='ul, ur, n, nf'> // Compute the left and right fluxes + velocities and pressures fpdtype_t fl[${ndims}][${nvars}], fr[${ndims}][${nvars}]; fpdtype_t vl[${ndims}], vr[${ndims}]; fpdtype_t pl, pr; ${pyfr.expand('inviscid_flux', 'ul', 'fl', 'pl', 'vl')}; ${pyfr.expand('inviscid_flux', 'ur', 'fr', 'pr', 'vr')}; // Sum the left and right velocities and take the normal fpdtype_t nv = ${pyfr.dot('n[{i}]', 'vl[{i}] + vr[{i}]', i=ndims)}; // Estimate the maximum wave speed / 2 fpdtype_t a = sqrt(${0.25*c['gamma']}*(pl + pr)/(ul[0] + ur[0])) + 0.25*fabs(nv); // Output % for i in range(nvars): nf[${i}] = 0.5*(${' + '.join('n[{j}]*(fl[{j}][{i}] + fr[{j}][{i}])' .format(i=i, j=j) for j in range(ndims))}) + a*(ul[${i}] - ur[${i}]); % endfor pyfr-1.5.0/pyfr/solvers/euler/kernels/tflux.mako000066400000000000000000000014401277740313300217520ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.flux'/> <%pyfr:kernel name='tflux' ndim='2' u='in fpdtype_t[${str(nvars)}]' smats='in fpdtype_t[${str(ndims)}][${str(ndims)}]' f='out fpdtype_t[${str(ndims)}][${str(nvars)}]'> // Compute the flux fpdtype_t ftemp[${ndims}][${nvars}]; fpdtype_t p, v[${ndims}]; ${pyfr.expand('inviscid_flux', 'u', 'ftemp', 'p', 'v')}; // Transform the fluxes % for i, j in pyfr.ndrange(ndims, nvars): f[${i}][${j}] = ${' + '.join('smats[{0}][{1}]*ftemp[{1}][{2}]' .format(i, k, j) for k in range(ndims))}; % endfor pyfr-1.5.0/pyfr/solvers/euler/system.py000066400000000000000000000007161277740313300201770ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvec import BaseAdvectionSystem from pyfr.solvers.euler.elements import EulerElements from pyfr.solvers.euler.inters import (EulerIntInters, EulerMPIInters, EulerBaseBCInters) class EulerSystem(BaseAdvectionSystem): name = 'euler' elementscls = EulerElements intinterscls = EulerIntInters mpiinterscls = EulerMPIInters bbcinterscls = EulerBaseBCInters pyfr-1.5.0/pyfr/solvers/navstokes/000077500000000000000000000000001277740313300171765ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/navstokes/__init__.py000066400000000000000000000001261277740313300213060ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.navstokes.system import NavierStokesSystem pyfr-1.5.0/pyfr/solvers/navstokes/elements.py000066400000000000000000000030021277740313300213570ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvecdiff import BaseAdvectionDiffusionElements from pyfr.solvers.euler.elements import BaseFluidElements class NavierStokesElements(BaseFluidElements, BaseAdvectionDiffusionElements): # Use the density field for shock sensing shockvar = 'rho' def set_backend(self, backend, nscalupts, nonce): super().set_backend(backend, nscalupts, nonce) backend.pointwise.register('pyfr.solvers.navstokes.kernels.tflux') shock_capturing = self.cfg.get('solver', 'shock-capturing') visc_corr = self.cfg.get('solver', 'viscosity-correction', 'none') if visc_corr not in {'sutherland', 'none'}: raise ValueError('Invalid viscosity-correction option') tplargs = dict(ndims=self.ndims, nvars=self.nvars, shock_capturing=shock_capturing, visc_corr=visc_corr, c=self.cfg.items_as('constants', float)) if 'flux' in self.antialias: self.kernels['tdisf'] = lambda: backend.kernel( 'tflux', tplargs=tplargs, dims=[self.nqpts, self.neles], u=self._scal_qpts, smats=self.smat_at('qpts'), f=self._vect_qpts, artvisc=self.artvisc ) else: self.kernels['tdisf'] = lambda: backend.kernel( 'tflux', tplargs=tplargs, dims=[self.nupts, self.neles], u=self.scal_upts_inb, smats=self.smat_at('upts'), f=self._vect_upts, artvisc=self.artvisc ) pyfr-1.5.0/pyfr/solvers/navstokes/inters.py000066400000000000000000000167741277740313300210730ustar00rootroot00000000000000# -*- coding: utf-8 -*- import numpy as np from pyfr.backends.base.kernels import ComputeMetaKernel from pyfr.solvers.baseadvecdiff import (BaseAdvectionDiffusionBCInters, BaseAdvectionDiffusionIntInters, BaseAdvectionDiffusionMPIInters) class NavierStokesIntInters(BaseAdvectionDiffusionIntInters): def __init__(self, be, lhs, rhs, elemap, cfg): super().__init__(be, lhs, rhs, elemap, cfg) # Pointwise template arguments rsolver = self.cfg.get('solver-interfaces', 'riemann-solver') visc_corr = self.cfg.get('solver', 'viscosity-correction') shock_capturing = self.cfg.get('solver', 'shock-capturing') tplargs = dict(ndims=self.ndims, nvars=self.nvars, rsolver=rsolver, visc_corr=visc_corr, shock_capturing=shock_capturing, c=self._tpl_c) be.pointwise.register('pyfr.solvers.navstokes.kernels.intconu') be.pointwise.register('pyfr.solvers.navstokes.kernels.intcflux') if abs(self._tpl_c['ldg-beta']) == 0.5: self.kernels['copy_fpts'] = lambda: ComputeMetaKernel( [ele.kernels['_copy_fpts']() for ele in elemap.values()] ) self.kernels['con_u'] = lambda: be.kernel( 'intconu', tplargs=tplargs, dims=[self.ninterfpts], ulin=self._scal_lhs, urin=self._scal_rhs, ulout=self._vect_lhs, urout=self._vect_rhs ) self.kernels['comm_flux'] = lambda: be.kernel( 'intcflux', tplargs=tplargs, dims=[self.ninterfpts], ul=self._scal_lhs, ur=self._scal_rhs, gradul=self._vect_lhs, gradur=self._vect_rhs, artviscl=self._artvisc_lhs, artviscr=self._artvisc_rhs, magnl=self._mag_pnorm_lhs, nl=self._norm_pnorm_lhs ) class NavierStokesMPIInters(BaseAdvectionDiffusionMPIInters): def __init__(self, be, lhs, rhsrank, rallocs, elemap, cfg): super().__init__(be, lhs, rhsrank, rallocs, elemap, cfg) # Pointwise template arguments rsolver = cfg.get('solver-interfaces', 'riemann-solver') visc_corr = cfg.get('solver', 'viscosity-correction') shock_capturing = cfg.get('solver', 'shock-capturing') tplargs = dict(ndims=self.ndims, nvars=self.nvars, rsolver=rsolver, visc_corr=visc_corr, shock_capturing=shock_capturing, c=self._tpl_c) be.pointwise.register('pyfr.solvers.navstokes.kernels.mpiconu') be.pointwise.register('pyfr.solvers.navstokes.kernels.mpicflux') self.kernels['con_u'] = lambda: be.kernel( 'mpiconu', tplargs=tplargs, dims=[self.ninterfpts], ulin=self._scal_lhs, urin=self._scal_rhs, ulout=self._vect_lhs ) self.kernels['comm_flux'] = lambda: be.kernel( 'mpicflux', tplargs=tplargs, dims=[self.ninterfpts], ul=self._scal_lhs, ur=self._scal_rhs, gradul=self._vect_lhs, gradur=self._vect_rhs, artviscl=self._artvisc_lhs, artviscr=self._artvisc_rhs, magnl=self._mag_pnorm_lhs, nl=self._norm_pnorm_lhs ) class NavierStokesBaseBCInters(BaseAdvectionDiffusionBCInters): cflux_state = None def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) # Pointwise template arguments rsolver = cfg.get('solver-interfaces', 'riemann-solver') visc_corr = cfg.get('solver', 'viscosity-correction', 'none') shock_capturing = cfg.get('solver', 'shock-capturing', 'none') tplargs = dict(ndims=self.ndims, nvars=self.nvars, rsolver=rsolver, visc_corr=visc_corr, shock_capturing=shock_capturing, c=self._tpl_c, bctype=self.type, bccfluxstate=self.cflux_state) be.pointwise.register('pyfr.solvers.navstokes.kernels.bcconu') be.pointwise.register('pyfr.solvers.navstokes.kernels.bccflux') self.kernels['con_u'] = lambda: be.kernel( 'bcconu', tplargs=tplargs, dims=[self.ninterfpts], ulin=self._scal_lhs, ulout=self._vect_lhs, nlin=self._norm_pnorm_lhs, ploc=self._ploc ) self.kernels['comm_flux'] = lambda: be.kernel( 'bccflux', tplargs=tplargs, dims=[self.ninterfpts], ul=self._scal_lhs, gradul=self._vect_lhs, magnl=self._mag_pnorm_lhs, nl=self._norm_pnorm_lhs, ploc=self._ploc, artviscl=self._artvisc_lhs ) class NavierStokesNoSlpIsotWallBCInters(NavierStokesBaseBCInters): type = 'no-slp-isot-wall' cflux_state = 'ghost' def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._tpl_c['cpTw'], = self._eval_opts(['cpTw']) self._tpl_c['v'] = self._eval_opts('uvw'[:self.ndims], default='0') class NavierStokesNoSlpAdiaWallBCInters(NavierStokesBaseBCInters): type = 'no-slp-adia-wall' cflux_state = 'ghost' class NavierStokesSlpAdiaWallBCInters(NavierStokesBaseBCInters): type = 'slp-adia-wall' cflux_state = None class NavierStokesCharRiemInvBCInters(NavierStokesBaseBCInters): type = 'char-riem-inv' cflux_state = 'ghost' def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) tplc = self._exp_opts( ['rho', 'p', 'u', 'v', 'w'][:self.ndims + 2], lhs ) self._tpl_c.update(tplc) class NavierStokesSupInflowBCInters(NavierStokesBaseBCInters): type = 'sup-in-fa' cflux_state = 'ghost' def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) tplc = self._exp_opts( ['rho', 'p', 'u', 'v', 'w'][:self.ndims + 2], lhs ) self._tpl_c.update(tplc) class NavierStokesSupOutflowBCInters(NavierStokesBaseBCInters): type = 'sup-out-fn' cflux_state = 'ghost' class NavierStokesSubInflowFrvBCInters(NavierStokesBaseBCInters): type = 'sub-in-frv' cflux_state = 'ghost' def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) tplc = self._exp_opts( ['rho', 'u', 'v', 'w'][:self.ndims + 1], lhs, default={'u': 0, 'v': 0, 'w': 0} ) self._tpl_c.update(tplc) class NavierStokesSubInflowFtpttangBCInters(NavierStokesBaseBCInters): type = 'sub-in-ftpttang' cflux_state = 'ghost' def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) gamma = self.cfg.getfloat('constants', 'gamma') # Pass boundary constants to the backend self._tpl_c['cpTt'], = self._eval_opts(['cpTt']) self._tpl_c['pt'], = self._eval_opts(['pt']) self._tpl_c['Rdcp'] = (gamma - 1.0)/gamma # Calculate u, v velocity components from the inflow angle theta = self._eval_opts(['theta'])[0]*np.pi/180.0 velcomps = np.array([np.cos(theta), np.sin(theta), 1.0]) # Adjust u, v and calculate w velocity components for 3-D if self.ndims == 3: phi = self._eval_opts(['phi'])[0]*np.pi/180.0 velcomps[:2] *= np.sin(phi) velcomps[2] *= np.cos(phi) self._tpl_c['vc'] = velcomps[:self.ndims] class NavierStokesSubOutflowBCInters(NavierStokesBaseBCInters): type = 'sub-out-fp' cflux_state = 'ghost' def __init__(self, be, lhs, elemap, cfgsect, cfg): super().__init__(be, lhs, elemap, cfgsect, cfg) self._tpl_c.update(self._exp_opts(['p'], lhs)) pyfr-1.5.0/pyfr/solvers/navstokes/kernels/000077500000000000000000000000001277740313300206415ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/navstokes/kernels/__init__.py000066400000000000000000000000301277740313300227430ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bccflux.mako000066400000000000000000000013751277740313300231460ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.${bctype}'/> % if bccfluxstate: <%include file='pyfr.solvers.navstokes.kernels.bcs.${bccfluxstate}'/> % endif <%pyfr:kernel name='bccflux' ndim='1' ul='inout view fpdtype_t[${str(nvars)}]' gradul='in view fpdtype_t[${str(ndims)}][${str(nvars)}]' artviscl='in view fpdtype_t' nl='in fpdtype_t[${str(ndims)}]' magnl='in fpdtype_t' ploc='in fpdtype_t[${str(ndims)}]' t='scalar fpdtype_t'> ${pyfr.expand('bc_common_flux_state', 'ul', 'gradul', 'artviscl', 'nl', 'magnl', 'ploc', 't')}; pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcconu.mako000066400000000000000000000010441277740313300227620ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.${bctype}'/> <%pyfr:kernel name='bcconu' ndim='1' ulin='in view fpdtype_t[${str(nvars)}]' ulout='out view fpdtype_t[${str(nvars)}]' nlin='in fpdtype_t[${str(ndims)}]' ploc='in fpdtype_t[${str(ndims)}]' t='scalar fpdtype_t'> ${pyfr.expand('bc_ldg_state', 'ulin', 'nlin', 'ulout', 'ploc', 't')}; pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/000077500000000000000000000000001277740313300214105ustar00rootroot00000000000000pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/__init__.py000066400000000000000000000000301277740313300235120ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/char-riem-inv.mako000066400000000000000000000005221277740313300247210ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%include file='pyfr.solvers.euler.kernels.bcs.char-riem-inv'/> <%pyfr:alias name='bc_ldg_state' func='bc_rsolve_state'/> <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_zero'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/common.mako000066400000000000000000000006701277740313300235540ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:macro name='bc_common_grad_zero' params='ul, nl, gradul, gradur'> % for i, j in pyfr.ndrange(ndims, nvars): gradur[${i}][${j}] = 0; % endfor <%pyfr:macro name='bc_common_grad_copy' params='ul, nl, gradul, gradur'> % for i, j in pyfr.ndrange(ndims, nvars): gradur[${i}][${j}] = gradul[${i}][${j}]; % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/ghost.mako000066400000000000000000000024211277740313300234040ustar00rootroot00000000000000<%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.baseadvecdiff.kernels.artvisc'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%include file='pyfr.solvers.navstokes.kernels.flux'/> <% tau = c['ldg-tau'] %> <%pyfr:macro name='bc_common_flux_state' params='ul, gradul, artviscl, nl, magnl, ploc, t'> // Viscous states fpdtype_t ur[${nvars}], gradur[${ndims}][${nvars}]; ${pyfr.expand('bc_ldg_state', 'ul', 'nl', 'ur', 'ploc', 't')}; ${pyfr.expand('bc_ldg_grad_state', 'ul', 'nl', 'gradul', 'gradur')}; fpdtype_t fvr[${ndims}][${nvars}] = {{0}}; ${pyfr.expand('viscous_flux_add', 'ur', 'gradur', 'fvr')}; ${pyfr.expand('artificial_viscosity_add', 'gradur', 'fvr', 'artviscl')}; // Inviscid (Riemann solve) state ${pyfr.expand('bc_rsolve_state', 'ul', 'nl', 'ur', 'ploc', 't')}; // Perform the Riemann solve fpdtype_t ficomm[${nvars}], fvcomm; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'ficomm')}; % for i in range(nvars): fvcomm = ${' + '.join('nl[{j}]*fvr[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; % if tau != 0.0: fvcomm += ${tau}*(ul[${i}] - ur[${i}]); % endif ul[${i}] = magnl*(ficomm[${i}] + fvcomm); % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/no-slp-adia-wall.mako000066400000000000000000000061731277740313300253310ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> ur[0] = ul[0]; % for i in range(ndims): ur[${i + 1}] = -ul[${i + 1}]; % endfor ur[${nvars - 1}] = ul[${nvars - 1}]; <%pyfr:macro name='bc_ldg_state' params='ul, nl, ur, ploc, t'> ur[0] = ul[0]; % for i in range(ndims): ur[${i + 1}] = 0.0; % endfor ur[${nvars - 1}] = ul[${nvars - 1}] - (0.5/ul[0])*${pyfr.dot('ul[{i}]', i=(1, ndims + 1))}; <%pyfr:macro name='bc_ldg_grad_state' params='ul, nl, grad_ul, grad_ur'> fpdtype_t rcprho = 1.0/ul[0]; % if ndims == 2: fpdtype_t u = rcprho*ul[1], v = rcprho*ul[2]; fpdtype_t u_x = grad_ul[0][1] - u*grad_ul[0][0]; fpdtype_t u_y = grad_ul[1][1] - u*grad_ul[1][0]; fpdtype_t v_x = grad_ul[0][2] - v*grad_ul[0][0]; fpdtype_t v_y = grad_ul[1][2] - v*grad_ul[1][0]; // Compute temperature derivatives (c_v*rho*dT/d[x,y,z]) fpdtype_t Tl_x = grad_ul[0][3] - (rcprho*grad_ul[0][0]*ul[3] + u*u_x + v*v_x); fpdtype_t Tl_y = grad_ul[1][3] - (rcprho*grad_ul[1][0]*ul[3] + u*u_y + v*v_y); // Copy all fluid-side gradients across to wall-side gradients ${pyfr.expand('bc_common_grad_copy', 'ul', 'nl', 'grad_ul', 'grad_ur')}; // Correct copied across in-fluid temp gradients to in-wall gradients grad_ur[0][3] -= nl[0]*nl[0]*Tl_x + nl[0]*nl[1]*Tl_y; grad_ur[1][3] -= nl[1]*nl[0]*Tl_x + nl[1]*nl[1]*Tl_y; % elif ndims == 3: fpdtype_t u = rcprho*ul[1], v = rcprho*ul[2], w = rcprho*ul[3]; // Velocity derivatives (rho*grad[u,v,w]) fpdtype_t u_x = grad_ul[0][1] - u*grad_ul[0][0]; fpdtype_t u_y = grad_ul[1][1] - u*grad_ul[1][0]; fpdtype_t u_z = grad_ul[2][1] - u*grad_ul[2][0]; fpdtype_t v_x = grad_ul[0][2] - v*grad_ul[0][0]; fpdtype_t v_y = grad_ul[1][2] - v*grad_ul[1][0]; fpdtype_t v_z = grad_ul[2][2] - v*grad_ul[2][0]; fpdtype_t w_x = grad_ul[0][3] - w*grad_ul[0][0]; fpdtype_t w_y = grad_ul[1][3] - w*grad_ul[1][0]; fpdtype_t w_z = grad_ul[2][3] - w*grad_ul[2][0]; // Compute temperature derivatives (c_v*rho*dT/d[x,y,z]) fpdtype_t Tl_x = grad_ul[0][4] - (rcprho*grad_ul[0][0]*ul[4] + u*u_x + v*v_x + w*w_x); fpdtype_t Tl_y = grad_ul[1][4] - (rcprho*grad_ul[1][0]*ul[4] + u*u_y + v*v_y + w*w_y); fpdtype_t Tl_z = grad_ul[2][4] - (rcprho*grad_ul[2][0]*ul[4] + u*u_z + v*v_z + w*w_z); // Copy all fluid-side gradients across to wall-side gradients ${pyfr.expand('bc_common_grad_copy', 'ul', 'nl', 'grad_ul', 'grad_ur')}; // Correct copied across in-fluid temp gradients to in-wall gradients grad_ur[0][4] -= nl[0]*nl[0]*Tl_x + nl[0]*nl[1]*Tl_y + nl[0]*nl[2]*Tl_z; grad_ur[1][4] -= nl[1]*nl[0]*Tl_x + nl[1]*nl[1]*Tl_y + nl[1]*nl[2]*Tl_z; grad_ur[2][4] -= nl[2]*nl[0]*Tl_x + nl[2]*nl[1]*Tl_y + nl[2]*nl[2]*Tl_z; % endif pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/no-slp-isot-wall.mako000066400000000000000000000015171277740313300254060ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> ur[0] = ul[0]; % for i, v in enumerate(c['v']): ur[${i + 1}] = -ul[${i + 1}] + ${2*v}*ul[0]; % endfor ur[${nvars - 1}] = ${c['cpTw']/c['gamma']}*ur[0] + 0.5*(1.0/ur[0])*${pyfr.dot('ur[{i}]', i=(1, ndims + 1))}; <%pyfr:macro name='bc_ldg_state' params='ul, nl, ur, ploc, t'> ur[0] = ul[0]; % for i, v in enumerate(c['v']): ur[${i + 1}] = ${v}*ul[0]; % endfor ur[${nvars - 1}] = ${c['cpTw']/c['gamma']}*ur[0] + 0.5*(1.0/ur[0])*${pyfr.dot('ur[{i}]', i=(1, ndims + 1))}; <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_copy'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/slp-adia-wall.mako000066400000000000000000000020171277740313300247100ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%include file='pyfr.solvers.navstokes.kernels.flux'/> <%pyfr:macro name='bc_ldg_state' params='ul, nl, ur, ploc, t'> fpdtype_t nor = ${' + '.join('ul[{1}]*nl[{0}]'.format(i, i + 1) for i in range(ndims))}; ur[0] = ul[0]; % for i in range(ndims): ur[${i + 1}] = ul[${i + 1}] - 2*nor*nl[${i}]; % endfor ur[${nvars - 1}] = ul[${nvars - 1}]; <%pyfr:macro name='bc_common_flux_state' params='ul, gradul, artviscl, nl, magnl, ploc, t'> // Ghost state r fpdtype_t ur[${nvars}]; ${pyfr.expand('bc_ldg_state', 'ul', 'nl', 'ur', 'ploc', 't')}; // Perform the Riemann solve fpdtype_t ficomm[${nvars}]; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'ficomm')}; % for i in range(nvars): ul[${i}] = magnl*(ficomm[${i}]); % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/sub-in-frv.mako000066400000000000000000000012451277740313300242530ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> ur[0] = ${c['rho']}; % for i, v in enumerate('uvw'[:ndims]): ur[${i + 1}] = (${c['rho']}) * (${c[v]}); % endfor ur[${nvars - 1}] = ul[${nvars - 1}] - 0.5*(1.0/ul[0])*${pyfr.dot('ul[{i}]', i=(1, ndims + 1))} + 0.5*(1.0/ur[0])*${pyfr.dot('ur[{i}]', i=(1, ndims + 1))}; <%pyfr:alias name='bc_ldg_state' func='bc_rsolve_state'/> <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_zero'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/sub-in-ftpttang.mako000066400000000000000000000014641277740313300253100ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> fpdtype_t pl = ${c['gamma'] - 1.0}*(ul[${nvars - 1}] - (0.5/ul[0])*${pyfr.dot('ul[{i}]', i=(1, ndims + 1))}); fpdtype_t udotu = ${2.0*c['cpTt']}*(1.0 - ${c['pt']**(-c['Rdcp'])}*pow(pl, ${c['Rdcp']})); ur[0] = ${1.0/c['Rdcp']}*pl/(${c['cpTt']} - 0.5*udotu); % for i, v in enumerate(c['vc']): ur[${i + 1}] = ${v}*ur[0]*sqrt(udotu); % endfor ur[${nvars - 1}] = ${1.0/(c['gamma'] - 1.0)}*pl + 0.5*ur[0]*udotu; <%pyfr:alias name='bc_ldg_state' func='bc_rsolve_state'/> <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_copy'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/sub-out-fp.mako000066400000000000000000000010471277740313300242640ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> % for i in range(nvars - 1): ur[${i}] = ul[${i}]; % endfor ur[${nvars - 1}] = ${c['p']}/${c['gamma'] - 1} + 0.5*(1.0/ul[0])*${pyfr.dot('ul[{i}]', i=(1, ndims + 1))}; <%pyfr:alias name='bc_ldg_state' func='bc_rsolve_state'/> <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_zero'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/sup-in-fa.mako000066400000000000000000000005161277740313300240620ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%include file='pyfr.solvers.euler.kernels.bcs.sup-in-fa'/> <%pyfr:alias name='bc_ldg_state' func='bc_rsolve_state'/> <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_zero'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/bcs/sup-out-fn.mako000066400000000000000000000006371277740313300243040ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.navstokes.kernels.bcs.common'/> <%pyfr:macro name='bc_rsolve_state' params='ul, nl, ur, ploc, t'> % for i in range(nvars): ur[${i}] = ul[${i}]; % endfor <%pyfr:alias name='bc_ldg_state' func='bc_rsolve_state'/> <%pyfr:alias name='bc_ldg_grad_state' func='bc_common_grad_copy'/> pyfr-1.5.0/pyfr/solvers/navstokes/kernels/flux.mako000066400000000000000000000102051277740313300224660ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> % if ndims == 2: <%pyfr:macro name='viscous_flux_add' params='uin, grad_uin, fout'> fpdtype_t rho = uin[0], rhou = uin[1], rhov = uin[2], E = uin[3]; fpdtype_t rcprho = 1.0/rho; fpdtype_t u = rcprho*rhou, v = rcprho*rhov; fpdtype_t rho_x = grad_uin[0][0]; fpdtype_t rho_y = grad_uin[1][0]; // Velocity derivatives (rho*grad[u,v]) fpdtype_t u_x = grad_uin[0][1] - u*rho_x; fpdtype_t u_y = grad_uin[1][1] - u*rho_y; fpdtype_t v_x = grad_uin[0][2] - v*rho_x; fpdtype_t v_y = grad_uin[1][2] - v*rho_y; fpdtype_t E_x = grad_uin[0][3]; fpdtype_t E_y = grad_uin[1][3]; % if visc_corr == 'sutherland': // Compute the temperature and viscosity fpdtype_t cpT = ${c['gamma']}*(rcprho*E - 0.5*(u*u + v*v)); fpdtype_t Trat = ${1/c['cpTref']}*cpT; fpdtype_t mu_c = ${c['mu']*(c['cpTref'] + c['cpTs'])}*Trat*sqrt(Trat) / (cpT + ${c['cpTs']}); % else: fpdtype_t mu_c = ${c['mu']}; % endif // Compute temperature derivatives (c_v*dT/d[x,y]) fpdtype_t T_x = rcprho*(E_x - (rcprho*rho_x*E + u*u_x + v*v_x)); fpdtype_t T_y = rcprho*(E_y - (rcprho*rho_y*E + u*u_y + v*v_y)); // Negated stress tensor elements fpdtype_t t_xx = -2*mu_c*rcprho*(u_x - ${1.0/3.0}*(u_x + v_y)); fpdtype_t t_yy = -2*mu_c*rcprho*(v_y - ${1.0/3.0}*(u_x + v_y)); fpdtype_t t_xy = -mu_c*rcprho*(v_x + u_y); fout[0][1] += t_xx; fout[1][1] += t_xy; fout[0][2] += t_xy; fout[1][2] += t_yy; fout[0][3] += u*t_xx + v*t_xy + -mu_c*${c['gamma']/c['Pr']}*T_x; fout[1][3] += u*t_xy + v*t_yy + -mu_c*${c['gamma']/c['Pr']}*T_y; % elif ndims == 3: <%pyfr:macro name='viscous_flux_add' params='uin, grad_uin, fout'> fpdtype_t rho = uin[0]; fpdtype_t rhou = uin[1], rhov = uin[2], rhow = uin[3]; fpdtype_t E = uin[4]; fpdtype_t rcprho = 1.0/rho; fpdtype_t u = rcprho*rhou, v = rcprho*rhov, w = rcprho*rhow; fpdtype_t rho_x = grad_uin[0][0]; fpdtype_t rho_y = grad_uin[1][0]; fpdtype_t rho_z = grad_uin[2][0]; // Velocity derivatives (rho*grad[u,v,w]) fpdtype_t u_x = grad_uin[0][1] - u*rho_x; fpdtype_t u_y = grad_uin[1][1] - u*rho_y; fpdtype_t u_z = grad_uin[2][1] - u*rho_z; fpdtype_t v_x = grad_uin[0][2] - v*rho_x; fpdtype_t v_y = grad_uin[1][2] - v*rho_y; fpdtype_t v_z = grad_uin[2][2] - v*rho_z; fpdtype_t w_x = grad_uin[0][3] - w*rho_x; fpdtype_t w_y = grad_uin[1][3] - w*rho_y; fpdtype_t w_z = grad_uin[2][3] - w*rho_z; fpdtype_t E_x = grad_uin[0][4]; fpdtype_t E_y = grad_uin[1][4]; fpdtype_t E_z = grad_uin[2][4]; % if visc_corr == 'sutherland': // Compute the temperature and viscosity fpdtype_t cpT = ${c['gamma']}*(rcprho*E - 0.5*(u*u + v*v + w*w)); fpdtype_t Trat = ${1/c['cpTref']}*cpT; fpdtype_t mu_c = ${c['mu']*(c['cpTref'] + c['cpTs'])}*Trat*sqrt(Trat) / (cpT + ${c['cpTs']}); % else: fpdtype_t mu_c = ${c['mu']}; % endif // Compute temperature derivatives (c_v*dT/d[x,y,z]) fpdtype_t T_x = rcprho*(E_x - (rcprho*rho_x*E + u*u_x + v*v_x + w*w_x)); fpdtype_t T_y = rcprho*(E_y - (rcprho*rho_y*E + u*u_y + v*v_y + w*w_y)); fpdtype_t T_z = rcprho*(E_z - (rcprho*rho_z*E + u*u_z + v*v_z + w*w_z)); // Negated stress tensor elements fpdtype_t t_xx = -2*mu_c*rcprho*(u_x - ${1.0/3.0}*(u_x + v_y + w_z)); fpdtype_t t_yy = -2*mu_c*rcprho*(v_y - ${1.0/3.0}*(u_x + v_y + w_z)); fpdtype_t t_zz = -2*mu_c*rcprho*(w_z - ${1.0/3.0}*(u_x + v_y + w_z)); fpdtype_t t_xy = -mu_c*rcprho*(v_x + u_y); fpdtype_t t_xz = -mu_c*rcprho*(u_z + w_x); fpdtype_t t_yz = -mu_c*rcprho*(w_y + v_z); fout[0][1] += t_xx; fout[1][1] += t_xy; fout[2][1] += t_xz; fout[0][2] += t_xy; fout[1][2] += t_yy; fout[2][2] += t_yz; fout[0][3] += t_xz; fout[1][3] += t_yz; fout[2][3] += t_zz; fout[0][4] += u*t_xx + v*t_xy + w*t_xz + -mu_c*${c['gamma']/c['Pr']}*T_x; fout[1][4] += u*t_xy + v*t_yy + w*t_yz + -mu_c*${c['gamma']/c['Pr']}*T_y; fout[2][4] += u*t_xz + v*t_yz + w*t_zz + -mu_c*${c['gamma']/c['Pr']}*T_z; % endif pyfr-1.5.0/pyfr/solvers/navstokes/kernels/intcflux.mako000066400000000000000000000043121277740313300233460ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.baseadvecdiff.kernels.artvisc'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%include file='pyfr.solvers.navstokes.kernels.flux'/> <% beta, tau = c['ldg-beta'], c['ldg-tau'] %> <%pyfr:kernel name='intcflux' ndim='1' ul='inout view fpdtype_t[${str(nvars)}]' ur='inout view fpdtype_t[${str(nvars)}]' gradul='in view fpdtype_t[${str(ndims)}][${str(nvars)}]' gradur='in view fpdtype_t[${str(ndims)}][${str(nvars)}]' artviscl='in view fpdtype_t' artviscr='in view fpdtype_t' nl='in fpdtype_t[${str(ndims)}]' magnl='in fpdtype_t'> // Perform the Riemann solve fpdtype_t ficomm[${nvars}], fvcomm; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'ficomm')}; % if beta != -0.5: fpdtype_t fvl[${ndims}][${nvars}] = {{0}}; ${pyfr.expand('viscous_flux_add', 'ul', 'gradul', 'fvl')}; ${pyfr.expand('artificial_viscosity_add', 'gradul', 'fvl', 'artviscl')}; % endif % if beta != 0.5: fpdtype_t fvr[${ndims}][${nvars}] = {{0}}; ${pyfr.expand('viscous_flux_add', 'ur', 'gradur', 'fvr')}; ${pyfr.expand('artificial_viscosity_add', 'gradur', 'fvr', 'artviscr')}; % endif % for i in range(nvars): % if beta == -0.5: fvcomm = ${' + '.join('nl[{j}]*fvr[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; % elif beta == 0.5: fvcomm = ${' + '.join('nl[{j}]*fvl[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; % else: fvcomm = ${0.5 + beta}*(${' + '.join('nl[{j}]*fvl[{j}][{i}]' .format(i=i, j=j) for j in range(ndims))}) + ${0.5 - beta}*(${' + '.join('nl[{j}]*fvr[{j}][{i}]' .format(i=i, j=j) for j in range(ndims))}); % endif % if tau != 0.0: fvcomm += ${tau}*(ul[${i}] - ur[${i}]); % endif ul[${i}] = magnl*(ficomm[${i}] + fvcomm); ur[${i}] = -magnl*(ficomm[${i}] + fvcomm); % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/intconu.mako000066400000000000000000000012571277740313300231760ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:kernel name='intconu' ndim='1' ulin='in view fpdtype_t[${str(nvars)}]' urin='in view fpdtype_t[${str(nvars)}]' ulout='out view fpdtype_t[${str(nvars)}]' urout='out view fpdtype_t[${str(nvars)}]'> % for i in range(nvars): % if c['ldg-beta'] == -0.5: urout[${i}] = ulin[${i}]; % elif c['ldg-beta'] == 0.5: ulout[${i}] = urin[${i}]; % else: ulout[${i}] = urout[${i}] = urin[${i}]*${0.5 + c['ldg-beta']} + ulin[${i}]*${0.5 - c['ldg-beta']}; % endif % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/mpicflux.mako000066400000000000000000000042271277740313300233460ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.baseadvecdiff.kernels.artvisc'/> <%include file='pyfr.solvers.euler.kernels.rsolvers.${rsolver}'/> <%include file='pyfr.solvers.navstokes.kernels.flux'/> <% beta, tau = c['ldg-beta'], c['ldg-tau'] %> <%pyfr:kernel name='mpicflux' ndim='1' ul='inout view fpdtype_t[${str(nvars)}]' ur='inout mpi fpdtype_t[${str(nvars)}]' gradul='in view fpdtype_t[${str(ndims)}][${str(nvars)}]' gradur='in mpi fpdtype_t[${str(ndims)}][${str(nvars)}]' artviscl='in view fpdtype_t' artviscr='in mpi fpdtype_t' nl='in fpdtype_t[${str(ndims)}]' magnl='in fpdtype_t'> // Perform the Riemann solve fpdtype_t ficomm[${nvars}], fvcomm; ${pyfr.expand('rsolve', 'ul', 'ur', 'nl', 'ficomm')}; % if beta != -0.5: fpdtype_t fvl[${ndims}][${nvars}] = {{0}}; ${pyfr.expand('viscous_flux_add', 'ul', 'gradul', 'fvl')}; ${pyfr.expand('artificial_viscosity_add', 'gradul', 'fvl', 'artviscl')}; % endif % if beta != 0.5: fpdtype_t fvr[${ndims}][${nvars}] = {{0}}; ${pyfr.expand('viscous_flux_add', 'ur', 'gradur', 'fvr')}; ${pyfr.expand('artificial_viscosity_add', 'gradur', 'fvr', 'artviscr')}; % endif % for i in range(nvars): % if beta == -0.5: fvcomm = ${' + '.join('nl[{j}]*fvr[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; % elif beta == 0.5: fvcomm = ${' + '.join('nl[{j}]*fvl[{j}][{i}]'.format(i=i, j=j) for j in range(ndims))}; % else: fvcomm = ${0.5 + beta}*(${' + '.join('nl[{j}]*fvl[{j}][{i}]' .format(i=i, j=j) for j in range(ndims))}) + ${0.5 - beta}*(${' + '.join('nl[{j}]*fvr[{j}][{i}]' .format(i=i, j=j) for j in range(ndims))}); % endif % if tau != 0.0: fvcomm += ${tau}*(ul[${i}] - ur[${i}]); % endif ul[${i}] = magnl*(ficomm[${i}] + fvcomm); % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/mpiconu.mako000066400000000000000000000011331277740313300231620ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%pyfr:kernel name='mpiconu' ndim='1' ulin='in view fpdtype_t[${str(nvars)}]' urin='in mpi fpdtype_t[${str(nvars)}]' ulout='out view fpdtype_t[${str(nvars)}]'> % for i in range(nvars): % if c['ldg-beta'] == -0.5: ulout[${i}] = ulin[${i}]; % elif c['ldg-beta'] == 0.5: ulout[${i}] = urin[${i}]; % else: ulout[${i}] = urin[${i}]*${0.5 + c['ldg-beta']} + ulin[${i}]*${0.5 - c['ldg-beta']}; % endif % endfor pyfr-1.5.0/pyfr/solvers/navstokes/kernels/tflux.mako000066400000000000000000000021311277740313300226510ustar00rootroot00000000000000# -*- coding: utf-8 -*- <%inherit file='base'/> <%namespace module='pyfr.backends.base.makoutil' name='pyfr'/> <%include file='pyfr.solvers.baseadvecdiff.kernels.artvisc'/> <%include file='pyfr.solvers.euler.kernels.flux'/> <%include file='pyfr.solvers.navstokes.kernels.flux'/> <%pyfr:kernel name='tflux' ndim='2' u='in fpdtype_t[${str(nvars)}]' smats='in fpdtype_t[${str(ndims)}][${str(ndims)}]' artvisc='in broadcast fpdtype_t' f='inout fpdtype_t[${str(ndims)}][${str(nvars)}]'> // Compute the flux (F = Fi + Fv) fpdtype_t ftemp[${ndims}][${nvars}]; fpdtype_t p, v[${ndims}]; ${pyfr.expand('inviscid_flux', 'u', 'ftemp', 'p', 'v')}; ${pyfr.expand('viscous_flux_add', 'u', 'f', 'ftemp')}; ${pyfr.expand('artificial_viscosity_add', 'f', 'ftemp', 'artvisc')}; // Transform the fluxes % for i, j in pyfr.ndrange(ndims, nvars): f[${i}][${j}] = ${' + '.join('smats[{0}][{1}]*ftemp[{1}][{2}]' .format(i, k, j) for k in range(ndims))}; % endfor pyfr-1.5.0/pyfr/solvers/navstokes/system.py000066400000000000000000000011421277740313300210720ustar00rootroot00000000000000# -*- coding: utf-8 -*- from pyfr.solvers.baseadvecdiff import BaseAdvectionDiffusionSystem from pyfr.solvers.navstokes.elements import NavierStokesElements from pyfr.solvers.navstokes.inters import (NavierStokesBaseBCInters, NavierStokesIntInters, NavierStokesMPIInters) class NavierStokesSystem(BaseAdvectionDiffusionSystem): name = 'navier-stokes' elementscls = NavierStokesElements intinterscls = NavierStokesIntInters mpiinterscls = NavierStokesMPIInters bbcinterscls = NavierStokesBaseBCInters pyfr-1.5.0/pyfr/template.py000066400000000000000000000020551277740313300156530ustar00rootroot00000000000000# -*- coding: utf-8 -*- import pkgutil from mako.lookup import TemplateLookup from mako.template import Template class DottedTemplateLookup(TemplateLookup): def __init__(self, pkg, dfltargs): self.dfltpkg = pkg self.dfltargs = dfltargs def adjust_uri(self, uri, relto): return uri def get_template(self, name): div = name.rfind('.') # Break apart name into a package and base file name if div >= 0: pkg = name[:div] basename = name[div + 1:] else: pkg = self.dfltpkg basename = name # Attempt to load the template src = pkgutil.get_data(pkg, basename + '.mako') if not src: raise RuntimeError('Template "{}" not found'.format(name)) # Subclass Template to support implicit arguments class DefaultTemplate(Template): def render(iself, *args, **kwargs): return super().render(*args, **dict(self.dfltargs, **kwargs)) return DefaultTemplate(src, lookup=self) pyfr-1.5.0/pyfr/tests/000077500000000000000000000000001277740313300146265ustar00rootroot00000000000000pyfr-1.5.0/pyfr/tests/__init__.py000066400000000000000000000000301277740313300167300ustar00rootroot00000000000000# -*- coding: utf-8 -*- pyfr-1.5.0/pyfr/tests/hex-gleg-ord3.npz000066400000000000000000000104731277740313300177310ustar00rootroot00000000000000PKIpZDBPm1.npy흱\UFHZ&ʢ+1:S b®h!P"$4[UNfڀU@Xn!!Kf=$oq{e_w=߻އ=\o`csKg+[o?ǟno>+}+_ŕ'{_t~]ya4;;wz|͍=Mm]4]tumF/o&xm5̿?O=u|Ɖ'~/X.sا>tuQ~ɵ?s~ä `Ab@?&zlѲ~B >`l{\t|6]G,XYKχM*ք :z)uafYgҁoi T :@b@?&zlz@ "bB_M\Xu;/tsduupOЁ#u/2:m@b:6 򅺍5]6/t90G{|2 tЁGBcC= _, x/2 yyQs~ި9BoԜ7}punPSr.Fxy< :tX& PA{;ꀼnC=@=մ:Ic?ߥ6VsP<v>eCoF/op@@Iy&%hz@ u|!|.@l-t ::#tP~/BB9?P@٠2?P'Be//6 sd̑|28/tЁBB=@=tX& P u3w \}|o✀7|1/꼕7<7꼘7y?O@ꆜPPD|;FxCnI:tB1Z (rځ?PN__("h:D@ __:sd!_ ȝzz " : :D|2__z,B'r"gn&r: f&tԛioDǾd#}XU7FkDbuգVR@Ё8XmuգԅbuS#G|0?獪sިsިsD?7b,@"@L/Ԝ#>GuPz(,u@"ANځ/򅺎RsPjN)sd̑A>*F`/T/: _|'?PKIpZDӯPm0.npyܱJ[qtk_n@"h H-H(%[K&>`:HE .'=9S~?K07'뛽7zg88_VSջhg练مN5?T?O>}Jr~۝wϾNG{io'Wrz9X&A9a0&`<"e^!@zA#G@9z^mpB_4䠔9 h/9xE9 h9;rl @{F +6q Oo^~Ց}#^>7>㠲/w߮x-2֥[k?OEe <ԿA(H=QW~L鿪C_e%L\'yr$:PߦP`h6uEgl ߶yCѿw\)?TA2U~PŏPtQ@jR}EE=sTQ9xE=UJ~UUJ2w {y[(՗:P?hr]A/.R}uScGs~jO3}*>ꀲ Js -u:ȺN]tQOmPJ??ωPmxPAe_܆*(GCK޺]AEwL}2T~Pŏ"z_m_*( UQJʠ袶h_zFPh}ǻPA{/2R%BH=o">jJGS//_aC#: At%jj]_PKIpZD7P@m2.npyJTQq[ֶ$^p1TC刋IO3ԪmoF7q䬮t|o=xref4s8ܙ< w˭G&g?~59۳s7am~xo]z[Ͽpj`rN*w`rtLt^^<`bWqT   Gy<Ħ:f/d/D}[Q3^+她ys'@@lBtɼ[w X-t`QzMbK:@l:]r 6@l:!6&6? 4/iln@h@9r}6ݫov9K9K9K@} ~ >\y7.z'3Tz'Gf/@-:ZQ~t 6{!3;Ħ %b3oĦ q9hyiҹjs>Jb&͟>/c~ 'ݗoӽ&ݿo 4} ~ } ~ } ~ 1?/[.mikl', smat*rcpdjac, gradsoln, dtype=self.dtype, casting='same_kind') gradsoln = gradsoln.reshape(nvars*self.ndims, nupts, -1) return np.vstack([soln, gradsoln]) def _post_proc_fields_grad(self, vsoln): # Prepare the fields fields = [] for vname, vfields in self._vtk_vars.items(): ix = [self._soln_fields.index(vf) for vf in vfields] fields.append(vsoln[ix]) return fields def _get_npts_ncells_nnodes(self, mk): m_inf = self.mesh_inf[mk] # Get the shape and sub division classes shapecls = subclass_where(BaseShape, name=m_inf[0]) subdvcls = subclass_where(BaseShapeSubDiv, name=m_inf[0]) # Number of vis points npts = shapecls.nspts_from_order(self.divisor + 1)*m_inf[1][1] # Number of sub cells and nodes ncells = len(subdvcls.subcells(self.divisor))*m_inf[1][1] nnodes = len(subdvcls.subnodes(self.divisor))*m_inf[1][1] return npts, ncells, nnodes def _get_array_attrs(self, mk=None): dtype = 'Float32' if self.dtype == np.float32 else 'Float64' dsize = np.dtype(self.dtype).itemsize vvars = self._vtk_vars names = ['', 'connectivity', 'offsets', 'types'] types = [dtype, 'Int32', 'Int32', 'UInt8'] comps = ['3', '', '', ''] for fname, varnames in vvars.items(): names.append(fname.title()) types.append(dtype) comps.append(str(len(varnames))) # If a mesh has been given the compute the sizes if mk: npts, ncells, nnodes = self._get_npts_ncells_nnodes(mk) nb = npts*dsize sizes = [3*nb, 4*nnodes, 4*ncells, ncells] sizes.extend(len(varnames)*nb for varnames in vvars.values()) return names, types, comps, sizes else: return names, types, comps @memoize def _get_shape(self, name, nspts): shapecls = subclass_where(BaseShape, name=name) return shapecls(nspts, self.cfg) @memoize def _get_std_ele(self, name, nspts): return self._get_shape(name, nspts).std_ele(self.divisor) @memoize def _get_mesh_op(self, name, nspts, svpts): shape = self._get_shape(name, nspts) return shape.sbasis.nodal_basis_at(svpts).astype(self.dtype) @memoize def _get_soln_op(self, name, nspts, svpts): shape = self._get_shape(name, nspts) return shape.ubasis.nodal_basis_at(svpts).astype(self.dtype) def write_out(self): name, extn = os.path.splitext(self.outf) parallel = extn == '.pvtu' parts = defaultdict(list) for mk, sk in zip(self.mesh_inf, self.soln_inf): prt = mk.split('_')[-1] pfn = '{0}_{1}.vtu'.format(name, prt) if parallel else self.outf parts[pfn].append((mk, sk)) write_s_to_fh = lambda s: fh.write(s.encode('utf-8')) for pfn, misil in parts.items(): with open(pfn, 'wb') as fh: write_s_to_fh('\n\n\n') # Running byte-offset for appended data off = 0 # Header for mk, sk in misil: off = self._write_serial_header(fh, mk, off) write_s_to_fh('\n' '\n_') # Data for mk, sk in misil: self._write_data(fh, mk, sk) write_s_to_fh('\n\n') if parallel: with open(self.outf, 'wb') as fh: write_s_to_fh('\n\n\n') # Header self._write_parallel_header(fh) # Constitutent pieces for pfn in parts: write_s_to_fh('\n' .format(os.path.basename(pfn))) write_s_to_fh('\n\n') def _write_darray(self, array, vtuf, dtype): array = array.astype(dtype) np.uint32(array.nbytes).tofile(vtuf) array.tofile(vtuf) def _write_serial_header(self, vtuf, mk, off): names, types, comps, sizes = self._get_array_attrs(mk) npts, ncells = self._get_npts_ncells_nnodes(mk)[:2] write_s = lambda s: vtuf.write(s.encode('utf-8')) write_s('\n' .format(npts, ncells)) write_s('\n') # Write vtk DaraArray headers for i, (n, t, c, s) in enumerate(zip(names, types, comps, sizes)): write_s('\n' .format(n, t, c, off)) off += 4 + s # Write ends/starts of vtk file objects if i == 0: write_s('\n\n') elif i == 3: write_s('\n\n') # Write end of vtk element data write_s('\n\n') # Return the current offset return off def _write_parallel_header(self, vtuf): names, types, comps = self._get_array_attrs() write_s = lambda s: vtuf.write(s.encode('utf-8')) write_s('\n') # Write vtk DaraArray headers for i, (n, t, s) in enumerate(zip(names, types, comps)): write_s('\n'.format(n, t, s)) if i == 0: write_s('\n\n') elif i == 3: write_s('\n\n') write_s('\n') def _write_data(self, vtuf, mk, sk): name = self.mesh_inf[mk][0] mesh = self.mesh[mk].astype(self.dtype) soln = self.soln[sk].swapaxes(0, 1).astype(self.dtype) # Dimensions nspts, neles = mesh.shape[:2] # Sub divison points inside of a standard element svpts = self._get_std_ele(name, nspts) nsvpts = len(svpts) # Generate the operator matrices mesh_vtu_op = self._get_mesh_op(name, nspts, svpts) soln_vtu_op = self._get_soln_op(name, nspts, svpts) # Calculate node locations of VTU elements vpts = np.dot(mesh_vtu_op, mesh.reshape(nspts, -1)) vpts = vpts.reshape(nsvpts, -1, self.ndims) # Pre-process the solution soln = self._pre_proc_fields(name, mesh, soln).swapaxes(0, 1) # Interpolate the solution to the vis points vsoln = np.dot(soln_vtu_op, soln.reshape(len(soln), -1)) vsoln = vsoln.reshape(nsvpts, -1, neles).swapaxes(0, 1) # Append dummy z dimension for points in 2D if self.ndims == 2: vpts = np.pad(vpts, [(0, 0), (0, 0), (0, 1)], 'constant') # Write element node locations to file self._write_darray(vpts.swapaxes(0, 1), vtuf, self.dtype) # Perform the sub division subdvcls = subclass_where(BaseShapeSubDiv, name=name) nodes = subdvcls.subnodes(self.divisor) # Prepare VTU cell arrays vtu_con = np.tile(nodes, (neles, 1)) vtu_con += (np.arange(neles)*nsvpts)[:, None] # Generate offset into the connectivity array vtu_off = np.tile(subdvcls.subcelloffs(self.divisor), (neles, 1)) vtu_off += (np.arange(neles)*len(nodes))[:, None] # Tile VTU cell type numbers vtu_typ = np.tile(subdvcls.subcelltypes(self.divisor), neles) # Write VTU node connectivity, connectivity offsets and cell types self._write_darray(vtu_con, vtuf, np.int32) self._write_darray(vtu_off, vtuf, np.int32) self._write_darray(vtu_typ, vtuf, np.uint8) # Process and write out the various fields for arr in self._post_proc_fields(vsoln): self._write_darray(arr.T, vtuf, self.dtype) class BaseShapeSubDiv(object): vtk_types = dict(tri=5, quad=9, tet=10, pyr=14, pri=13, hex=12) vtk_nodes = dict(tri=3, quad=4, tet=4, pyr=5, pri=6, hex=8) @classmethod def subcells(cls, n): pass @classmethod def subcelloffs(cls, n): return np.cumsum([cls.vtk_nodes[t] for t in cls.subcells(n)]) @classmethod def subcelltypes(cls, n): return np.array([cls.vtk_types[t] for t in cls.subcells(n)]) @classmethod def subnodes(cls, n): pass class TensorProdShapeSubDiv(BaseShapeSubDiv): @classmethod def subnodes(cls, n): conbase = np.array([0, 1, n + 2, n + 1]) # Extend quad mapping to hex mapping if cls.ndim == 3: conbase = np.hstack((conbase, conbase + (1 + n)**2)) # Calculate offset of each subdivided element's nodes nodeoff = np.zeros((n,)*cls.ndim, dtype=np.int) for dim, off in enumerate(np.ix_(*(range(n),)*cls.ndim)): nodeoff += off*(n + 1)**dim # Tile standard element node ordering mapping, then apply offsets internal_con = np.tile(conbase, (n**cls.ndim, 1)) internal_con += nodeoff.T.flatten()[:, None] return np.hstack(internal_con) class QuadShapeSubDiv(TensorProdShapeSubDiv): name = 'quad' ndim = 2 @classmethod def subcells(cls, n): return ['quad']*(n**2) class HexShapeSubDiv(TensorProdShapeSubDiv): name = 'hex' ndim = 3 @classmethod def subcells(cls, n): return ['hex']*(n**3) class TriShapeSubDiv(BaseShapeSubDiv): name = 'tri' @classmethod def subcells(cls, n): return ['tri']*(n**2) @classmethod def subnodes(cls, n): conlst = [] for row in range(n, 0, -1): # Lower and upper indices l = (n - row)*(n + row + 3) // 2 u = l + row + 1 # Base offsets off = [l, l + 1, u, u + 1, l + 1, u] # Generate current row subin = np.ravel(np.arange(row - 1)[..., None] + off) subex = [ix + row - 1 for ix in off[:3]] # Extent list conlst.extend([subin, subex]) return np.hstack(conlst) class TetShapeSubDiv(BaseShapeSubDiv): name = 'tet' @classmethod def subcells(cls, nsubdiv): return ['tet']*(nsubdiv**3) @classmethod def subnodes(cls, nsubdiv): conlst = [] jump = 0 for n in range(nsubdiv, 0, -1): for row in range(n, 0, -1): # Lower and upper indices l = (n - row)*(n + row + 3) // 2 + jump u = l + row + 1 # Lower and upper for one row up ln = (n + 1)*(n + 2) // 2 + l - n + row un = ln + row rowm1 = np.arange(row - 1)[..., None] # Base offsets offs = [(l, l + 1, u, ln), (l + 1, u, ln, ln + 1), (u, u + 1, ln + 1, un), (u, ln, ln + 1, un), (l + 1, u, u+1, ln + 1), (u + 1, ln + 1, un, un + 1)] # Current row conlst.extend(rowm1 + off for off in offs[:-1]) conlst.append(rowm1[:-1] + offs[-1]) conlst.append([ix + row - 1 for ix in offs[0]]) jump += (n + 1)*(n + 2) // 2 return np.hstack(np.ravel(c) for c in conlst) class PriShapeSubDiv(BaseShapeSubDiv): name = 'pri' @classmethod def subcells(cls, n): return ['pri']*(n**3) @classmethod def subnodes(cls, n): # Triangle connectivity tcon = TriShapeSubDiv.subnodes(n).reshape(-1, 3) # Layer these rows of triangles to define prisms loff = (n + 1)*(n + 2) // 2 lcon = [[tcon + i*loff, tcon + (i + 1)*loff] for i in range(n)] return np.hstack(np.hstack(l).flat for l in lcon) class PyrShapeSubDiv(BaseShapeSubDiv): name = 'pyr' @classmethod def subcells(cls, n): cells = [] for i in range(n, 0, -1): cells += ['pyr']*(i**2 + (i - 1)**2) cells += ['tet']*(2*i*(i - 1)) return cells @classmethod def subnodes(cls, nsubdiv): lcon = [] # Quad connectivity qcon = [QuadShapeSubDiv.subnodes(n + 1).reshape(-1, 4) for n in range(nsubdiv)] # Simple functions def _row_in_quad(n, a=0, b=0): return np.array([(n*i + j, n*i + j + 1) for i in range(a, n + b) for j in range(n - 1)]) def _col_in_quad(n, a=0, b=0): return np.array([(n*i + j, n*(i + 1) + j) for i in range(n - 1) for j in range(a, n + b)]) u = 0 for n in range(nsubdiv, 0, -1): l = u u += (n + 1)**2 lower_quad = qcon[n - 1] + l upper_pts = np.arange(n**2) + u # First set of pyramids lcon.append([lower_quad, upper_pts]) if n > 1: upper_quad = qcon[n - 2] + u lower_pts = np.hstack(range(k*(n + 1)+1, (k + 1)*n + k) for k in range(1, n)) + l # Second set of pyramids lcon.append([upper_quad[:, ::-1], lower_pts]) lower_row = _row_in_quad(n + 1, 1, -1) + l lower_col = _col_in_quad(n + 1, 1, -1) + l upper_row = _row_in_quad(n) + u upper_col = _col_in_quad(n) + u # Tetrahedra lcon.append([lower_col, upper_row]) lcon.append([lower_row[:, ::-1], upper_col]) return np.hstack(np.column_stack(l).flat for l in lcon) pyfr-1.5.0/setup.py000077500000000000000000000076211277740313300142270ustar00rootroot00000000000000#!/usr/bin/env python # -*- coding: utf-8 -*- import re from setuptools import setup import sys # Python version if sys.version_info[:2] < (3, 3): print('PyFR requires Python 3.3 or newer') sys.exit(-1) # PyFR version vfile = open('pyfr/_version.py').read() vsrch = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", vfile, re.M) if vsrch: version = vsrch.group(1) else: print('Unable to find a version string in pyfr/_version.py') # Modules modules = [ 'pyfr.backends', 'pyfr.backends.base', 'pyfr.backends.cuda', 'pyfr.backends.cuda.kernels', 'pyfr.backends.mic', 'pyfr.backends.mic.kernels', 'pyfr.backends.opencl', 'pyfr.backends.opencl.kernels', 'pyfr.backends.openmp', 'pyfr.backends.openmp.kernels', 'pyfr.integrators', 'pyfr.integrators.dual', 'pyfr.integrators.std', 'pyfr.plugins', 'pyfr.quadrules', 'pyfr.readers', 'pyfr.partitioners', 'pyfr.solvers', 'pyfr.solvers.base', 'pyfr.solvers.baseadvec', 'pyfr.solvers.baseadvec.kernels', 'pyfr.solvers.baseadvecdiff', 'pyfr.solvers.baseadvecdiff.kernels', 'pyfr.solvers.euler', 'pyfr.solvers.euler.kernels', 'pyfr.solvers.euler.kernels.bcs', 'pyfr.solvers.euler.kernels.rsolvers', 'pyfr.solvers.navstokes', 'pyfr.solvers.navstokes.kernels', 'pyfr.solvers.navstokes.kernels.bcs', 'pyfr.writers' ] # Tests tests = [ 'pyfr.tests' ] # Data package_data = { 'pyfr.backends.cuda.kernels': ['*.mako'], 'pyfr.backends.mic.kernels': ['*.mako'], 'pyfr.backends.opencl.kernels': ['*.mako'], 'pyfr.backends.openmp.kernels': ['*.mako'], 'pyfr.quadrules': [ 'hex/*.txt', 'line/*.txt', 'pri/*.txt', 'pyr/*.txt', 'quad/*.txt', 'tet/*.txt', 'tri/*.txt' ], 'pyfr.solvers.baseadvec.kernels': ['*.mako'], 'pyfr.solvers.baseadvecdiff.kernels': ['*.mako'], 'pyfr.solvers.euler.kernels': ['*.mako'], 'pyfr.solvers.euler.kernels.bcs': ['*.mako'], 'pyfr.solvers.euler.kernels.rsolvers': ['*.mako'], 'pyfr.solvers.navstokes.kernels': ['*.mako'], 'pyfr.solvers.navstokes.kernels.bcs': ['*.mako'], 'pyfr.tests': ['*.npz'] } # Additional data data_files = [ ('', ['pyfr/__main__.py']) ] # Hard dependencies install_requires = [ 'gimmik >= 2.0', 'h5py >= 2.6', 'mako >= 1.0.0', 'mpi4py >= 2.0', 'numpy >= 1.8', 'pytools >= 2016.2.1' ] # Soft dependencies extras_require = { 'cuda': ['pycuda >= 2015.1'], 'mic': ['pymic >= 0.7'], 'opencl': ['pyopencl >= 2015.2.4'] } # Scripts console_scripts = [ 'pyfr = pyfr.__main__:main' ] # Info classifiers = [ 'License :: OSI Approved :: BSD License', 'Programming Language :: Python', 'Programming Language :: Python :: 3.3', 'Topic :: Scientific/Engineering' ] long_description = '''PyFR is an open-source Python based framework for solving advection-diffusion type problems on streaming architectures using the Flux Reconstruction approach of Huynh. The framework is designed to solve a range of governing systems on mixed unstructured grids containing various element types. It is also designed to target a range of hardware platforms via use of an in-built domain specific language derived from the Mako templating engine. PyFR is being developed in the Vincent Lab, Department of Aeronautics, Imperial College London, UK.''' setup(name='pyfr', version=version, description='Flux Reconstruction in Python', long_description=long_description, author='Imperial College London', author_email='info@pyfr.org', url='http://www.pyfr.org/', license='BSD', keywords='Math', packages=['pyfr'] + modules + tests, package_data=package_data, data_files=data_files, entry_points={'console_scripts': console_scripts}, install_requires=install_requires, extras_require=extras_require, classifiers=classifiers )