%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 `_ - mpmath (arbitrary precision): `mpmath.calculus.optimization.MDNewton `_ - kinsol (from SUNDIALS): `pykinsol.solve `_ - nleq2 (ZIB library free for academic use): `pynleq2.solve `_ - levmar (Levenberg-Marquardt): `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 `_). 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 `_ - mpmath (arbitrary precision): `mpmath.calculus.optimization.MDNewton `_ - kinsol (from SUNDIALS): `pykinsol.solve `_ - nleq2 (ZIB library free for academic use): `pynleq2.solve `_ - levmar (Levenberg-Marquardt): `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 `_). 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 `_ - mpmath (arbitrary precision): `mpmath.calculus.optimization.MDNewton `_ - kinsol (from SUNDIALS): `pykinsol.solve `_ - nleq2 (ZIB library free for academic use): `pynleq2.solve `_ - levmar (Levenberg-Marquardt): `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 `_). 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 * Tue May 30 2023 Python_Bot - 0.5.7-1 - Package Spec generated