Fixes
This commit is contained in:
parent
b5319a0b1c
commit
718fac9993
3 changed files with 28 additions and 18 deletions
|
@ -12,7 +12,7 @@ static T project_tool(T *vertex_value, T *u, T *u0)
|
|||
T ret = 0;
|
||||
|
||||
for (int q = 0; q < 3; q++)
|
||||
epsilon[q] = -(2*c[q]-1);
|
||||
epsilon[q] = (2*c[q]-1);
|
||||
|
||||
for (int q = 0; q < ProdType::numProducts; q++)
|
||||
ret += ProdType::product(u, u0, epsilon, q);
|
||||
|
@ -25,9 +25,9 @@ static T project_tool(T *vertex_value, T *u, T *u0)
|
|||
|
||||
|
||||
template<typename T>
|
||||
static T get_u0(T u0, int epsilon)
|
||||
static T get_u0(const T& u0, int epsilon)
|
||||
{
|
||||
return (epsilon < 0) ? u0 : (1-u0);
|
||||
return (epsilon > 0) ? u0 : (1-u0);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
|
@ -61,7 +61,7 @@ struct ProductTerm1
|
|||
G[r] = get_u0(u0[r], epsilon[r]);
|
||||
}
|
||||
|
||||
double F[3] = { G[1]*G[2], G[0]*G[2], G[0]*G[1] };
|
||||
double F[3] = { G[1]*G[2], G[0]*G[2], G[0]*G[1] };
|
||||
|
||||
return F[q] * u[q] * epsilon[q];
|
||||
}
|
||||
|
@ -108,7 +108,7 @@ T compute_projection(T *vertex_value, T *u, T *u0, T rho)
|
|||
T ret;
|
||||
|
||||
ret = project_tool<T, ProductTerm0<T> >(vertex_value, u, u0) * rho;
|
||||
ret += project_tool<T, ProductTerm1<T> >(vertex_value, u, u0) * rho * rho / 2;
|
||||
// ret += project_tool<T, ProductTerm1<T> >(vertex_value, u, u0) * rho * rho / 2;
|
||||
// ret += project_tool<T, ProductTerm2<T> >(vertex_value, u, u0) * rho * rho * rho / 3;
|
||||
// ret += project_tool<T, ProductTerm3<T> >(vertex_value, u, u0) * rho * rho * rho * rho / 4;
|
||||
return ret;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue