Skip to content
Snippets Groups Projects
Commit 237571e0 authored by Oliver Sander's avatar Oliver Sander Committed by sander
Browse files

Allow to set the field type used for the radius

[[Imported from SVN: r9445]]
parent a3baa1fe
No related branches found
No related tags found
No related merge requests found
...@@ -5,18 +5,18 @@ ...@@ -5,18 +5,18 @@
#include <dune/solvers/common/boxconstraint.hh> #include <dune/solvers/common/boxconstraint.hh>
template <int blocksize> template <int blocksize, class field_type=double>
class MaxNormTrustRegion class MaxNormTrustRegion
{ {
public: public:
MaxNormTrustRegion(size_t size, double initialRadius) MaxNormTrustRegion(size_t size, field_type initialRadius)
: obstacles_(size) : obstacles_(size)
{ {
set(initialRadius); set(initialRadius);
} }
void set(double radius) { void set(field_type radius) {
for (size_t i=0; i<obstacles_.size(); i++) { for (size_t i=0; i<obstacles_.size(); i++) {
...@@ -31,13 +31,13 @@ public: ...@@ -31,13 +31,13 @@ public:
} }
double radius() const { field_type radius() const {
assert(obstacles_.size()>0); assert(obstacles_.size()>0);
assert(blocksize>0); assert(blocksize>0);
return obstacles_[0].upper(0); return obstacles_[0].upper(0);
} }
void scale(double factor) { void scale(field_type factor) {
for (size_t i=0; i<obstacles_.size(); i++) { for (size_t i=0; i<obstacles_.size(); i++) {
...@@ -52,13 +52,13 @@ public: ...@@ -52,13 +52,13 @@ public:
} }
const std::vector<BoxConstraint<double,blocksize> >& obstacles() const { const std::vector<BoxConstraint<field_type,blocksize> >& obstacles() const {
return obstacles_; return obstacles_;
} }
private: private:
std::vector<BoxConstraint<double,blocksize> > obstacles_; std::vector<BoxConstraint<field_type,blocksize> > obstacles_;
}; };
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment