blob: 3a2094bba93ae993b87044a2b6d09dbec422faeb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
%global _empty_manifest_terminate_build 0
Name: python-pyneqsys
Version: 0.5.7
Release: 1
Summary: Package for numerically solving symbolically defined systems of non-linear equations.
License: BSD
URL: https://github.com/bjodah/pyneqsys
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/32/2e/e462e8565f1472cc46bebf7a0bca7dc8a452a29dc73c341e4b3f70eaea86/pyneqsys-0.5.7.tar.gz
BuildArch: noarch
%description
pyneqsys provides a convenience class for
representing and solving non-linear equation systems from symbolic expressions
(provided e.g. with the help of SymPy_).
The numerical root finding is perfomed using either:
- scipy: `scipy.optimize.root <http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.root.html>`_
- mpmath (arbitrary precision): `mpmath.calculus.optimization.MDNewton <http://mpmath.org/doc/1.0.0/calculus/optimization.html#mpmath.calculus.optimization.MDNewton>`_
- kinsol (from SUNDIALS): `pykinsol.solve <http://bjodah.github.io/pykinsol/latest/pykinsol.html#pykinsol.solve>`_
- nleq2 (ZIB library free for academic use): `pynleq2.solve <http://bjodah.github.io/pynleq2/pynleq2.html#pynleq2.solve>`_
- levmar (Levenberg-Marquardt): `levmar.levmar <https://bjodah.github.io/levmar/latest/levmar.html#levmar.levmar>`_
In addition to offering a unified interface to different solvers, pyneqsys
can also derive the Jacobian analytically (when using ``pyneqsys.SymbolicSys``).
This is useful since doing so manually is widely recognized as both tedious and error
prone.
The symbolic representation is usually in the form of SymPy_ expressions,
but the user may choose another symbolic back-end (see `sym <https://github.com/bjodah/sym>`_).
In addition to deriving the Jacobian analytically the symbolic representation can for
example apply row-reduce. This is usful for when you have a overdetermined system (
formed from e.g. applying conservation laws) and want to solve the system by
root-finding rather than using a least-square optimization of e.g. Levenberg-Marquardt
style.
Last, but not the least having a symbolic representation of your system of equations
allows you to generate publication quality latex representations of your equations (through
SymPy's latex printer) from a **single** source‒no more error prone hand-rewriting of the same
equations in another format for presentation!
%package -n python3-pyneqsys
Summary: Package for numerically solving symbolically defined systems of non-linear equations.
Provides: python-pyneqsys
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-pyneqsys
pyneqsys provides a convenience class for
representing and solving non-linear equation systems from symbolic expressions
(provided e.g. with the help of SymPy_).
The numerical root finding is perfomed using either:
- scipy: `scipy.optimize.root <http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.root.html>`_
- mpmath (arbitrary precision): `mpmath.calculus.optimization.MDNewton <http://mpmath.org/doc/1.0.0/calculus/optimization.html#mpmath.calculus.optimization.MDNewton>`_
- kinsol (from SUNDIALS): `pykinsol.solve <http://bjodah.github.io/pykinsol/latest/pykinsol.html#pykinsol.solve>`_
- nleq2 (ZIB library free for academic use): `pynleq2.solve <http://bjodah.github.io/pynleq2/pynleq2.html#pynleq2.solve>`_
- levmar (Levenberg-Marquardt): `levmar.levmar <https://bjodah.github.io/levmar/latest/levmar.html#levmar.levmar>`_
In addition to offering a unified interface to different solvers, pyneqsys
can also derive the Jacobian analytically (when using ``pyneqsys.SymbolicSys``).
This is useful since doing so manually is widely recognized as both tedious and error
prone.
The symbolic representation is usually in the form of SymPy_ expressions,
but the user may choose another symbolic back-end (see `sym <https://github.com/bjodah/sym>`_).
In addition to deriving the Jacobian analytically the symbolic representation can for
example apply row-reduce. This is usful for when you have a overdetermined system (
formed from e.g. applying conservation laws) and want to solve the system by
root-finding rather than using a least-square optimization of e.g. Levenberg-Marquardt
style.
Last, but not the least having a symbolic representation of your system of equations
allows you to generate publication quality latex representations of your equations (through
SymPy's latex printer) from a **single** source‒no more error prone hand-rewriting of the same
equations in another format for presentation!
%package help
Summary: Development documents and examples for pyneqsys
Provides: python3-pyneqsys-doc
%description help
pyneqsys provides a convenience class for
representing and solving non-linear equation systems from symbolic expressions
(provided e.g. with the help of SymPy_).
The numerical root finding is perfomed using either:
- scipy: `scipy.optimize.root <http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.root.html>`_
- mpmath (arbitrary precision): `mpmath.calculus.optimization.MDNewton <http://mpmath.org/doc/1.0.0/calculus/optimization.html#mpmath.calculus.optimization.MDNewton>`_
- kinsol (from SUNDIALS): `pykinsol.solve <http://bjodah.github.io/pykinsol/latest/pykinsol.html#pykinsol.solve>`_
- nleq2 (ZIB library free for academic use): `pynleq2.solve <http://bjodah.github.io/pynleq2/pynleq2.html#pynleq2.solve>`_
- levmar (Levenberg-Marquardt): `levmar.levmar <https://bjodah.github.io/levmar/latest/levmar.html#levmar.levmar>`_
In addition to offering a unified interface to different solvers, pyneqsys
can also derive the Jacobian analytically (when using ``pyneqsys.SymbolicSys``).
This is useful since doing so manually is widely recognized as both tedious and error
prone.
The symbolic representation is usually in the form of SymPy_ expressions,
but the user may choose another symbolic back-end (see `sym <https://github.com/bjodah/sym>`_).
In addition to deriving the Jacobian analytically the symbolic representation can for
example apply row-reduce. This is usful for when you have a overdetermined system (
formed from e.g. applying conservation laws) and want to solve the system by
root-finding rather than using a least-square optimization of e.g. Levenberg-Marquardt
style.
Last, but not the least having a symbolic representation of your system of equations
allows you to generate publication quality latex representations of your equations (through
SymPy's latex printer) from a **single** source‒no more error prone hand-rewriting of the same
equations in another format for presentation!
%prep
%autosetup -n pyneqsys-0.5.7
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-pyneqsys -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.5.7-1
- Package Spec generated
|