Changeset 252f5c


Ignore:
Timestamp:
May 2, 2013, 11:58:02 AM (13 years ago)
Author:
Julian Iseringhausen <isering@…>
Children:
092b175
Parents:
da7c98
Message:

Added tolerance parameter to Helper::AssertVectorsEqual.

Location:
src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • src/base/helper.cpp

    rda7c98 r252f5c  
    9191}
    9292
    93 bool Helper::AssertVectorsEqual(const Vector& pos_1, const Vector& pos_2)
     93bool Helper::AssertVectorsEqual(const Vector& pos_1, const Vector& pos_2, const vmg_float& tol)
    9494{
    95   bool equal = (pos_1 - pos_2).Abs().IsComponentwiseLessOrEqual(std::numeric_limits<vmg_float>::epsilon());
     95  bool equal = (pos_1 - pos_2).Abs().IsComponentwiseLessOrEqual(tol);
    9696  assert(equal);
    9797  return equal;
  • src/base/helper.hpp

    rda7c98 r252f5c  
    191191  }
    192192
    193   bool AssertVectorsEqual(const Vector& pos_1, const Vector& pos_2);
     193  bool AssertVectorsEqual(const Vector& pos_1, const Vector& pos_2, const vmg_float& tol);
    194194
    195195  vmg_float InterpolateTrilinear(const Vector& point, const Grid& grid);
  • src/level/level_operator_fas.cpp

    rda7c98 r252f5c  
    8181
    8282  for (iter_f=bounds_f.Begin(), iter_c=bounds_c.Begin(); iter_c!=bounds_c.End(); iter_f+=2, ++iter_c) {
    83     Helper::AssertVectorsEqual(sol_c_undist.GetSpatialPos(*iter_c), sol_f.GetSpatialPos(*iter_f));
     83    Helper::AssertVectorsEqual(sol_c_undist.GetSpatialPos(*iter_c), sol_f.GetSpatialPos(*iter_f), 4.0 * std::numeric_limits<vmg_float>::epsilon());
    8484    sol_c_undist(*iter_c) = op_sol.Apply(sol_f, *iter_f);
    8585  }
     
    8888
    8989  for (iter_f=bounds_f.Begin(), iter_c=bounds_c.Begin(); iter_c!=bounds_c.End(); iter_f+=2, ++iter_c) {
    90     Helper::AssertVectorsEqual(rhs_c_undist.GetSpatialPos(*iter_c), (*res_grid).GetSpatialPos(*iter_f));
     90    Helper::AssertVectorsEqual(rhs_c_undist.GetSpatialPos(*iter_c), (*res_grid).GetSpatialPos(*iter_f), 4.0 * std::numeric_limits<vmg_float>::epsilon());
    9191    rhs_c_undist(*iter_c) = op_res.Apply(*res_grid, *iter_f) + prefactor * op_pde.Apply(sol_c_undist, *iter_c);
    9292  }
     
    134134
    135135  for (iter_f=bounds_f.Begin(), iter_c=bounds_c.Begin(); iter_c!=bounds_c.End(); iter_f+=2, ++iter_c) {
    136     Helper::AssertVectorsEqual(sol_c.GetSpatialPos(*iter_c), sol_f_undist.GetSpatialPos(*iter_f));
     136    Helper::AssertVectorsEqual(sol_c.GetSpatialPos(*iter_c), sol_f_undist.GetSpatialPos(*iter_f), 4.0 * std::numeric_limits<vmg_float>::epsilon());
    137137    val = sol_c.GetVal(*iter_c) - sol_old->GetVal(*iter_c);
    138138    sol_f_undist(*iter_f) += op.GetDiag() * val;
Note: See TracChangeset for help on using the changeset viewer.