Subversion Repositories gelsvn

Rev

Rev 662 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 662 Rev 663
Line 123... Line 123...
123
 
123
 
124
 
124
 
125
double Harmonics::compute_adf(HMesh::VertexAttributeVector<double>& F, double t, double fiedler_boost)
125
double Harmonics::compute_adf(HMesh::VertexAttributeVector<double>& F, double t, double fiedler_boost)
126
{
126
{
127
	double F_max = 0;
127
	double F_max = 0;
-
 
128
    for(VertexID vid : mani.vertices())
-
 
129
        F[vid]=0;
-
 
130
    
128
	for(VertexID vid : mani.vertices()){
131
	for(VertexID vid : mani.vertices()){
129
		for(int e = 1; e < V.Length(); ++e)
132
		for(int e = 1; e < V.Length(); ++e)
130
			F[vid] += sqr(Q[e][vtouched[vid]]) * exp(-t*V[e]/V[1]);
133
			F[vid] += sqr(Q[e][vtouched[vid]]) * exp(-t*V[e]/V[1]);
131
            if(fiedler_boost>0)
134
            if(fiedler_boost>0)
132
                for(int e = 1; e < V.Length(); ++e)
135
                for(int e = 1; e < V.Length(); ++e)
Line 134... Line 137...
134
        
137
        
135
		F_max = max(F[vid], F_max);
138
		F_max = max(F[vid], F_max);
136
	}
139
	}
137
    return F_max;
140
    return F_max;
138
}
141
}
-
 
142
 
-
 
143
double Harmonics::compute_esum(HMesh::VertexAttributeVector<double>& F, int e0, int e1)
-
 
144
{
-
 
145
	double F_max = 0;
-
 
146
    for(VertexID vid : mani.vertices())
-
 
147
        F[vid]=0;
-
 
148
    
-
 
149
	for(VertexID vid : mani.vertices()){
-
 
150
		for(int e = e0; e < e1; ++e)
-
 
151
			F[vid] += sqr(Q[e][vtouched[vid]]);
-
 
152
        
-
 
153
		F_max = max(F[vid], F_max);
-
 
154
	}
-
 
155
    return F_max;
-
 
156
}