SHA256
1
0
forked from pool/normaliz

Accepting request 729716 from science

- Update to release 3.8.0

OBS-URL: https://build.opensuse.org/request/show/729716
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/normaliz?expand=0&rev=9
This commit is contained in:
Dominique Leuenberger 2019-09-11 08:34:17 +00:00 committed by Git OBS Bridge
commit 8b15556548
6 changed files with 17 additions and 154 deletions

View File

@ -1,126 +0,0 @@
From dc50d2e97e108011231fe82d5939d19b79408911 Mon Sep 17 00:00:00 2001
From: Max Horn <max@quendi.de>
Date: Sun, 11 Aug 2019 21:38:40 +0200
Subject: [PATCH] Fix a bunch of compiler warnings, and two actual bugs
Bugs:
- Matrix<mpq_class>::VxM was not returning anything
- handling of automorphisms had a misplaces parenthesis
---
source/libnormaliz/cone.cpp | 6 ++++--
source/libnormaliz/input_type.cpp | 1 +
source/libnormaliz/integer.cpp | 7 +++----
source/libnormaliz/matrix.cpp | 1 +
source/libnormaliz/output.cpp | 6 +++---
source/libnormaliz/vector_operations.cpp | 3 ---
6 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/source/libnormaliz/cone.cpp b/source/libnormaliz/cone.cpp
index 0287223e..ada7cd1a 100644
--- a/source/libnormaliz/cone.cpp
+++ b/source/libnormaliz/cone.cpp
@@ -6970,8 +6970,10 @@ void Cone<Integer>::make_face_lattice(const ConeProperties& ToCompute){
if(skip_remaining)
continue;
- for(; kkk > Fpos; ++Fpos, ++F);
- for(; kkk < Fpos; --Fpos, --F) ;
+ for(; kkk > Fpos; ++Fpos, ++F)
+ ;
+ for(; kkk < Fpos; --Fpos, --F)
+ ;
if(verbose && nr_faces>=RepBound){
#pragma omp critical(VERBOSE)
diff --git a/source/libnormaliz/input_type.cpp b/source/libnormaliz/input_type.cpp
index 58e8ae73..816311a3 100644
--- a/source/libnormaliz/input_type.cpp
+++ b/source/libnormaliz/input_type.cpp
@@ -210,6 +210,7 @@ std::string numpar_to_string(const NumParam::Param& numpar){
return "autom_codim_bound_vectors";
if(numpar==NumParam::not_a_num_param)
return "not_a_num_param";
+ assert(false);
}
bool isNumParam(NumParam::Param& numpar, const std::string& type_string){
diff --git a/source/libnormaliz/integer.cpp b/source/libnormaliz/integer.cpp
index 1f3a2f9f..886de3b0 100644
--- a/source/libnormaliz/integer.cpp
+++ b/source/libnormaliz/integer.cpp
@@ -211,8 +211,8 @@ nmz_float gcd(const nmz_float& a, const nmz_float& b){
return 1.0;
}
-template<>
-mpz_class gcd<mpz_class>(const mpz_class& a, const mpz_class& b) {
+template <>
+mpz_class gcd(const mpz_class& a, const mpz_class& b) {
mpz_class g;
mpz_gcd (g.get_mpz_t(), a.get_mpz_t(), b.get_mpz_t());
return g;
@@ -229,8 +229,7 @@ renf_elem_class gcd(const renf_elem_class& a, const renf_elem_class& b){
template long gcd<long>(const long& a, const long& b);
-template nmz_float gcd<nmz_float>(const nmz_float& a, const nmz_float& b);
-template long long gcd<long long>(const long long& a, const long long& b);
+template long long gcd(const long long& a, const long long& b);
//---------------------------------------------------------------------------
diff --git a/source/libnormaliz/matrix.cpp b/source/libnormaliz/matrix.cpp
index b0a57556..fa6d023b 100644
--- a/source/libnormaliz/matrix.cpp
+++ b/source/libnormaliz/matrix.cpp
@@ -1307,6 +1307,7 @@ vector<mpq_class> Matrix<mpq_class>::VxM(const vector<mpq_class>& v) const{
w[i] += v[j]*elem[j][i];
}
}
+ return w;
}
//---------------------------------------------------------------------------
diff --git a/source/libnormaliz/output.cpp b/source/libnormaliz/output.cpp
index 4bf767d3..4eee5591 100644
--- a/source/libnormaliz/output.cpp
+++ b/source/libnormaliz/output.cpp
@@ -1262,11 +1262,11 @@ void Output<Integer>::write_files() const {
out << endl;
}
- if (aut && (Result->isComputed(ConeProperty::Automorphisms)
- || Result->isComputed(ConeProperty::AmbientAutomorphisms))
+ if (aut && (Result->isComputed(ConeProperty::Automorphisms)
+ || Result->isComputed(ConeProperty::AmbientAutomorphisms)
|| Result->isComputed(ConeProperty::CombinatorialAutomorphisms)
|| Result->isComputed(ConeProperty::RationalAutomorphisms)
- || Result->isComputed(ConeProperty::EuclideanAutomorphisms)
+ || Result->isComputed(ConeProperty::EuclideanAutomorphisms))
) {
write_aut();
out << Result->getAutomorphismGroup().getQualitiesString() << "automorphism group has order " << Result->getAutomorphismGroup().getOrder()
diff --git a/source/libnormaliz/vector_operations.cpp b/source/libnormaliz/vector_operations.cpp
index 4f13963f..fa8e1002 100644
--- a/source/libnormaliz/vector_operations.cpp
+++ b/source/libnormaliz/vector_operations.cpp
@@ -671,7 +671,6 @@ mpq_class v_standardize(vector<mpq_class>& v, const vector<mpq_class>& LF){
template void v_scalar_division(vector<long>& v, const long scalar);
template void v_scalar_division(vector<long long>& v, const long long scalar);
template void v_scalar_division(vector<mpz_class>& v, const mpz_class scalar);
-template void v_scalar_division(vector<nmz_float>& v, const nmz_float scalar);
template long v_make_prime(vector<long >&);
template long long v_make_prime(vector<long long>&);
@@ -680,8 +679,6 @@ template mpz_class v_make_prime(vector<mpz_class>&);
template long v_scalar_product(const vector<long>& a,const vector<long>& b);
template long long v_scalar_product(const vector<long long>& a,const vector<long long>& b);
template mpz_class v_scalar_product(const vector<mpz_class>& a,const vector<mpz_class>& b);
-template mpq_class v_scalar_product(const vector<mpq_class>& a,const vector<mpq_class>& b);
-template nmz_float v_scalar_product(const vector<nmz_float>& a,const vector<nmz_float>& b);
vector<bool> bitset_to_bool(const boost::dynamic_bitset<>& val){
vector<bool> ret(val.size());
--
2.22.1

View File

@ -1,22 +0,0 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2019-08-26 07:07:20.601082790 +0200
Related upstream commit: 0b5df92a7b660d3712dfc73ae083e5b7d9831e9f
Fix poor installation testing.
---
source/Makefile.am | 1 +
1 file changed, 1 insertion(+)
Index: normaliz-3.7.4/source/Makefile.am
===================================================================
--- normaliz-3.7.4.orig/source/Makefile.am
+++ normaliz-3.7.4/source/Makefile.am
@@ -34,6 +34,7 @@ lib_LTLIBRARIES = libnormaliz.la
# Installed headers
nobase_include_HEADERS = libnormaliz/cone.h libnormaliz/cone_property.h libnormaliz/convert.h libnormaliz/general.h libnormaliz/HilbertSeries.h libnormaliz/integer.h libnormaliz/input_type.h libnormaliz/matrix.h libnormaliz/my_omp.h libnormaliz/normaliz_exception.h libnormaliz/sublattice_representation.h libnormaliz/vector_operations.h libnormaliz/version.h libnormaliz/nmz_integrate.h libnormaliz/automorph.h libnormaliz/libnormaliz.h libnormaliz/map_operations.h libnormaliz/nmz_config.h
+nobase_include_HEADERS += libnormaliz/output.h
# Sources
libnormaliz_la_SOURCES = libnormaliz/enumeration.cpp libnormaliz/other_algorithms.cpp libnormaliz/linear_algebra.cpp libnormaliz/offload_handler.cpp libnormaliz/cone_and_control.cpp libnormaliz/primal.cpp libnormaliz/nmz_nauty.cpp libnormaliz/output.cpp
# Other headers (not installed)

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1b94ff9baa0ebbc682229e8cfad086245d67754958ae3ddb1cc0a563a16ceb89
size 4232335

3
normaliz-3.8.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:01c110c7addfea7201f7372d266772525784d61e13417ed0f85fbbf5cee6144e
size 4083537

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Tue Sep 10 08:31:45 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Update to release 3.8.0
* This release adds the computation of automorphism groups to
Normaliz. Various types of automorphism groups can be
computed: combinatorial, rational/algebraic, integral and
euclidean. It is not yet possible to use the automorphism
groups in the computation of other invariants, which is the
main reason for their introduction.
- Remove 0001-Fix-a-bunch-of-compiler-warnings-and-two-actual-bugs.patch,
headerfile.patch
-------------------------------------------------------------------
Mon Aug 26 05:13:03 UTC 2019 - Jan Engelhardt <jengelh@inai.de>

View File

@ -18,7 +18,7 @@
Name: normaliz
%define lname libnormaliz3
Version: 3.7.4
Version: 3.8.0
Release: 0
Summary: Tools for computations in affine monoids and rational cones
License: GPL-3.0-or-later
@ -26,8 +26,6 @@ Group: Productivity/Scientific/Math
URL: https://www.normaliz.uni-osnabrueck.de/
Source: https://github.com/Normaliz/Normaliz/releases/download/v%version/%name-%version.tar.gz
Patch1: 0001-Fix-a-bunch-of-compiler-warnings-and-two-actual-bugs.patch
Patch2: headerfile.patch
#maybe with flint-devel later on
BuildRequires: boost-devel
BuildRequires: gcc-c++