Saravanan666/pypi-org huggingface dataset:
Package: pymathalgos
PyMathAlgoS1. УстановкаНастоятельно рекомендуется перед установкой данного пакета установить модуль numba (отдельно), так как его декортаторы очень часто используются для того, чтобы ускорить процесс вычисления и нахождения результата$pipinstallnumbaА потом уже установить этот модуль$pipinstallpymathalgos2. ФункционалПростая арифметикаФункция вычисления факториала:importpymathalgosprint(pymathalgos.factorial(2))# 1print(pymathalgos.factorial(-1))# ArithmeticError: argument value must be bigger then zero!Функции для вычисления большего, меньшего числа из аргументов, а также суммы аргументов:importpymathalgosprint(pymathalgos._min(2,8,1))# 1print(pymathalgos._max(2,8,9))# 9print(pymathalgos._sum(1,2,3))# 6Функции округленияimportpymathalgosprint(pymathalgos.ceil(10.4))# округление до ближайшего большего числаprint(pymathalgos.floor(18.7))# округление внизМожно получить знак числаimportpymathalgosprint(pymathalgos.get_sing(90))# "+"print(pymathalgos.get_sing(-90))# "-"print(pymathalgos.get_sing(0))# NoneМожно найти сумму цифр в какой-либо системе счиленияimportpymathalgosprint(pymathalgos.digits_sum(123))# здесь сумма вычисляется в десятичной системе счисленияprint(pymathalgos.digits_sum(100,2))# здесь вычисляется в двоичной системе счисленияМожно найти значение логарифма:importpymathalgosprint(pymathalgos.log(10))# здесь вычисляется десятичный логарифмprint(pymathalgos.loge(10))# здесь вычисляется натуральный логарифмprint(pymathalgos.log(30,2))# здесь вычисляется логарифм по основанию 2КонстантыПросто константы:importpymathalgos.print(pymathalgos.PI)# число пиprint(pymathalgos.E)# число еprint(pymathalgos.FI)# число фиprint(pymathalgos.NULL)# 0print(pymathalgos.TAU)# число тау: число пи * 2print(pymathalgos.SQRT2)# корень из 2print(pymathalgos.SQRT3)# корень из 3ГеометрияЗдесь вы можете увидеть готовые функции для геометрииЗдесь просто функции из тригонометрии:importpymathalgos.geometryasgeometryn=90#					Можно вычислять градусы или радианы#						|print(geometry.sin("degrees",n))print(geometry.cos("degrees",n))# Функции tan() и tg(), а также подобные функции означают одно и тожеprint(geometry.tan("degrees",n))print(geometry.tg("degrees",n))print(geometry.asin("degrees",n))print(geometry.acos("radians",1))print(geometry.atan("degrees",n))print(geometry.sinh("degrees",n))print(geometry.cosh("degrees",n))print(geometry.tanh("radians",pymathalgos.PI))print(geometry.asinh("degrees",n))print(geometry.acosh("degrees",n))print(geometry.atanh("degrees",n))Можно получить расстояние от одной точки до другойimportpymathalgos.geometryasgeometrypos1=(50,40)pos2=(30,20)print(geometry.point_distance(pos1,pos2))Можно найти гипотенузу в прямоугольном треугольникеimportpymathalgos.geometryasgeometrya,b=2,3print(geometry.hypot(a,b))
Package: pyMathBitPrecise
pyMathBitPreciseThis library contains data types of fixed bit size and utils for bit manipulations.
It also contains types with support for tri state values etc. (Python equivalents of VHDLstd_logic_vector, Verilogwire/reg.)This may be usefull for tools which are simulating hardware or software which needs numbers of exact size.ExamplefrompyMathBitPrecise.bits3timportBits3t#3t means that bits can have values 1,0,xuint512_t=Bits3t(512,signed=False)a=uint512_t.from_py(1)# indexing on bits# [note] == is not overloaded, because it would make the values unhashable#        because of support of partially valid values which can not be comparedasserta[0]._eq(1)asserta[0]._dtype.bit_length()==1asserta[1]._eq(0)asserta[8:]._eq(1)asserta[8:]._dtype.bit_length()==8# arithmeticb=a+1assertb._eq(2)assertb._dtype==uint512_t# bitwise operationsc=a>>8assertc._eq(0)assertc._dtype==uint512_t# castingd=int(a)assertd==1andisinstance(d,int)uint8_t=Bits3t(8,signed=False)e=a.cast(uint8_t)asserte._dtype==uint8_tSimilar projectshwtypes- Python implementations of fixed size hardware typesBitwise
Package: py-math-help
This module is extensively designed for non-math coders and beginners. The user need not know math to solve complex math problems. This module does it all for you.The most special feature of this module is its search() function. Now Just search your query after importing the module and it would be resolved. This module consists over 50+ math formulas and is still developing.Syntax:>>>import py_math_help>>>py_math_help.search(<Type your problem here>)Example: >>>py_math_help.search(‘area of triangle’)Example: >>>py_math_help.search(‘convert binary to hexadecimal’)Example: >>>py_math_help.search(‘is 3557 a prime number’)Type >>>py_math_help.help() for further help.
Package: pymathics-graph
MathicsGraph Module usingNetworkXandMatplotlibExample Session$ mathicsscript
Mathicscript: 5.0.0, Mathics 6.0.0
on CPython 3.10.4 (main, Jun 29 2022, 12:14:53) [GCC 11.2.0]
using SymPy 1.9, mpmath 1.2.1, numpy 1.21.5
matplotlib 3.5.2,
Asymptote version 2.81

Copyright (C) 2011-2023 The Mathics3 Team.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions.
See the documentation for the full license.

Quit by pressing CONTROL-D

In[1]:= LoadModule["pymathics.graph"]
Out[1]= pymathics.graph
In[2]:= BinomialTree[3]
In[3]:= BinomialTree[6]
In[4]:= CompleteKaryTree[3, VertexLabels->True]ScreenshotsThe above is the is the matplotlib graph forBinomialTree[3]in the session above.See thescreenshot directorythe other graphs.InstallationFrom pip:$ pip install pymathics-graphFrom git:$ make develop  # or make installNote:Currently this works well inmathicsscriptbut not in the Django interface, although graphs are created in a temporary directory, e.g./tmp/.
Package: pymathics-natlang
Mathics Natural Language Toolkit module.Example Session$ mathicsscript
In[1]:= LoadModule["pymathics.natlang"]
Out[1]= pymathics.natlang
In[2]= Pluralize["try"]
Out[2]= tries
In[3]= WordFrequency["Apple Tree and apple", "apple", IgnoreCase -> True]
Out[3]= 0.5
In[4] = TextCases["I was in London last year.", "Pronoun"]
Out[3]= {I}More examples can be found in thetest file.Installing and RunningTo use build module, you will need to install Python modulenltkandspacy, and then install some data from
Language-specific words:$ make develop  # or make installThe abovemakecommand uses defaults the language to English. If
you would like to install for another language set the variableLANG. For example:$ make develop LANG=frIn order to use the Extended Open Multilingual Wordnet with NLTK and
use even more languages, you need to install them manually. Go tohttp://compling.hss.ntu.edu.sg/omw/summx.html, download the data,
and then create a new folder under$HOME/nltk_data/corpora/omw/your_languagewhere you put the file
from wiki/wn-wikt-your_language.tab, and rename it to
wn-data-your_language.tab.If you get the messageOSError: [E050] Can't find model 'en'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.There is a problem with thespacythe library for advanced Natural Language Processing in Python.You might be able to fix this running:python -m spacy download enAdjust “python” and “en” (the language you want) above as needed.User customizationIn order to use the Extended Open Multilingual Wordnet (OMW) with ‘NLTK’
and use even more languages, you need to install them manually.Go tohttp://compling.hss.ntu.edu.sg/omw/summx.html, download the data, and then create a new folder under$HOME/nltk_data/corpora/omw/your_languagewhere you put the file from
wiki/wn-wikt-your_language.tab, and rename it to
wn-data-your_language.tab.Adding more languages to Open Multilingual Wordnet:In order to use the Extended Open Multilingual Wordnet with NLTK and
use even more languages, you need to install them manually. Go tohttp://compling.hss.ntu.edu.sg/omw/summx.html, download the data, and
then create a new folder under
$HOME/nltk_data/corpora/omw/your_language where you put the file from
wiki/wn-wikt-your_language.tab, and rename it to
wn-data-your_language.tab.
Package: py-mathjax
MathJaxMathJax in pip and conda.InstallNeeds python 3.6+condainstall-cdefaults-cconda-forgepy-mathjaxorpipinstallpy-mathjaxAPImathjax_pathdefmathjax_path(as_url:bool=False)->str:""" Returns MathJax.js file absolute path. """CLIUsage: py-mathjax-path [OPTIONS]

  Prints MathJax.js file absolute path.

Options:
  --url, -u    print MathJax.js file abs path as URL,
  --help, -h   Show this message and exit.
Package: pymathlibs
PyMathLibs is a large math library in python. Used by many It contains ordanary math functions like add(1 + 1) sub(10 - 5). It also contains complex math functions like problem = equ(1, “+”, “(”, 10, “-”, “7” “)”), and piify(pymathlibs.pi).Change Log2021.9.1.0 (Tuesday, September 1 2021)-First Release2021.9.1.1 (Tuesday, September 1 2021)-Added Basic Operator Functions
Package: pymathtest
Help on module simple_maths_questions:NAMEsimple_maths_questions - # –coding: utf-8 –FUNCTIONSformat_a_number(num)格式化数字的显示方式，如果是负数，在数字的两边加上()gen_one_question(min_number, max_number, num_of_numbers)生成一道题目param min_number:int型，算式中允许出现的最小数字param max_number:int型，算式中允许出现的最大数字param num_of_numbers:int型，组成算式的数字数量return:结果listgen_one_question_not_negative(min_number, max_number, num_of_numbers)生成一道非负结果的测试题目保证算式中的数字和计算结果都不为负数。param min_number:int型，算式中允许出现的最小数字param max_number:int型，算式中允许出现的最大数字param num_of_numbers:int型，组成算式的数字数量return:结果listgen_operation_symbol()随机生成运算符号随机生成’+’或’-’，用于构建题目中的算式。return:str: 生成的运算符号gen_question_with_answers(min_number, max_number, num_of_numbers, the_quantity, negative_flag)生成包含答案的指定数量的题目param min_number:int型，算式中允许出现的最小数字param max_number:int型，算式中允许出现的最大数字param num_of_numbers:int型，组成算式的数字数量param the_quantity:int型，生成的测试题目数量param negative_flag:题目中是否允许出现负数的标志return:生成包含答案的题目dict，key：题目， value：答案gen_questions(min_number, max_number, num_of_numbers, the_quantity, negative_flag)生成指定数量的题目param min_number:int型，算式中允许出现的最小数字param max_number:int型，算式中允许出现的最大数字param num_of_numbers:int型，组成算式的数字数量param the_quantity:int型，生成的测试题目数量param negative_flag:题目中是否允许出现负数的标志return:生成的题目listmain(min_number, max_number, num_of_numbers, the_quantity, negative_flag, display_answer)trim_parameters(first_num, second_num, num_of_nums, the_quantity, negative, bottom_limit, top_limit, number_limit)对用来生成算式的参数进行剪裁使得各参数合法，并且不会造成过大计算负载。param first_num:int型，算式中允许出现的最小或最大数字param second_num:int型，算式中允许出现的最小或最大数字param num_of_nums:int型，组成算式的数字数量param the_quantity:int型，生成的题目数量，最小值为1，最大值为常量MAX_QUANTITY所规定数值param negative:是否允许出现负数的标志param bottom_limit:int型，算式中允许出现的最小数字的下限，最小不能小于常量MIN_NUMBER_LIMIT所规定数值param top_limit:int型，算式中允许出现的最大数字的上限，最大不能大于常量MAX_NUMBER_LIMIT所规定数值param number_limit:int型，组成算式的数字数量上限，最大不能大于常量MAX_NUMBER_OF_NUMBERS所规定数值return:tuple，经过剪裁后合法的参数：最小数字，最大数字，组成算式的数字数量，题目数量DATAMAX_NUMBER_LIMIT = 100000
MAX_NUMBER_OF_NUMBERS = 5
MAX_QUANTITY = 200
MIN_NUMBER_LIMIT = -100000
Package: pymatillion
PyMatillionThis is a Python wrapper for interacting with the REST API for Matillion.For full documentation visitDocumentation Link.Installationpip install pymatillionReleasingReleases are automatically built in GitHub actions pipeline when a tag is pushed.Use bumpver to increment the version string across the project.bumpver update -p/-m/--major --no-commitCopy the updated version string from pyproject.tomlTag the relevant commit on the master branch with the version from step 2# Set next version number
export RELEASE=x.x.x`

# Create tags
git commit --allow-empty -m "Release $RELEASE"
git tag -a $RELEASE -m "Version $RELEASE"

# Push
git push origin --tags
Package: pyMATLABstyle
MATLAB style numpy and sympyCreate matrix, call function in MATLAB styleInstallationpip install pyMATLABstyleImportfromMATLABimport*MATLAB style numpyIncludes:matinvrankdetexpmatN=mat('1 2 3;4 7,2;6,7,8')print('matN:',matN,sep='\n')matN:

[[1 2 3]

 [4 7 2]

 [6 7 8]]print('rank:',rank(matN))print('inv:',inv(matN)*(matN),sep='\n')print('det:',det(matN))print('exp:',exp(matN,2)-matN*matN,sep='\n')rank: 3

inv:

[[ 1.00000000e+00  2.77555756e-16  4.44089210e-16]

 [ 3.33066907e-16  1.00000000e+00  0.00000000e+00]

 [-3.46944695e-17 -5.89805982e-17  1.00000000e+00]]

det: -40.000000000000014

exp:

[[0 0 0]

 [0 0 0]

 [0 0 0]]MATLAB style symssyms == sympy.symbolsx,y,z=syms('x, y z')f=x**(y-z)print(f)x**(y - z)MATLAB style sympy matrixIncludes:smatsinvsdetsexpmatS=smat('x11 x12 x13;x21,x22,x23;x31,x32 x33')print('matS:',matS,sep='\n')matS:

Matrix([[x11, x12, x13], [x21, x22, x23], [x31, x32, x33]])print('rank:',matS.rank())print('inv:',sinv(matS)*(matS),sep='\n')print('det:',sdet(matS))print('exp:',sexp(matS,2)-matS*matS,sep='\n')rank: 3

inv:

Matrix([[1, 0, 0], [0, 1, 0], [0, 0, 1]])

det: x11*x22*x33 - x11*x23*x32 - x12*x21*x33 + x12*x23*x31 + x13*x21*x32 - x13*x22*x31

exp:

Matrix([[0, 0, 0], [0, 0, 0], [0, 0, 0]])
Package: pymato
The Simple Python Tomato (Pomodoro) timer.Usage$ python -m pip install --user pymato
$ pymato pom doing something cool
Task - doing something cool
0:24:59When the timer runs out it will emit a visual bell, so your terminal should
blink or notify you of activity. Want to see what you’ve been working on?$ pymato log
2018-02-28
            25m writing pymato documentation
            25m doing something cool
-----------------------------------------
            50m total pomodoro timeRight now that’s pretty much all it does. It saves your logs topymato.login the current folder. You can delete or edit entries that way. If you start a
task and you get called away in the middle of your pom, you can just hit
ctrl+c. Then it will ask if you’d like to save that pom.$ pymato pom a task that will get interrupted
Task - a task that will get interrupted
^C0:23:59Aborted - save to log anyway?
y/[n]: y
$ pymato log
2018-02-28
            25m writing pymato documentation
            25m doing something cool
             7m doing something cool
-----------------------------------------
            57m total pomodoro timeFuture GoalsI’d like to havepymato sumthat would give you a summary - probably with
the option to group by either task or day. Might be nice to see some kinds of
ascii graphs or something too. I’d also be down with the ability to add notes
to entries if you need to keep a record of things you’ve done. Or the ability
to link work to your git/hg/svn commit history.
Package: pymatops
pymatops - A Python package for Matrix OperationsPackage DetailsThepymatopspackage isavailableon the official Python Package Index (PyPi) repository.
It can be installed and used in your projects by running the following command usingpippipinstallpymatopsPackage Operations1. visualize - visualize a matriximportpymatopsaspmomat=[[1,2,3],[4,5,6],[7,8,9]]pmo.visualize(mat)2. dim - returns a tuple with the dimensions of the matriximportpymatopsaspmomat=[[1,2,3],[4,5,6],[7,8,9]]print("The dimension of the matrix is ",pmo.dim(mat))3. randomMatrix - returns a matrix of random dimensions with random values if the function is called with no argumentsimportpymatopsaspmoprint("The randomly generated matrix: ")pmo.randomMatrix()4. randomMatrix - you can pass dimensions to get a matrix of specified dimensions with random values. Both row and col dimensions are requiredimportpymatopsaspmoprint("The random matrix of dimension 6*8 generated: ")pmo.randomMatrix(6,8)5. matSum - returns the sum of all elements in the matrix passedimportpymatopsaspmoprint("The random matrix generated: ")mat=pmo.randomMatrix(6,8)# retuns a 6*8 matrix with random valuesprint("The sum of the matrix: ",pmo.matSum(mat))6. matAdd - returns the resultant matrix of the sum of matrix A and Bimportpymatopsaspmomat=[[1,2,3],[4,5,6],[7,8,9]]mat1=[[1,2,3],[4,5,6],[7,8,9]]# returns a 6*8 matrix with random valuesprint("Matrix 1:")pmo.visualize(mat)print("Matrix 2:")pmo.visualize(mat1)print("The resultant matrix of the matrix addition operation: ")pmo.matAdd(mat,mat1)7. matMul - returns the resultant matrix of the multiplication of matrix A and Bimportpymatopsaspmomat=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]# matrix of dimensions 4*3mat1=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]# matrix of dimensions 3*4print("Matrix 1:")pmo.visualize(mat)print("Matrix 2:")pmo.visualize(mat1)print("The resultant matrix of the matrix multiplication operation: ")pmo.matMul(mat,mat1)8. scalarMul - returns the resultant matrix of the multiplication of matrix A with scalar cimportpymatopsaspmomat=[[1,2,3],[4,5,6],[7,8,9]]print("Original Matrix: ")pmo.visualize(mat)print("Matrix after scalar multiplication operation: ")pmo.scalarMul(mat,3)9. transpose - returns transpose of matriximportpymatopsaspmomat=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]print("Original Matrix: ")pmo.visualize(mat)print("Matrix after transpose operation: ")pmo.transpose(mat)10. zeroElements - returns the number of zero elements in the matriximportpymatopsaspmomat=[[1,0,3],[0,5,6],[7,8,0],[10,11,12]]print("Original Matrix: ")pmo.visualize(mat)print("Number of zeros in the matrix: ",end=" ")print(pmo.zeroElements(mat))11. evenCheck - returns a tuple with the first element as the number of even numbers in the matrix and the second element being the number of odd numbers in the matriximportpymatopsaspmomat=[[1,0,3],[0,5,6],[7,8,0],[10,11,12]]print("Original Matrix: ")pmo.visualize(mat)print("Number of even numbers in the matrix: ",end=" ")print(pmo.evenCheck(mat)[0])print("Number of odd numbers in the matrix: ",end=" ")print(pmo.evenCheck(mat)[1])Developed by Yash Seth (c) 2022
Package: pymatreader
pymatreaderA Python module to read Matlab files. This module works with both the old (< 7.3) and the new (>= 7.3) HDF5 based format. The output should be the same for both kinds of files.How to usefrompymatreaderimportread_matdata=read_mat(filename)datais a pythondictcontaining all variables of the mat file.DocumentationDocumentation can be found here:http://pymatreader.readthedocs.io/en/latest/CodeThe source code can be found here:https://gitlab.com/obob/pymatreaderLicenseThis module is developed by Dirk Gütlin & Thomas Hartmann at the Universität Salzburg. You are free to use, copy, modify, distribute it under the terms of the BSD 2 clause license.
Package: py-Matrix-123
py-Matrix-123InstallationTo install with pip, run:pip install py-Matrix-123Basic UsageYou can retrieve matrix dimensions, their trace, and performs matrix addition, subtraction, multiplication and scalar multiplication.requirements:
python3Here's an example for regular matricesfrompymatrix123importMatrix"""matrix A:1345matrix B:1025"""matrixA=Matrix([[1],[3],[4],[5]])matrixB=Matrix([[1],[0],[2],[5]])print(matrixA+matrixB)Here's an example for square matricesfrompymatrix123importSquareMatrix"""matrix A:1 23 4matrix B:3 42 1"""matrixA=SquareMatrix([[1,2],[3,4]])matrixB=SquareMatrix([[4,3],[2,1]])print(matrixA.trace())print(matrixA.get_dim())print(matrixB.trace())print(matrixB.get_dim())print(matrixA*matrixB)ReferenceSetupCommandNotesinstallpip install pymatrix123Creating a CLICommandNotesimportimport pymatrix123CallMatrix(A)Turns the current list into a matrix object.CallSquareMatrix(B)Turns the current list into a matrix object.LicenseLicensed under theThe Python Packaging AuthorityLicense.
Package: pymatrix-rain
pymatrix-rainMatrix rain effect using python 3 and curses.How to Downloadpip install pymatrix-rainTo run: pymatrix-rainNOTE:not tested on Windows or MacCommandsQorq=Quitsb=Bold onB=Bold alln=Bold off0-9=Delay speed 0-Fast, 4-Default, 9-Slowa=Asynchronous like scrolling (normal scrolling only)m=Multiple color modeM=Multiple random color mode  (normal scrolling only)d=Reset to defaultc=Cycle through colors automaticallyl=Toggle double space linese=Toggle extended charactersE=Only extended characters if onk=Half width Katakana characters like those from the movies. If the correct font is installed.K=Half width Katakana characters onlyz=Zero and One Mode OnZ=Zero and One Mode Offf=Freeze and unfreeze the matrix. Can still useQto quit.v=Toggle the matrix to scroll upW=Toggle do not clear screen  (normal scrolling only)w=Clear the screen, wait 2 seconds and startj=Toggle italic texts=Toggle old style matrix scrolling (down only)up arrow=Matrix scrolling updown arrow=Matrix scrolling down (Default)left arrow=Matrix scrolls from right to leftright arrow=Matrix scrolls from left to rightshift 0-9=Cycle color delayRain Colorsr= Redt= Greeny= Blueu= Yellowi= Magentao= Cyanp= White[= BlackLead Char ColorR= RedT= GreenY= BlueU= YellowI= MagentaO= CyanP= White{= BlackBackground Colorsctrl-r= Redctrl-t= Greenctrl-y= Bluectrl-u= Yellowctrl-i= Magentactrl-o= Cyanctrl-p= Whitectrl-[= BlackScreen ShotsScrolling UpScrolling rightKatakana CharactersZero and One ModeExtended CharactersItalic Mode
Package: pymatrix-ss
pymatrixScreensaver with zsh-morphoInstallpipinstallpymatrix-ssOpen~/.zshrcaddzsh-morphotopluginsconfig zsh-morphozstyle":morpho"screen-saver"pymatrix"zstyle":morpho"delay"290"# 5 minutes  before screen saver startszstyle":morpho"check-interval"60"# check every 1 minute if to run screen saver
Package: pymatriz
Overviewpymatrizis a python library that allows interactions with Primary DMA (Matriz) Rest and Websocket APIs.Installingpymatrizis available at thePython Package Indexrepository. Install and update usingpip:pip3 install pymatrizAPI CredentialsCredentials provided by your broker which use Primary DMA (Matriz) platform.Usageimportdatetimefrompymatriz.enumsimportMarketDataEntry,Marketfrompymatriz.clientimportMatrizAPIClientclient=MatrizAPIClient(username="",password="")# Real-time message handlingclient.add_market_data_handler(lambdamsg:print(msg))# Error handlingclient.set_exception_handler(lambdae:print(e))# Negotiate Auth Token and connects to websocketclient.connect()# Rest API call + websocket subscriptionprint(client.get_daily_history(["GGAL"],terms=[MarketDataEntry.TERM_48HS],market=Market.MERVAL,start_date=datetime.date(2020,10,5)))# Ends websocket connectionclient.close()DisclaimerThe library is built as a result of a reverse engineering process, so use it on your own behalf.This library is provided ‘as is’ without warranty of any kind, either express or implied, including, but not limited to, the implied warranties of fitness for a purpose, or the warranty of non-infringement.
Package: pymatsolver
A (sparse) matrix solver for python.Solving Ax = b should be as easy as:Ainv=Solver(A)x=Ainv*bIn pymatsolver we provide a number of wrappers to existing numerical packages. Nothing fancy here.Solvers AvailableAll solvers work withscipy.sparsematricies, and a single or multiple right hand sides usingnumpy:L/U Triangular SolvesWrapping of SciPy matrix solvers (direct and indirect)Pardiso solvers now that MKL comes with conda!Mumps solver with nice error messagesInstalling MumpsWe have not been able to get the pip install to work because of multiple dependencies on fortran libraries.
However, the linux and mac installs are relatively easy. Note that you must have mumps pre-installed,
currently we have only got this working for the sequential version, so when you are installing,
you will need to point to that one. You can also look at the.travis.ymlfile for how to get it working on TravisCI.LinuxFrom a clean install on Ubuntu:apt-getupdateapt-get-yinstallgccgfortrangitlibopenmpi-devlibmumps-seq-devlibblas-devliblapack-dev# Install all the python you need!wgethttp://repo.continuum.io/miniconda/Miniconda-3.8.3-Linux-x86_64.sh-Ominiconda.sh;chmod+xminiconda.sh./miniconda.sh-bexportPATH=/root/anaconda/bin:/root/miniconda/bin:$PATHcondaupdate--yescondacondainstall--yesnumpyscipymatplotlibcythonipythonnosegitclonehttps://github.com/rowanc1/pymatsolver.gitcdpymatsolvermakemumpsMacThis assumes that you have Brew and some python installed (numpy, scipy):brewinstallmumps--with-scotch5--without-mpigitclonehttps://github.com/rowanc1/pymatsolver.gitcdpymatsolvermakemumps_macIf you have problems you may have to go into the Makefile and update the pointers to Lib and Include for the various libraries.This command is helpful for finding dependencies. You should also take note of have happens when brew installs mumps.mpicc--showmeCode:https://github.com/simpeg/pymatsolverTests:https://travis-ci.org/simpeg/pymatsolverBugs & Issues:https://github.com/simpeg/pymatsolver/issuesLicense: MIT