[Commits] [svn:einsteintoolkit] Multipole/trunk/src/ (Rev. 92)
    ian.hinder at aei.mpg.de 
    ian.hinder at aei.mpg.de
       
    Wed Oct  9 12:55:39 CDT 2013
    
    
  
User: hinder
Date: 2013/10/09 12:55 PM
Modified:
 /trunk/src/
  integrate.cc, integrate.hh
Log:
 Add Midpoint2DIntegral as standalone function
File Changes:
Directory: /trunk/src/
======================
File [modified]: integrate.cc
Delta lines: +14 -0
===================================================================
--- trunk/src/integrate.cc	2013-10-09 17:55:22 UTC (rev 91)
+++ trunk/src/integrate.cc	2013-10-09 17:55:39 UTC (rev 92)
@@ -34,6 +34,20 @@
 
 // Hard coded 2D integrals
 
+CCTK_REAL Midpoint2DIntegral(CCTK_REAL const *f, int nx, int ny, CCTK_REAL hx, CCTK_REAL hy)
+{
+  CCTK_REAL integrand_sum = 0.0;
+  int ix = 0, iy = 0;
+
+  assert(nx > 0); assert(ny > 0); assert (f);
+
+  for (iy = 0; iy <= ny; iy++)
+    for (ix = 0; ix <= nx; ix++)
+      integrand_sum += f[idx(ix,iy)];
+
+  return hx * hy * integrand_sum;
+}
+
 static CCTK_REAL Trapezoidal2DIntegral(CCTK_REAL const *f, int nx, int ny, CCTK_REAL hx, CCTK_REAL hy)
 {
   CCTK_REAL integrand_sum = 0.0;
File [modified]: integrate.hh
Delta lines: +3 -0
===================================================================
--- trunk/src/integrate.hh	2013-10-09 17:55:22 UTC (rev 91)
+++ trunk/src/integrate.hh	2013-10-09 17:55:39 UTC (rev 92)
@@ -3,6 +3,9 @@
 #define __integrate_h
 #include "cctk.h"
 
+CCTK_REAL Midpoint2DIntegral(CCTK_REAL const *f, int nx, int ny,
+                             CCTK_REAL hx, CCTK_REAL hy);
+
 CCTK_REAL Simpson2DIntegral(CCTK_REAL const *f, int nx, int ny, 
                             CCTK_REAL hx, CCTK_REAL hy);
 
    
    
More information about the Commits
mailing list