[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