From e1a47350c7cde3e39941f84de1946c13360f15f8 Mon Sep 17 00:00:00 2001 From: Josh Meyers Date: Wed, 22 Jan 2025 16:01:33 -0800 Subject: [PATCH 01/66] Add xycoef method to DoubleZernike --- galsim/zernike.py | 14 ++++++++++++++ tests/test_zernike.py | 15 +++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/galsim/zernike.py b/galsim/zernike.py index 16643d376d..e4c23eb1cd 100644 --- a/galsim/zernike.py +++ b/galsim/zernike.py @@ -1215,6 +1215,20 @@ def __call__(self, u, v, x=None, y=None): assert np.shape(x) == np.shape(u) return horner4d(u, v, x, y, self._coef_array_uvxy) + def xycoef(self, u, v): + """Return the xy Zernike coefficients for a given uv point or points. + + Parameters: + u, v: float or array. UV point(s). + + Returns: + [npoint, jmax] array. Zernike coefficients for the given UV point(s). + """ + uu, vv = np.broadcast_arrays(u, v) + out = np.array([z(uu, vv) for z in self._xy_series]).T + out[..., 0] = 0.0 # Zero out piston term + return out + def __neg__(self): """Negate a DoubleZernike.""" if 'coef' in self.__dict__: diff --git a/tests/test_zernike.py b/tests/test_zernike.py index 3a1c91c2ca..48eed851cb 100644 --- a/tests/test_zernike.py +++ b/tests/test_zernike.py @@ -876,6 +876,21 @@ def test_dz_val(): atol=2e-13, rtol=0 ) + zk_coefs = dz.xycoef(*uv_vector) + for zk, c in zip(zk_list, zk_coefs): + # Zk may have trailing zeros... + ncoef = len(c) + np.testing.assert_allclose( + zk.coef[:ncoef], + c, + atol=2e-13, rtol=0 + ) + for i, (u, v) in enumerate(zip(*uv_vector)): + np.testing.assert_equal( + zk_coefs[i], + dz.xycoef(u, v) + ) + # Check asserts with assert_raises(AssertionError): dz(0.0, [1.0]) From d73f2a74a4786cf430d863c448d2d8e50a025199 Mon Sep 17 00:00:00 2001 From: Josh Meyers Date: Wed, 22 Jan 2025 16:46:13 -0800 Subject: [PATCH 02/66] Enable higher order annular Zernikes --- galsim/zernike.py | 2 +- tests/test_zernike.py | 51 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/galsim/zernike.py b/galsim/zernike.py index e4c23eb1cd..e49371ed5c 100644 --- a/galsim/zernike.py +++ b/galsim/zernike.py @@ -387,7 +387,7 @@ def __annular_zern_rho_coefs(n, m, eps): if i % 2 == 1: continue j = i // 2 more_coefs = (norm**j) * binomial(-eps**2, 1, j) - out[0:i+1:2] += coef*more_coefs + out[0:i+1:2] += float(coef)*more_coefs elif m == n: # Equation (25) norm = 1./np.sqrt(np.sum((eps**2)**np.arange(n+1))) out[n] = norm diff --git a/tests/test_zernike.py b/tests/test_zernike.py index 48eed851cb..d057497d4a 100644 --- a/tests/test_zernike.py +++ b/tests/test_zernike.py @@ -1568,5 +1568,56 @@ def test_dz_mean(): ) +def test_large_j(run_slow): + # The analytic form for an annular Zernike of the form (n, m) = (n, n) or (n, -n) + # is: + # r^n sincos(n theta) sqrt((2n+2) / sum_i=0^n-1 eps^(2i)) + # where sincos is sin if n is even and cos if n is odd, and eps = R_inner/R_outer. + + rng = galsim.BaseDeviate(1234).as_numpy_generator() + x = rng.uniform(-1.0, 1.0, size=100) + y = rng.uniform(-1.0, 1.0, size=100) + + R_outer = 1.0 + R_inner = 0.5 + eps = R_inner/R_outer + + test_vals = [ + (10, 1e-12), # Z66 + (20, 1e-12), # Z231 + (40, 1e-9), # Z861 + ] + if run_slow: + test_vals += [ + (60, 1e-6), # Z1891 + (80, 1e-3), # Z3321 + # (100, 10), # Z5151 # This one is catastrophic failure! + ] + + print() + for n, tol in test_vals: + j = np.sum(np.arange(n+2)) + n, m = galsim.zernike.noll_to_zern(j) + print(f"Z{j} => (n, m) = ({n}, {n})") + coefs = np.zeros(j+1) + coefs[j] = 1.0 + zk = Zernike(coefs, R_outer=R_outer, R_inner=R_inner) + + def analytic_zk(x, y): + r = np.hypot(x, y) + theta = np.arctan2(y, x) + factor = np.sqrt((2*n+2) / np.sum([eps**(2*i) for i in range(n+1)])) + if m > 0: + return r**n * np.cos(n*theta) * factor + else: + return r**n * np.sin(n*theta) * factor + + np.testing.assert_allclose( + zk(x, y), + analytic_zk(x, y), + atol=tol, rtol=tol + ) + + if __name__ == "__main__": runtests(__file__) From 4bcbd60eced2679f9c41eca417eba7239eac433d Mon Sep 17 00:00:00 2001 From: Josh Meyers Date: Thu, 23 Jan 2025 10:05:36 -0800 Subject: [PATCH 03/66] Remove py3.8 from CI --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3c470667cb..3626d39436 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: matrix: # First all python versions in basic linux os: [ ubuntu-latest ] - py: [ 3.7, 3.8, 3.9, "3.10", 3.11, 3.12 ] + py: [ 3.8, 3.9, "3.10", 3.11, 3.12 ] CC: [ gcc ] CXX: [ g++ ] FFTW_DIR: [ "/usr/local/lib" ] @@ -107,7 +107,7 @@ jobs: # Easier if eigen is installed with apt-get, but on at least one system, check that # it gets downloaded and installed properly if it isn't installed. - if ${{ matrix.py != 3.7 }}; then sudo -H apt install -y libeigen3-dev; fi + if ${{ matrix.py != 3.8 }}; then sudo -H apt install -y libeigen3-dev; fi # Need this for the mpeg tests sudo -H apt install -y ffmpeg @@ -189,7 +189,7 @@ jobs: FFTW_DIR=$FFTW_DIR pip install -vvv . - name: Check download_cosmos only if it changed. (And only on 1 runner) - if: matrix.py == 3.7 && github.base_ref != '' + if: matrix.py == 3.8 && github.base_ref != '' run: | git status git --no-pager log --graph --pretty=oneline --abbrev-commit | head -50 From 42b8fa182b64d3e40529a3fb9776939b7aa2840f Mon Sep 17 00:00:00 2001 From: Josh Meyers Date: Thu, 6 Feb 2025 09:32:29 -0800 Subject: [PATCH 04/66] Mike's comments on test_large_j --- tests/test_zernike.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/test_zernike.py b/tests/test_zernike.py index d057497d4a..acc3b371f3 100644 --- a/tests/test_zernike.py +++ b/tests/test_zernike.py @@ -1596,9 +1596,10 @@ def test_large_j(run_slow): print() for n, tol in test_vals: - j = np.sum(np.arange(n+2)) - n, m = galsim.zernike.noll_to_zern(j) - print(f"Z{j} => (n, m) = ({n}, {n})") + j = (n+1)*(n+2)//2 + _, m = galsim.zernike.noll_to_zern(j) + print(f"Z{j} => (n, m) = ({n}, {m})") + assert n == abs(m) coefs = np.zeros(j+1) coefs[j] = 1.0 zk = Zernike(coefs, R_outer=R_outer, R_inner=R_inner) From 8210fd3bf7d90efa2b286cba8ebaf6405c3a23c5 Mon Sep 17 00:00:00 2001 From: Josh Meyers Date: Thu, 6 Feb 2025 12:46:17 -0800 Subject: [PATCH 05/66] Rewrite xy_contribution as cached recursive --- galsim/zernike.py | 43 ++++++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/galsim/zernike.py b/galsim/zernike.py index e49371ed5c..61726970fd 100644 --- a/galsim/zernike.py +++ b/galsim/zernike.py @@ -140,7 +140,7 @@ def __noll_coef_array(jmax, obscuration): _noll_coef_array = LRU_Cache(__noll_coef_array) -def _xy_contribution(rho2_power, rho_power, shape): +def __xy_contribution(rho2_power, rho_power): """Convert (rho, |rho|^2) bivariate polynomial coefficients to (x, y) bivariate polynomial coefficients. """ @@ -162,25 +162,29 @@ def _xy_contribution(rho2_power, rho_power, shape): # # and so on. We can apply these operations repeatedly to effect arbitrary powers of rho or # |rho|^2. + if rho2_power == 0 and rho_power == 0: + return np.array([[1]], dtype=np.complex128) + + if rho2_power > 0: + prev = _xy_contribution(rho2_power-1, rho_power) + shape = (prev.shape[0] + 2, prev.shape[1] +2) + out = np.zeros(shape, dtype=np.complex128) + for (i, j) in zip(*np.nonzero(prev)): + val = prev[i, j] + out[i+2, j] += val + out[i, j+2] += val + return out + + # else rho_power > 0 + prev = _xy_contribution(rho2_power, rho_power-1) + shape = (prev.shape[0] + 1, prev.shape[1] + 1) out = np.zeros(shape, dtype=np.complex128) - out[0,0] = 1 - while rho2_power >= 1: - new = np.zeros_like(out) - for (i, j) in zip(*np.nonzero(out)): - val = out[i, j] - new[i+2, j] += val - new[i, j+2] += val - rho2_power -= 1 - out = new - while rho_power >= 1: - new = np.zeros_like(out) - for (i, j) in zip(*np.nonzero(out)): - val = out[i, j] - new[i+1, j] += val - new[i, j+1] += 1j*val - rho_power -= 1 - out = new + for (i, j) in zip(*np.nonzero(prev)): + val = prev[i, j] + out[i+1, j] += val + out[i, j+1] += 1j*val return out +_xy_contribution = LRU_Cache(__xy_contribution) def _rrsq_to_xy(coefs, shape): @@ -190,7 +194,8 @@ def _rrsq_to_xy(coefs, shape): # Now we loop through the elements of coefs and compute their contribution to new_coefs for (i, j) in zip(*np.nonzero(coefs)): - new_coefs += (coefs[i, j]*_xy_contribution(i, j, shape)).real + contribution = (coefs[i, j]*_xy_contribution(i, j)).real + new_coefs[:contribution.shape[0], :contribution.shape[1]] += contribution return new_coefs From 0e92b70a8f7492f26bcf2af61ab7fef6331261f2 Mon Sep 17 00:00:00 2001 From: Josh Meyers Date: Tue, 11 Feb 2025 15:11:21 -0800 Subject: [PATCH 06/66] Add robust Zernike evaluation --- galsim/zernike.py | 30 +++++++++++++++++++++++++++--- tests/test_zernike.py | 37 +++++++++++++++++++++++++------------ 2 files changed, 52 insertions(+), 15 deletions(-) diff --git a/galsim/zernike.py b/galsim/zernike.py index 61726970fd..9bace9cfa0 100644 --- a/galsim/zernike.py +++ b/galsim/zernike.py @@ -721,17 +721,40 @@ def gradY(self): newCoef /= self.R_outer return Zernike(newCoef, R_outer=self.R_outer, R_inner=self.R_inner) - def __call__(self, x, y): + def __call__(self, x, y, robust=False): """Evaluate this Zernike polynomial series at Cartesian coordinates x and y. Synonym for `evalCartesian`. + Parameters: + x: x-coordinate of evaluation points. Can be list-like. + y: y-coordinate of evaluation points. Can be list-like. + robust: If True, use a more robust method for evaluating the polynomial. + This can sometimes be slower, but is usually more accurate, + especially for large Noll indices. [default: False] + Returns: + Series evaluations as numpy array. + """ + if robust: + return self.evalCartesianRobust(x, y) + return self.evalCartesian(x, y) + + def evalCartesianRobust(self, x, y): + """Evaluate this Zernike polynomial series at Cartesian coordinates x and y using a more + robust method than the default `evalCartesian`. + Parameters: x: x-coordinate of evaluation points. Can be list-like. y: y-coordinate of evaluation points. Can be list-like. + Returns: Series evaluations as numpy array. """ - return self.evalCartesian(x, y) + x = np.asarray(x) + y = np.asarray(y) + rho = (x + 1j*y) / self.R_outer + rhosq = np.abs(rho)**2 + ar = _noll_coef_array(len(self.coef)-1, self.R_inner/self.R_outer).dot(self.coef[1:]) + return horner2d(rhosq, rho, ar).real def evalCartesian(self, x, y): """Evaluate this Zernike polynomial series at Cartesian coordinates x and y. @@ -743,7 +766,8 @@ def evalCartesian(self, x, y): Returns: Series evaluations as numpy array. """ - return horner2d(x, y, self._coef_array_xy, dtype=float) + ar = self._coef_array_xy + return horner2d(x, y, ar, dtype=float) def evalPolar(self, rho, theta): """Evaluate this Zernike polynomial series at polar coordinates rho and theta. diff --git a/tests/test_zernike.py b/tests/test_zernike.py index acc3b371f3..b4816c8635 100644 --- a/tests/test_zernike.py +++ b/tests/test_zernike.py @@ -1583,25 +1583,25 @@ def test_large_j(run_slow): eps = R_inner/R_outer test_vals = [ - (10, 1e-12), # Z66 - (20, 1e-12), # Z231 - (40, 1e-9), # Z861 + (10, 1e-12, 1e-12), # Z66 + (20, 1e-12, 1e-12), # Z231 + (40, 1e-9, 1e-12), # Z861 ] if run_slow: test_vals += [ - (60, 1e-6), # Z1891 - (80, 1e-3), # Z3321 - # (100, 10), # Z5151 # This one is catastrophic failure! + (60, 1e-6, 1e-12), # Z1891 + (80, 1e-3, 1e-12), # Z3321 + (100, None, 1e-11), # Z5151 + (200, None, 1e-11), # Z20301 ] print() - for n, tol in test_vals: + for n, tol, tol2 in test_vals: j = (n+1)*(n+2)//2 _, m = galsim.zernike.noll_to_zern(j) print(f"Z{j} => (n, m) = ({n}, {m})") assert n == abs(m) - coefs = np.zeros(j+1) - coefs[j] = 1.0 + coefs = [0]*j+[1] zk = Zernike(coefs, R_outer=R_outer, R_inner=R_inner) def analytic_zk(x, y): @@ -1613,10 +1613,23 @@ def analytic_zk(x, y): else: return r**n * np.sin(n*theta) * factor + analytic_vals = analytic_zk(x, y) + if n < 100: + np.testing.assert_allclose( + zk(x, y), + analytic_vals, + atol=tol, rtol=tol + ) + + robust_vals = zk.evalCartesianRobust(x, y) np.testing.assert_allclose( - zk(x, y), - analytic_zk(x, y), - atol=tol, rtol=tol + robust_vals, + analytic_vals, + atol=tol2, rtol=tol2 + ) + np.testing.assert_equal( + robust_vals, + zk(x, y, robust=True) ) From fe693d5d1659dc6a39a46064be2073033f6bbd72 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 20 Dec 2024 13:39:34 -0500 Subject: [PATCH 07/66] Fix #1324 and add more regression tests of maxk, stepk, etc. (#1324) --- galsim/spergel.py | 2 +- tests/test_airy.py | 33 ++++++++++++++ tests/test_box.py | 61 ++++++++++++++++++++++++++ tests/test_exponential.py | 5 +++ tests/test_gaussian.py | 6 ++- tests/test_inclined.py | 5 +++ tests/test_kolmogorov.py | 5 +++ tests/test_moffat.py | 13 ++++++ tests/test_second_kick.py | 34 +++++++++++++++ tests/test_sersic.py | 84 +++++++++++++++++++++++++++++++++++ tests/test_shapelet.py | 4 ++ tests/test_spergel.py | 92 +++++++++++++++++++++++++++++++++------ tests/test_vonkarman.py | 38 ++++++++++++++++ 13 files changed, 367 insertions(+), 15 deletions(-) diff --git a/galsim/spergel.py b/galsim/spergel.py index e0be12dc49..bd12345522 100644 --- a/galsim/spergel.py +++ b/galsim/spergel.py @@ -205,7 +205,7 @@ def _maxk(self): @property def _stepk(self): - R = self.calculateFluxRadius(1.0 - self.gsparams.folding_threshold) * self._r0 + R = self.calculateFluxRadius(1.0 - self.gsparams.folding_threshold) # Go to at least 5*hlr R = max(R, self.gsparams.stepk_minimum_hlr * self.half_light_radius) return math.pi / R diff --git a/tests/test_airy.py b/tests/test_airy.py index 4ae8c2c7fb..60edb0208e 100644 --- a/tests/test_airy.py +++ b/tests/test_airy.py @@ -222,6 +222,39 @@ def test_airy_flux_scaling(): obj2.flux, test_flux / 2., decimal=param_decimal, err_msg="Flux param inconsistent after __div__ (result).") +@timer +def test_airy_properties(): + """Test some basic properties of the Airy profile. + """ + # Regression test based on v2.3.5 version of the code. + + test_loD = 1.9 + test_obscuration = 0.32 + test_flux = 17.9 + psf = galsim.Airy(lam_over_diam=test_loD, flux=test_flux, obscuration=test_obscuration) + + # Check various properties + np.testing.assert_equal(psf.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(psf.maxk, 3.306939635357677) + np.testing.assert_almost_equal(psf.stepk, 0.027742458082373515) + np.testing.assert_almost_equal(psf.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(psf.xValue(0,0), 3.4955744341366577) + np.testing.assert_almost_equal(psf.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(psf.flux, test_flux) + np.testing.assert_almost_equal(psf.xValue(0,0), psf.max_sb) + + # Check that stepk and maxk scale correctly with lam/D + psf2 = galsim.Airy(lam_over_diam=5*test_loD, flux=test_flux, obscuration=test_obscuration) + np.testing.assert_almost_equal(psf2.maxk, psf.maxk/5) + np.testing.assert_almost_equal(psf2.stepk, psf.stepk/5) + + # Check input flux vs output flux + for inFlux in np.logspace(-2, 2, 10): + psf3 = galsim.Airy(lam_over_diam=test_loD, flux=inFlux, obscuration=test_obscuration) + outFlux = psf3.flux + np.testing.assert_almost_equal(outFlux, inFlux) + + @timer def test_airy_shoot(): """Test Airy with photon shooting. Particularly the flux of the final image. diff --git a/tests/test_box.py b/tests/test_box.py index 4c9b8f0e39..cb602ce570 100644 --- a/tests/test_box.py +++ b/tests/test_box.py @@ -241,6 +241,67 @@ def test_tophat(): approx_maxsb=True, scale=0.2) do_kvalue(conv,im, "Sheared TopHat convolved with pixel in real space") +@timer +def test_box_properties(): + """Test some basic properties of the Box profile. + """ + # Regression test based on v2.3.5 version of the code. + + test_flux = 17.9 + box = galsim.Box(width=0.2, height=0.25, flux=test_flux) + + # Check various properties + np.testing.assert_equal(box.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(box.maxk, 10000) + np.testing.assert_almost_equal(box.stepk, 12.566370614359172) + np.testing.assert_almost_equal(box.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(box.xValue(0,0), 358.0) + np.testing.assert_almost_equal(box.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(box.flux, test_flux) + np.testing.assert_almost_equal(box.xValue(0,0), box.max_sb) + + # Check that stepk and maxk scale correctly with lam/D + box2 = galsim.Box(width=5*0.2, height=5*0.25, flux=test_flux) + np.testing.assert_almost_equal(box2.maxk, box.maxk/5) + np.testing.assert_almost_equal(box2.stepk, box.stepk/5) + + # Check input flux vs output flux + for inFlux in np.logspace(-2, 2, 10): + box3 = galsim.Box(width=0.2, height=0.25, flux=inFlux) + outFlux = box3.flux + np.testing.assert_almost_equal(outFlux, inFlux) + + +@timer +def test_tophat_properties(): + """Test some basic properties of the TopHat profile. + """ + # Regression test based on v2.3.5 version of the code. + + test_flux = 17.9 + tophat = galsim.TopHat(radius=0.23, flux=test_flux) + + # Check various properties + np.testing.assert_equal(tophat.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(tophat.maxk, 593.7252723959091) + np.testing.assert_almost_equal(tophat.stepk, 13.659098493868665) + np.testing.assert_almost_equal(tophat.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(tophat.xValue(0,0), 107.70788209243577) + np.testing.assert_almost_equal(tophat.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(tophat.flux, test_flux) + np.testing.assert_almost_equal(tophat.xValue(0,0), tophat.max_sb) + + # Check that stepk and maxk scale correctly with lam/D + tophat2 = galsim.TopHat(radius=5*0.23, flux=test_flux) + np.testing.assert_almost_equal(tophat2.maxk, tophat.maxk/5) + np.testing.assert_almost_equal(tophat2.stepk, tophat.stepk/5) + + # Check input flux vs output flux + for inFlux in np.logspace(-2, 2, 10): + tophat3 = galsim.TopHat(radius=0.2, flux=inFlux) + outFlux = tophat3.flux + np.testing.assert_almost_equal(outFlux, inFlux) + @timer def test_box_shoot(): diff --git a/tests/test_exponential.py b/tests/test_exponential.py index 75fde37456..0914a85780 100644 --- a/tests/test_exponential.py +++ b/tests/test_exponential.py @@ -110,6 +110,11 @@ def test_exponential_properties(): outFlux = expon.flux np.testing.assert_almost_equal(outFlux, inFlux) + # Check that stepk and maxk scale correctly with radius + expon2 = galsim.Exponential(flux=test_flux, scale_radius=5*test_scale) + np.testing.assert_almost_equal(expon2.maxk, expon.maxk/5) + np.testing.assert_almost_equal(expon2.stepk, expon.stepk/5) + @timer def test_exponential_radii(): diff --git a/tests/test_gaussian.py b/tests/test_gaussian.py index 6435a50b63..060471363b 100644 --- a/tests/test_gaussian.py +++ b/tests/test_gaussian.py @@ -150,7 +150,7 @@ def test_gaussian_properties(): np.testing.assert_almost_equal(gauss.xValue(cen), gauss.max_sb) # Check input flux vs output flux for inFlux in np.logspace(-2, 2, 10): - gauss = galsim.Gaussian(flux=inFlux, sigma=2.) + gauss = galsim.Gaussian(flux=inFlux, sigma=test_sigma) outFlux = gauss.flux np.testing.assert_almost_equal(outFlux, inFlux) @@ -169,6 +169,10 @@ def test_gaussian_properties(): assert_raises(TypeError, gauss.xValue, cen.x, cen.y, invalid=True) assert_raises(TypeError, gauss.xValue, pos=cen) + # Check that stepk and maxk scale correctly with radius + gauss2 = galsim.Gaussian(flux=test_flux, sigma=5*test_sigma) + np.testing.assert_almost_equal(gauss2.maxk, gauss.maxk/5) + np.testing.assert_almost_equal(gauss2.stepk, gauss.stepk/5) @timer diff --git a/tests/test_inclined.py b/tests/test_inclined.py index 98062ecd32..c4d16b0ee0 100644 --- a/tests/test_inclined.py +++ b/tests/test_inclined.py @@ -527,6 +527,11 @@ def test_k_limits(run_slow): total_flux = np.sum(test_image.array) assert (total_flux-contained_flux)/total_flux <= gsparams.folding_threshold + # Check that stepk and maxk scale correctly with size + test_profile2 = get_prof(mode, inc_angle * galsim.radians, + 5*scale_radius, 5*scale_height) + np.testing.assert_almost_equal(test_profile2.maxk, test_profile.maxk/5) + np.testing.assert_almost_equal(test_profile2.stepk, test_profile.stepk/5) @timer def test_eq_ne(): diff --git a/tests/test_kolmogorov.py b/tests/test_kolmogorov.py index c535fe9cb3..dd4a39f0e6 100644 --- a/tests/test_kolmogorov.py +++ b/tests/test_kolmogorov.py @@ -162,6 +162,11 @@ def test_kolmogorov_properties(): np.testing.assert_almost_equal(out_flux, test_flux, 3, err_msg="Flux of Kolmogorov (image array) is incorrect.") + # Check that stepk and maxk scale correctly with radius + psf2 = galsim.Kolmogorov(lam_over_r0=5*lor, flux=test_flux) + np.testing.assert_almost_equal(psf2.maxk, psf.maxk/5) + np.testing.assert_almost_equal(psf2.stepk, psf.stepk/5) + @timer def test_kolmogorov_radii(): diff --git a/tests/test_moffat.py b/tests/test_moffat.py index f377166736..31aaa64c7d 100644 --- a/tests/test_moffat.py +++ b/tests/test_moffat.py @@ -166,6 +166,19 @@ def test_moffat_properties(): outFlux = psfFlux.flux np.testing.assert_almost_equal(outFlux, inFlux) + # Check that stepk and maxk scale correctly with radius + psf2 = galsim.Moffat(beta=2.0, half_light_radius=5., + trunc=5*2*fwhm_backwards_compatible, flux=test_flux) + np.testing.assert_almost_equal(psf2.maxk, psf.maxk/5) + np.testing.assert_almost_equal(psf2.stepk, psf.stepk/5) + + # Repeat without truncation + psf = galsim.Moffat(beta=5.0, half_light_radius=1., flux=test_flux) + psf2 = galsim.Moffat(beta=5.0, half_light_radius=5., flux=test_flux) + np.testing.assert_almost_equal(psf2.maxk, psf.maxk/5) + np.testing.assert_almost_equal(psf2.stepk, psf.stepk/5) + + @timer def test_moffat_maxk(): """Check accuracy of maxk given maxk_threshold diff --git a/tests/test_second_kick.py b/tests/test_second_kick.py index 7d22549ef0..4412e5d2d6 100644 --- a/tests/test_second_kick.py +++ b/tests/test_second_kick.py @@ -156,6 +156,40 @@ def test_limiting_cases(): rtol=1e-3, atol=1e-4) +@timer +def test_sk_properties(): + """Test some basic properties of the SecondKick profile. + """ + # Regression test based on v2.3.5 version of the code. + + test_flux = 1.8 + sk = galsim.SecondKick(lam=500, r0=0.2, diam=8, obscuration=0.6, kcrit=2, flux=test_flux) + + # Check various properties + np.testing.assert_equal(sk.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(sk.maxk, 487.3878716587337) + np.testing.assert_almost_equal(sk.stepk, 1.5080215526716452) + np.testing.assert_almost_equal(sk.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(sk.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(sk.flux, test_flux) + + # Check input flux vs output flux + for inFlux in np.logspace(-2, 2, 10): + skFlux = galsim.SecondKick(lam=500, r0=0.2, diam=8, obscuration=0.6, kcrit=2, flux=inFlux) + outFlux = skFlux.flux + np.testing.assert_almost_equal(outFlux, inFlux) + + # Check that stepk and maxk scale correctly with r0,L0 + sk2 = galsim.SecondKick(lam=500, r0=0.2/5, diam=8/5, obscuration=0.6, kcrit=2, flux=test_flux) + np.testing.assert_almost_equal(sk2.maxk, sk.maxk/5) + np.testing.assert_almost_equal(sk2.stepk, sk.stepk/5) + + # Equivalent if scale lam instead. + sk2 = galsim.SecondKick(lam=5*500, r0=0.2, diam=8, obscuration=0.6, kcrit=2, flux=test_flux) + np.testing.assert_almost_equal(sk2.maxk, sk.maxk/5) + np.testing.assert_almost_equal(sk2.stepk, sk.stepk/5) + + @timer def test_sk_phase_psf(run_slow): """Test that analytic second kick profile matches what can be obtained from PhaseScreenPSF with diff --git a/tests/test_sersic.py b/tests/test_sersic.py index 3ec7d50830..bed1606bf2 100644 --- a/tests/test_sersic.py +++ b/tests/test_sersic.py @@ -486,6 +486,90 @@ def test_sersic_1(): np.testing.assert_almost_equal(sersic.xValue(pos), expon.xValue(pos), decimal=5) np.testing.assert_almost_equal(sersic.kValue(pos), expon.kValue(pos), decimal=5) +@timer +def test_sersic_properties(): + """Test some basic properties of the Sersic profile. + """ + # Regression test based on v2.3.5 version of the code. + + test_flux = 1.8 + test_hlr = 2.3 + test_scale_radius_trunc = 0.04559626861897289 + test_scale_radius_notrunc = 0.009526646777227634 + test_n = 3.1 + prof = galsim.Sersic(n=test_n, half_light_radius=test_hlr, trunc=2*test_hlr, flux=test_flux) + + # Check various properties + np.testing.assert_equal(prof.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(prof.maxk, 24.663782559047256) + np.testing.assert_almost_equal(prof.stepk, 0.6829549246934334) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), 1.0238648164347117) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.xValue(0,0), prof.max_sb) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius_trunc) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Now create the same profile using scale_radius + prof = galsim.Sersic(n=test_n, scale_radius=test_scale_radius_trunc, trunc=2*test_hlr, + flux=test_flux) + np.testing.assert_almost_equal(prof.maxk, 24.663782559047256) + np.testing.assert_almost_equal(prof.stepk, 0.6829549246934334) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), 1.0238648164347117) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.xValue(0,0), prof.max_sb) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius_trunc) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Check that stepk and maxk scale correctly with radius + prof2 = galsim.Sersic(n=test_n, half_light_radius=5*test_hlr, trunc=5*2*test_hlr) + np.testing.assert_almost_equal(prof2.maxk, prof.maxk/5) + np.testing.assert_almost_equal(prof2.stepk, prof.stepk/5) + + # Check input flux vs output flux + for inFlux in np.logspace(-2, 2, 10): + prof3 = galsim.Sersic(n=test_n, half_light_radius=test_hlr, trunc=2*test_hlr, flux=inFlux) + outFlux = prof3.flux + np.testing.assert_almost_equal(outFlux, inFlux) + + # Repeat without truncation + prof = galsim.Sersic(n=test_n, half_light_radius=test_hlr, flux=test_flux) + + # Check various properties + np.testing.assert_almost_equal(prof.maxk, 50.35677579928042) + np.testing.assert_almost_equal(prof.stepk, 0.08358929429681608) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), 6.010654623502727) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.xValue(0,0), prof.max_sb) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius_notrunc) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Now create the same profile using scale_radius + prof = galsim.Sersic(n=test_n, scale_radius=test_scale_radius_notrunc, flux=test_flux) + np.testing.assert_almost_equal(prof.maxk, 50.35677579928042) + np.testing.assert_almost_equal(prof.stepk, 0.08358929429681608) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), 6.010654623502727) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.xValue(0,0), prof.max_sb) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius_notrunc) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Check that stepk and maxk scale correctly with radius + prof2 = galsim.Sersic(n=test_n, half_light_radius=5*test_hlr) + np.testing.assert_almost_equal(prof2.maxk, prof.maxk/5) + np.testing.assert_almost_equal(prof2.stepk, prof.stepk/5) + @timer def test_sersic_shoot(): diff --git a/tests/test_shapelet.py b/tests/test_shapelet.py index ff32e946e8..636874520f 100644 --- a/tests/test_shapelet.py +++ b/tests/test_shapelet.py @@ -180,6 +180,10 @@ def test_shapelet_properties(): assert_raises(TypeError, galsim.Shapelet, order=order, bvec=bvec) assert_raises(ValueError, galsim.Shapelet, sigma=sigma, order=5, bvec=bvec) + # Check that stepk and maxk scale correctly with radius + shapelet2 = galsim.Shapelet(sigma=5*sigma, order=order, bvec=bvec) + np.testing.assert_almost_equal(shapelet2.maxk, shapelet.maxk/5) + np.testing.assert_almost_equal(shapelet2.stepk, shapelet.stepk/5) @timer def test_shapelet_fit(): diff --git a/tests/test_spergel.py b/tests/test_spergel.py index 4f0358a813..f2b013aa15 100644 --- a/tests/test_spergel.py +++ b/tests/test_spergel.py @@ -106,23 +106,89 @@ def test_spergel(): def test_spergel_properties(): """Test some basic properties of the Spergel profile. """ + # Unlike some other similar tests that go back to Gary's original code, this one is based + # on v2.3.5, the earliest version that was easy for me to go back to and install. + # I also slightly modified the code for stepk and maxk to use the old _sbp version, + # since the Python version was already buggy at this point. (Inspired by issue #1324.) + test_flux = 17.9 - spergel = galsim.Spergel(nu=0.0, flux=test_flux, scale_radius=1.0) - # Check that we are centered on (0, 0) - cen = galsim.PositionD(0, 0) - np.testing.assert_equal(spergel.centroid, cen) - # # Check Fourier properties - np.testing.assert_almost_equal(spergel.kValue(cen), (1+0j) * test_flux) - maxk = spergel.maxk - assert spergel.kValue(maxk,0).real/test_flux <= galsim.GSParams().maxk_threshold - np.testing.assert_almost_equal(spergel.flux, test_flux) - np.testing.assert_almost_equal(spergel.xValue(cen), spergel.max_sb) + test_hlr = 2.3 + test_scale_radius = 1.6003703593406464 + test_nu = 0.2 # Note: nu<=0 has xValue(0,0) = inf. + prof = galsim.Spergel(nu=test_nu, half_light_radius=test_hlr, flux=test_flux) + + # Check various properties + np.testing.assert_equal(prof.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(prof.maxk, 11.094091231317272) + np.testing.assert_almost_equal(prof.stepk, 0.2731819698773733) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), 2.7808154838921206) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.xValue(0,0), prof.max_sb) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Now create the same profile using scale_radius + prof = galsim.Spergel(nu=test_nu, scale_radius=test_scale_radius, flux=test_flux) + np.testing.assert_almost_equal(prof.maxk, 11.094091231317272) + np.testing.assert_almost_equal(prof.stepk, 0.2731819698773733) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), 2.7808154838921206) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.xValue(0,0), prof.max_sb) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Check that stepk and maxk scale correctly with radius + prof2 = galsim.Spergel(nu=test_nu, half_light_radius=5*test_hlr, flux=test_flux) + np.testing.assert_almost_equal(prof2.maxk, prof.maxk/5) + np.testing.assert_almost_equal(prof2.stepk, prof.stepk/5) + # Check input flux vs output flux for inFlux in np.logspace(-2, 2, 10): - spergel = galsim.Spergel(nu=0.0, flux=inFlux, scale_radius=1.0) - outFlux = spergel.flux + prof3 = galsim.Spergel(nu=test_nu, half_light_radius=test_hlr, flux=inFlux) + outFlux = prof3.flux np.testing.assert_almost_equal(outFlux, inFlux) - np.testing.assert_almost_equal(spergel.xValue(cen), spergel.max_sb) + + # Repeat with nu < 0 + test_scale_radius2 = 2.1783499913527824 + test_nu2 = -0.2 + prof = galsim.Spergel(nu=test_nu2, half_light_radius=test_hlr, flux=test_flux) + + # Check various properties + np.testing.assert_equal(prof.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(prof.maxk, 34.42181161305098) + np.testing.assert_almost_equal(prof.stepk, 0.23712261251942787) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), np.inf) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.max_sb, np.inf) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius2) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Now create the same profile using scale_radius + prof = galsim.Spergel(nu=test_nu2, scale_radius=test_scale_radius2, flux=test_flux) + np.testing.assert_almost_equal(prof.maxk, 34.42181161305098) + np.testing.assert_almost_equal(prof.stepk, 0.23712261251942787) + np.testing.assert_almost_equal(prof.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + np.testing.assert_almost_equal(prof.xValue(0,0), np.inf) + np.testing.assert_almost_equal(prof.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(prof.flux, test_flux) + np.testing.assert_almost_equal(prof.max_sb, np.inf) + np.testing.assert_almost_equal(prof.scale_radius, test_scale_radius2) + np.testing.assert_almost_equal(prof.half_light_radius, test_hlr) + + # Check that stepk and maxk scale correctly with radius + prof2 = galsim.Spergel(nu=test_nu2, half_light_radius=5*test_hlr, flux=test_flux) + np.testing.assert_almost_equal(prof2.maxk, prof.maxk/5) + np.testing.assert_almost_equal(prof2.stepk, prof.stepk/5) @timer diff --git a/tests/test_vonkarman.py b/tests/test_vonkarman.py index 1030b93581..5f13895592 100644 --- a/tests/test_vonkarman.py +++ b/tests/test_vonkarman.py @@ -120,6 +120,44 @@ def test_vk_scale(): np.testing.assert_almost_equal(img1.array, img2.array) +@timer +def test_vk_properties(): + """Test some basic properties of the VonKarman profile. + """ + # Regression test based on v2.3.5 version of the code. + + test_flux = 1.8 + psf = galsim.VonKarman(lam=500, r0=0.2, L0=25.0, flux=test_flux) + + # Check various properties + np.testing.assert_equal(psf.centroid, galsim.PositionD(0,0)) + np.testing.assert_almost_equal(psf.maxk, 24.511275061996837) + np.testing.assert_almost_equal(psf.stepk, 1.1025979141287368) + np.testing.assert_almost_equal(psf.kValue(0,0), test_flux+0j) + np.testing.assert_almost_equal(psf.xValue(0,0), 7.91805413536067) + np.testing.assert_almost_equal(psf.kValue(0,0), (1+0j) * test_flux) + np.testing.assert_almost_equal(psf.flux, test_flux) + np.testing.assert_almost_equal(psf.xValue(0,0), psf.max_sb) + + # Check input flux vs output flux + for inFlux in np.logspace(-2, 2, 10): + psfFlux = galsim.VonKarman(lam=500, r0=0.2, L0=25.0, flux=inFlux) + outFlux = psfFlux.flux + np.testing.assert_almost_equal(outFlux, inFlux) + + # Check that stepk and maxk scale correctly with r0,L0 + psf2 = galsim.VonKarman(lam=500, r0=0.2/5, L0=25.0/5, flux=test_flux) + np.testing.assert_almost_equal(psf2.maxk, psf.maxk/5) + # This is not exact, since it's a computed quantity from the lookup table, so only + # equal to about 1%. + np.testing.assert_allclose(psf2.stepk, psf.stepk/5, rtol=0.01) + + # Equivalent if scale lam instead. + psf2 = galsim.VonKarman(lam=5*500, r0=0.2, L0=25.0, flux=test_flux) + np.testing.assert_almost_equal(psf2.maxk, psf.maxk/5) + np.testing.assert_allclose(psf2.stepk, psf.stepk/5, rtol=0.01) + + @timer def test_vk_shoot(): """Test VonKarman with photon shooting. Particularly the flux of the final image. From aa22fa6fef83adf465d17f0e8d213c52627f9d4b Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 20 Dec 2024 14:21:08 -0500 Subject: [PATCH 08/66] Add py3.13 to CI --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3626d39436..a81b133409 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: matrix: # First all python versions in basic linux os: [ ubuntu-latest ] - py: [ 3.8, 3.9, "3.10", 3.11, 3.12 ] + py: [ 3.8, 3.9, "3.10", 3.11, 3.12, 3.13 ] CC: [ gcc ] CXX: [ g++ ] FFTW_DIR: [ "/usr/local/lib" ] From ac20811b5f0981a6679762d8e7032d9e681339eb Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 20 Dec 2024 15:33:18 -0500 Subject: [PATCH 09/66] Lower precision required for one of the tests. (#1324) --- tests/test_vonkarman.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_vonkarman.py b/tests/test_vonkarman.py index 5f13895592..aa706a8913 100644 --- a/tests/test_vonkarman.py +++ b/tests/test_vonkarman.py @@ -132,7 +132,7 @@ def test_vk_properties(): # Check various properties np.testing.assert_equal(psf.centroid, galsim.PositionD(0,0)) np.testing.assert_almost_equal(psf.maxk, 24.511275061996837) - np.testing.assert_almost_equal(psf.stepk, 1.1025979141287368) + np.testing.assert_almost_equal(psf.stepk, 1.1025979141287368, decimal=6) np.testing.assert_almost_equal(psf.kValue(0,0), test_flux+0j) np.testing.assert_almost_equal(psf.xValue(0,0), 7.91805413536067) np.testing.assert_almost_equal(psf.kValue(0,0), (1+0j) * test_flux) From 967a7d85bed3ef27193f9dce37af342e873a5cd0 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 19 Feb 2025 16:39:20 -0500 Subject: [PATCH 10/66] Add Image.array setter to avoid surprising results via numpy.array math operations (#1272) --- galsim/image.py | 4 +++ tests/test_image.py | 78 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) diff --git a/galsim/image.py b/galsim/image.py index 0001b85d53..747c97a46b 100644 --- a/galsim/image.py +++ b/galsim/image.py @@ -479,6 +479,10 @@ def iscontiguous(self): """ return self._array.strides[1]//self._array.itemsize == 1 + @array.setter + def array(self, other): + self._array[:] = self._safe_cast(other) + @lazy_property def _image(self): cls = self._cpp_type[self.dtype] diff --git a/tests/test_image.py b/tests/test_image.py index 48e8be3c7d..d52d3fb1d1 100644 --- a/tests/test_image.py +++ b/tests/test_image.py @@ -1734,6 +1734,19 @@ def test_Image_inplace_add(): err_msg="Inplace add in Image class does not match reference for dtypes = " +str(types[i])+" and "+str(types[j])) + # Adding via array: + image4 = image2.copy() + image4.array += image2.array + np.testing.assert_allclose(image4.array, 2*image2.array) + image4.array[:] += image2.array + np.testing.assert_allclose(image4.array, 3*image2.array) + image4.array = image4.array + image2.array + np.testing.assert_allclose(image4.array, 4*image2.array) + with assert_raises(ValueError): + image4.array += image2.array[:2,:] + with assert_raises(ValueError): + image4.array = image4.array[:2,:] + image2.array[:2,:] + with assert_raises(ValueError): image1 += image1.subImage(galsim.BoundsI(0,4,0,4)) @@ -1776,6 +1789,19 @@ def test_Image_inplace_subtract(): err_msg="Inplace subtract in Image class does not match reference for dtypes = " +str(types[i])+" and "+str(types[j])) + # Subtracting via array: + image4 = 5*image2 + image4.array -= image2.array + np.testing.assert_allclose(image4.array, 4*image2.array) + image4.array[:] -= image2.array + np.testing.assert_allclose(image4.array, 3*image2.array) + image4.array = image4.array - image2.array + np.testing.assert_allclose(image4.array, 2*image2.array) + with assert_raises(ValueError): + image4.array -= image2.array[:2,:] + with assert_raises(ValueError): + image4.array = image4.array[:2,:] - image2.array[:2,:] + with assert_raises(ValueError): image1 -= image1.subImage(galsim.BoundsI(0,4,0,4)) @@ -1907,6 +1933,17 @@ def test_Image_inplace_scalar_add(): err_msg="Inplace scalar add in Image class does not match reference for dtype = " +str(types[i])) + # Adding via array: + image4 = image1.copy() + image4.array += 1 + np.testing.assert_allclose(image4.array, image1.array + 1) + image4.array[:] += 1 + np.testing.assert_allclose(image4.array, image1.array + 2) + image4.array = image4.array + 1 + np.testing.assert_allclose(image4.array, image1.array + 3) + with assert_raises(ValueError): + image4.array = image4.array[:2,:] + 1 + @timer def test_Image_inplace_scalar_subtract(): @@ -1961,6 +1998,17 @@ def test_Image_inplace_scalar_multiply(): err_msg="Inplace scalar multiply in Image class does" +" not match reference for dtype = "+str(types[i])) + # Multiplying via array: + image4 = image2.copy() + image4.array *= 2 + np.testing.assert_allclose(image4.array, 2*image2.array) + image4.array[:] *= 2 + np.testing.assert_allclose(image4.array, 4*image2.array) + image4.array = image4.array * 2 + np.testing.assert_allclose(image4.array, 8*image2.array) + with assert_raises(ValueError): + image4.array = image4.array[:2,:] * 2 + @timer def test_Image_inplace_scalar_divide(): @@ -1988,6 +2036,36 @@ def test_Image_inplace_scalar_divide(): err_msg="Inplace scalar divide in Image class does" +" not match reference for dtype = "+str(types[i])) + # Dividing via array: + image4 = 16*image2 + if simple_types[i] is int: + with assert_raises(TypeError): + image4.array /= 2 + with assert_raises(TypeError): + image4.array[:] /= 2 + np.testing.assert_array_equal(image4.array, 16*image2.array) # unchanged yet + image4.array //= 2 + np.testing.assert_array_equal(image4.array, 8*image2.array) + image4.array[:] //= 2 + np.testing.assert_array_equal(image4.array, 4*image2.array) + image4.array = image4.array // 2 + np.testing.assert_array_equal(image4.array, 2*image2.array) + # The following works for integer by explicitly rounding and casting. + # The native numpy operation would use floor to cast to int, which is 1 smaller. + image4.array = (image4.array / 2.0001) + np.testing.assert_array_equal(image4.array, image2.array) + with assert_raises(ValueError): + image4.array = image4.array[:2,:] // 2 + else: + image4.array /= 2 + np.testing.assert_allclose(image4.array, 8*image2.array) + image4.array[:] /= 2 + np.testing.assert_allclose(image4.array, 4*image2.array) + image4.array = image4.array / 2 + np.testing.assert_allclose(image4.array, 2*image2.array) + with assert_raises(ValueError): + image4.array = image4.array[:2,:] / 2 + @timer def test_Image_inplace_scalar_pow(): From ad9fba9710eb8bd14fdfc22f94477c72c6f0a47f Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 18 Feb 2025 13:44:45 -0500 Subject: [PATCH 11/66] Let nrecalc=0 mean recalc at the start, but then no more in that call to accumulate --- galsim/sensor.py | 51 ++++++++++++++++++++++++++++++++++++++------ tests/test_sensor.py | 20 +++++++++++++++-- 2 files changed, 63 insertions(+), 8 deletions(-) diff --git a/galsim/sensor.py b/galsim/sensor.py index 0ac2a82053..8d699a7e71 100644 --- a/galsim/sensor.py +++ b/galsim/sensor.py @@ -129,7 +129,7 @@ class SiliconSensor(Sensor): lsst_e2v_50_8 The E2V sensor being used for LSST, using 8 points along each side of the - pixel boundaries. + pixel boundaries. lsst_e2v_50_32 The E2V sensor being used for LSST, using 32 points along each side of the @@ -175,7 +175,10 @@ class SiliconSensor(Sensor): take more time. If it is increased larger than 4, the size of the Poisson simulation must be increased to match. [default: 3] nrecalc: The number of electrons to accumulate before recalculating the - distortion of the pixel shapes. [default: 10000] + distortion of the pixel shapes. If this is 0, then a recalculation + is triggered at the start of an accumulate call, but then no further + recalculation is done. Coupled with resume=True, this allows the + user to fully control when recalculations happen. [default: 10000] treering_func: A `LookupTable` giving the tree ring pattern f(r). [default: None] treering_center: A `PositionD` object with the center of the tree ring pattern in pixel coordinates, which may be outside the pixel region. [default: None; @@ -325,10 +328,43 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): if not image.bounds.isDefined(): raise GalSimUndefinedBoundsError("Calling accumulate on image with undefined bounds") - if resume: + # Cases: + # 1. Brand new image. + # - resume=False + # Set image and initialize + # Set nbatch to effective_nrecalc (or all) + # + # 2. Continuing previous image with recalc according to nrecalc + # - resume=True + # - nrecalc > 0 + # Don't initialize image. Use _last_image. + # Set nbatch to how many left in current recalc + # + # 3. Continuing previous image with manual recalculation + # - resume=True + # - nrecalc = 0 + # Don't initialize image. Use _last_image. + # Do an update at the start. + # Set nbatch to total photon flux + + nphotons = len(photons) + + if self.effective_nrecalc == 0: + # Case 3 or 1 + nbatch = np.inf # We won't actually use this, but logically this makes sense. + i2 = nphotons + if resume: + self._silicon.subtractDelta(image._image) + self._silicon.update(image._image) + else: + self._silicon.initialize(image._image, orig_center._p); + self._accum_flux_since_update = 0. + elif resume: + # Case 2 # The number in this batch is the total per recalc minus the number of photons # shot in the last pass(es) of this function since being updated. nbatch = self.effective_nrecalc - self._accum_flux_since_update + i2 = 0 # We also need to subtract off the delta image from the last pass. # This represents the flux in the image that hasn't updated the pixel boundaries @@ -337,20 +373,22 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): # not added twice. self._silicon.subtractDelta(image._image) else: + # Case 1 nbatch = self.effective_nrecalc + i2 = 0 self._silicon.initialize(image._image, orig_center._p); self._accum_flux_since_update = 0 i1 = 0 - nphotons = len(photons) # added_flux is how much flux acctually lands on the sensor. # accum_flux is how much flux is in the photons that we have accumulated so far. # cumsum_flux is an array with the cumulate sum of the photon fluxes in the photon array. added_flux = accum_flux = 0. cumsum_flux = np.cumsum(photons.flux) while i1 < nphotons: - i2 = np.searchsorted(cumsum_flux, accum_flux+nbatch) + 1 - i2 = min(i2, nphotons) + if i2 == 0: + i2 = np.searchsorted(cumsum_flux, accum_flux+nbatch) + 1 + i2 = min(i2, nphotons) added_flux += self._silicon.accumulate(photons._pa, i1, i2, self.rng._rng, image._image) if i2 < nphotons: self._silicon.update(image._image) @@ -360,6 +398,7 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): else: self._accum_flux_since_update += cumsum_flux[-1] - accum_flux i1 = i2 + i2 = 0 # On the last pass, we don't update the pixel positions, but we do need to add the # current running delta image to the full image. diff --git a/tests/test_sensor.py b/tests/test_sensor.py index c0d63ccce2..830f07e118 100644 --- a/tests/test_sensor.py +++ b/tests/test_sensor.py @@ -954,6 +954,8 @@ def test_resume(run_slow): treering_func=treering_func, treering_center=treering_center) sensor3 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=nrecalc, treering_func=treering_func, treering_center=treering_center) + sensor4 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=0, + treering_func=treering_func, treering_center=treering_center) waves = galsim.WavelengthSampler(sed = galsim.SED('1', 'nm', 'fphotons'), bandpass = galsim.Bandpass('LSST_r.dat', 'nm')) @@ -962,6 +964,7 @@ def test_resume(run_slow): im1 = galsim.ImageF(nx,ny) # Will not use resume im2 = galsim.ImageF(nx,ny) # Will use resume im3 = galsim.ImageF(nx,ny) # Will run all photons in one pass + im4 = galsim.ImageF(nx,ny) # Will recalculate manually. t_resume = 0 t_no_resume = 0 @@ -1021,12 +1024,25 @@ def test_resume(run_slow): sensor3.accumulate(all_photons, im3) np.testing.assert_array_equal(im2.array, im3.array) + # Check the manual recalculation version: + i1 = 0 + i2 = int(nrecalc) + while i1 < len(all_photons): + i2 = min(i2, len(all_photons)) + some_photons = galsim.PhotonArray(i2-i1) + some_photons.copyFrom(all_photons, source_indices=slice(i1,i2)) + sensor4.accumulate(some_photons, im4, resume=(i1 > 0)) + i1 = i2 + i2 += int(nrecalc) + # This should also be equivalent to the above 2 and 3 versions. + np.testing.assert_array_equal(im2.array, im4.array) + # If resume is used either with the wrong image or on the first call to accumulate, then # this should raise an exception. assert_raises(RuntimeError, sensor3.accumulate, all_photons, im1, resume=True) - sensor4 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=nrecalc, + sensor5 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=nrecalc, treering_func=treering_func, treering_center=treering_center) - assert_raises(RuntimeError, sensor4.accumulate, all_photons, im1, resume=True) + assert_raises(RuntimeError, sensor5.accumulate, all_photons, im1, resume=True) @timer def test_flat(run_slow): From 8b627c33457896e4a723f33288fb24bf3962806d Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 18 Feb 2025 14:06:24 -0500 Subject: [PATCH 12/66] Add recalc option for even more control --- galsim/sensor.py | 19 ++++++++++++------- tests/test_sensor.py | 34 +++++++++++++++++++++++++--------- 2 files changed, 37 insertions(+), 16 deletions(-) diff --git a/galsim/sensor.py b/galsim/sensor.py index 8d699a7e71..3445085579 100644 --- a/galsim/sensor.py +++ b/galsim/sensor.py @@ -175,10 +175,10 @@ class SiliconSensor(Sensor): take more time. If it is increased larger than 4, the size of the Poisson simulation must be increased to match. [default: 3] nrecalc: The number of electrons to accumulate before recalculating the - distortion of the pixel shapes. If this is 0, then a recalculation - is triggered at the start of an accumulate call, but then no further - recalculation is done. Coupled with resume=True, this allows the - user to fully control when recalculations happen. [default: 10000] + distortion of the pixel shapes. If this is 0, then no automatic + recalculations are done during an accumulation. Coupled with + resume=True and recalc=True options, this allows the user to fully + control when recalculations happen. [default: 10000] treering_func: A `LookupTable` giving the tree ring pattern f(r). [default: None] treering_center: A `PositionD` object with the center of the tree ring pattern in pixel coordinates, which may be outside the pixel region. [default: None; @@ -299,7 +299,7 @@ def __setstate__(self, d): self.__dict__ = d self._init_silicon() # Build the _silicon object. - def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): + def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False, recalc=False): """Accumulate the photons incident at the surface of the sensor into the appropriate pixels in the image. @@ -313,6 +313,8 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): accumulation to see what flux is already on the image, which can be more efficient, especially when the number of pixels is large. [default: False] + recalc: Whether to force a recalculation at the pixel boundaries at the + start. [default: False] Returns: the total flux that fell onto the image. @@ -344,7 +346,7 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): # - resume=True # - nrecalc = 0 # Don't initialize image. Use _last_image. - # Do an update at the start. + # Do an update at the start if recalc=True # Set nbatch to total photon flux nphotons = len(photons) @@ -355,7 +357,6 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): i2 = nphotons if resume: self._silicon.subtractDelta(image._image) - self._silicon.update(image._image) else: self._silicon.initialize(image._image, orig_center._p); self._accum_flux_since_update = 0. @@ -379,6 +380,10 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False): self._silicon.initialize(image._image, orig_center._p); self._accum_flux_since_update = 0 + if resume and recalc: + self._silicon.update(image._image) + self._accum_flux_since_update = 0 + i1 = 0 # added_flux is how much flux acctually lands on the sensor. # accum_flux is how much flux is in the photons that we have accumulated so far. diff --git a/tests/test_sensor.py b/tests/test_sensor.py index 830f07e118..9dfa502a71 100644 --- a/tests/test_sensor.py +++ b/tests/test_sensor.py @@ -930,18 +930,17 @@ def test_resume(run_slow): nx = 200 ny = 200 block_size = int(1.2e5) - nrecalc = 1.e6 + nrecalc = int(1.e6) else: flux_per_pixel = 40 nx = 20 ny = 20 block_size = int(1.3e3) - nrecalc = 1.e4 + nrecalc = int(1.e4) expected_num_photons = nx * ny * flux_per_pixel pd = galsim.PoissonDeviate(rng, mean=expected_num_photons) num_photons = int(pd()) # Poisson realization of the given expected number of photons. - #nrecalc = num_photons / 2 # Only recalc once. flux_per_photon = 1 print('num_photons = ',num_photons,' .. expected = ',expected_num_photons) @@ -956,6 +955,8 @@ def test_resume(run_slow): treering_func=treering_func, treering_center=treering_center) sensor4 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=0, treering_func=treering_func, treering_center=treering_center) + sensor5 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=0, + treering_func=treering_func, treering_center=treering_center) waves = galsim.WavelengthSampler(sed = galsim.SED('1', 'nm', 'fphotons'), bandpass = galsim.Bandpass('LSST_r.dat', 'nm')) @@ -964,7 +965,8 @@ def test_resume(run_slow): im1 = galsim.ImageF(nx,ny) # Will not use resume im2 = galsim.ImageF(nx,ny) # Will use resume im3 = galsim.ImageF(nx,ny) # Will run all photons in one pass - im4 = galsim.ImageF(nx,ny) # Will recalculate manually. + im4 = galsim.ImageF(nx,ny) # Will recalculate manually + im5 = galsim.ImageF(nx,ny) # Will recalculate manually with batches t_resume = 0 t_no_resume = 0 @@ -1026,23 +1028,37 @@ def test_resume(run_slow): # Check the manual recalculation version: i1 = 0 - i2 = int(nrecalc) + i2 = nrecalc while i1 < len(all_photons): i2 = min(i2, len(all_photons)) some_photons = galsim.PhotonArray(i2-i1) some_photons.copyFrom(all_photons, source_indices=slice(i1,i2)) - sensor4.accumulate(some_photons, im4, resume=(i1 > 0)) + sensor4.accumulate(some_photons, im4, resume=(i1>0), recalc=True) i1 = i2 - i2 += int(nrecalc) + i2 += nrecalc # This should also be equivalent to the above 2 and 3 versions. np.testing.assert_array_equal(im2.array, im4.array) + # Finally, do it again with batches smaller than nrecalc. + nbatch = nrecalc // 4 + i1 = 0 + i2 = nbatch + while i1 < len(all_photons): + i2 = min(i2, len(all_photons)) + some_photons = galsim.PhotonArray(i2-i1) + some_photons.copyFrom(all_photons, source_indices=slice(i1,i2)) + sensor5.accumulate(some_photons, im5, resume=(i1>0), recalc=(i1 % nrecalc == 0)) + i1 = i2 + i2 += nbatch + # This should also be equivalent + np.testing.assert_array_equal(im2.array, im5.array) + # If resume is used either with the wrong image or on the first call to accumulate, then # this should raise an exception. assert_raises(RuntimeError, sensor3.accumulate, all_photons, im1, resume=True) - sensor5 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=nrecalc, + sensor6 = galsim.SiliconSensor(rng=rng.duplicate(), nrecalc=nrecalc, treering_func=treering_func, treering_center=treering_center) - assert_raises(RuntimeError, sensor5.accumulate, all_photons, im1, resume=True) + assert_raises(RuntimeError, sensor6.accumulate, all_photons, im1, resume=True) @timer def test_flat(run_slow): From 56b1abaf99fc30335f1d5acc1672173127703995 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 19 Feb 2025 10:48:57 -0500 Subject: [PATCH 13/66] Fix slight logic error about accum_flux_since_update (which probably never matters). --- galsim/sensor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/galsim/sensor.py b/galsim/sensor.py index 3445085579..8520e52264 100644 --- a/galsim/sensor.py +++ b/galsim/sensor.py @@ -359,7 +359,7 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False, r self._silicon.subtractDelta(image._image) else: self._silicon.initialize(image._image, orig_center._p); - self._accum_flux_since_update = 0. + self._accum_flux_since_update = 0. elif resume: # Case 2 # The number in this batch is the total per recalc minus the number of photons From 89109196fdfed21519158e061de35d64703a2aae Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 21 Feb 2025 12:08:51 -0500 Subject: [PATCH 14/66] Update galsim/sensor.py --- galsim/sensor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/galsim/sensor.py b/galsim/sensor.py index 8520e52264..d38baaf3d2 100644 --- a/galsim/sensor.py +++ b/galsim/sensor.py @@ -313,7 +313,7 @@ def accumulate(self, photons, image, orig_center=PositionI(0,0), resume=False, r accumulation to see what flux is already on the image, which can be more efficient, especially when the number of pixels is large. [default: False] - recalc: Whether to force a recalculation at the pixel boundaries at the + recalc: Whether to force a recalculation of the pixel boundaries at the start. [default: False] Returns: From e29bd30605e4ae637155e836877ba4a1777a0695 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 19 Mar 2025 15:37:43 -0400 Subject: [PATCH 15/66] Update cibuildwheel to v2.22 --- .github/workflows/wheels.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index d41f4ed7fa..1919b8d2ed 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -16,7 +16,7 @@ jobs: - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.21.1 + uses: pypa/cibuildwheel@v2.22.0 env: CIBW_BUILD: "*manylinux*" CIBW_ARCHS: auto64 @@ -38,7 +38,7 @@ jobs: - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.21.1 + uses: pypa/cibuildwheel@v2.22.0 env: CIBW_BUILD: "*musllinux*" CIBW_ARCHS: auto64 @@ -60,7 +60,7 @@ jobs: - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.21.1 + uses: pypa/cibuildwheel@v2.22.0 env: CIBW_BUILD: "*macosx*" CIBW_ARCHS: auto64 @@ -83,7 +83,7 @@ jobs: - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.21.1 + uses: pypa/cibuildwheel@v2.22.0 env: CIBW_BUILD: "*macosx*" CIBW_ARCHS: arm64 From 6c7bbb6b5ff256c55fc6aee50c62c4782e22339e Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Mon, 24 Feb 2025 12:39:47 -0500 Subject: [PATCH 16/66] Show docs for DoubleZernike members --- docs/zernike.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/zernike.rst b/docs/zernike.rst index 80eab7368e..2e65416eeb 100644 --- a/docs/zernike.rst +++ b/docs/zernike.rst @@ -12,6 +12,7 @@ Zernike Functions .. automethod:: galsim.zernike.Zernike.__call__ .. autoclass:: galsim.zernike.DoubleZernike + :members: .. autofunction:: galsim.zernike.noll_to_zern .. autofunction:: galsim.zernike.zernikeRotMatrix From 2048e2251295d9a2c1ea678994219f0dbefe7d3b Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 18 Mar 2025 13:40:12 -0400 Subject: [PATCH 17/66] Make PhotonDCR work correctly with both sky_pos and zenith_angle --- galsim/dcr.py | 1 + tests/test_photon_array.py | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/galsim/dcr.py b/galsim/dcr.py index d79744208f..f2276aeeed 100644 --- a/galsim/dcr.py +++ b/galsim/dcr.py @@ -131,6 +131,7 @@ def parse_dcr_angles(**kwargs): if 'zenith_angle' in kwargs: zenith_angle = kwargs.pop('zenith_angle') parallactic_angle = kwargs.pop('parallactic_angle', 0.0*degrees) + kwargs.pop('obj_coord', None) # Ok if present, but want to make sure we remove it. if not isinstance(zenith_angle, Angle): raise TypeError("zenith_angle must be a galsim.Angle.") if not isinstance(parallactic_angle, Angle): diff --git a/tests/test_photon_array.py b/tests/test_photon_array.py index 2725440cb0..acc3eafa53 100644 --- a/tests/test_photon_array.py +++ b/tests/test_photon_array.py @@ -710,6 +710,12 @@ def test_dcr(): im2c = galsim.config.BuildImage(config) assert im2c == im2 + # Make sure it's ok if sky_pos is set. (This used to be a bug.) + config['sky_pos'] = galsim.CelestialCoord(15 * galsim.degrees, -25 * galsim.degrees) + galsim.config.RemoveCurrent(config) + im2d = galsim.config.BuildImage(config) + assert im2d == im2 + # Should work with fft, but not quite match (because of inexact photon locations). im3 = galsim.ImageF(50, 50, scale=pixel_scale) achrom.drawImage(image=im3, method='fft', rng=rng, photon_ops=photon_ops) From c760b8c755b8b210298db183102136a94acb10cf Mon Sep 17 00:00:00 2001 From: William Lucas Date: Wed, 16 Apr 2025 13:26:44 +0100 Subject: [PATCH 18/66] C++ Silicon pixel bounds are now floats to save memory. --- include/galsim/Silicon.h | 12 ++++++------ src/Silicon.cpp | 30 +++++++++++++++--------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/include/galsim/Silicon.h b/include/galsim/Silicon.h index a275d46e24..e1a4b6c158 100644 --- a/include/galsim/Silicon.h +++ b/include/galsim/Silicon.h @@ -46,8 +46,8 @@ namespace galsim bool insidePixel(int ix, int iy, double x, double y, double zconv, Bounds& targetBounds, bool* off_edge, int emptypolySize, - Bounds* pixelInnerBoundsData, - Bounds* pixelOuterBoundsData, + Bounds* pixelInnerBoundsData, + Bounds* pixelOuterBoundsData, Position* horizontalBoundaryPointsData, Position* verticalBoundaryPointsData, Position* emptypolyData) const; @@ -261,8 +261,8 @@ namespace galsim void initializeBoundaryPoints(int nx, int ny); void updatePixelBounds(int nx, int ny, size_t k, - Bounds* pixelInnerBoundsData, - Bounds* pixelOuterBoundsData, + Bounds* pixelInnerBoundsData, + Bounds* pixelOuterBoundsData, Position* horizontalBoundaryPointsData, Position* verticalBoundaryPointsData); @@ -270,8 +270,8 @@ namespace galsim std::vector > _horizontalBoundaryPoints; std::vector > _verticalBoundaryPoints; - std::vector > _pixelInnerBounds; - std::vector > _pixelOuterBounds; + std::vector > _pixelInnerBounds; + std::vector > _pixelOuterBounds; std::vector > _horizontalDistortions; std::vector > _verticalDistortions; int _numVertices, _nx, _ny, _nv, _qDist; diff --git a/src/Silicon.cpp b/src/Silicon.cpp index d8699ab68f..61ac00d6cb 100644 --- a/src/Silicon.cpp +++ b/src/Silicon.cpp @@ -268,8 +268,8 @@ namespace galsim { } void Silicon::updatePixelBounds(int nx, int ny, size_t k, - Bounds* pixelInnerBoundsData, - Bounds* pixelOuterBoundsData, + Bounds* pixelInnerBoundsData, + Bounds* pixelOuterBoundsData, Position* horizontalBoundaryPointsData, Position* verticalBoundaryPointsData) { @@ -279,7 +279,7 @@ namespace galsim { int y = k % ny; // compute outer bounds first - pixelOuterBoundsData[k] = Bounds(); + pixelOuterBoundsData[k] = Bounds(); // iterate over pixel boundary int n, idx; @@ -517,8 +517,8 @@ namespace galsim { } } - Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); - Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); + Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); + Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); #ifdef _OPENMP #ifndef GALSIM_USE_GPU #pragma omp parallel for @@ -663,8 +663,8 @@ namespace galsim { bool Silicon::insidePixel(int ix, int iy, double x, double y, double zconv, Bounds& targetBounds, bool* off_edge, int emptypolySize, - Bounds* pixelInnerBoundsData, - Bounds* pixelOuterBoundsData, + Bounds* pixelInnerBoundsData, + Bounds* pixelOuterBoundsData, Position* horizontalBoundaryPointsData, Position* verticalBoundaryPointsData, Position* emptypolyData) const @@ -880,8 +880,8 @@ namespace galsim { bool searchNeighbors(const Silicon& silicon, int& ix, int& iy, double x, double y, double zconv, Bounds& targetBounds, int& step, int emptypolysize, - Bounds* pixelInnerBoundsData, - Bounds* pixelOuterBoundsData, + Bounds* pixelInnerBoundsData, + Bounds* pixelOuterBoundsData, Position* horizontalBoundaryPointsData, Position* verticalBoundaryPointsData, Position* emptypolyData) @@ -1164,8 +1164,8 @@ namespace galsim { int emptypolySize = _emptypoly.size(); Position* emptypolyData = _emptypolyGPU.data(); - Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); - Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); + Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); + Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); Position* horizontalBoundaryPointsData = _horizontalBoundaryPoints.data(); Position* verticalBoundaryPointsData = _verticalBoundaryPoints.data(); @@ -1183,8 +1183,8 @@ namespace galsim { void Silicon::finalize() { #ifdef GALSIM_USE_GPU - Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); - Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); + Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); + Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); Position* horizontalBoundaryPointsData = _horizontalBoundaryPoints.data(); Position* verticalBoundaryPointsData = _verticalBoundaryPoints.data(); @@ -1383,8 +1383,8 @@ namespace galsim { int emptypolySize = _emptypoly.size(); double* deltaData = _delta.getData(); - Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); - Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); + Bounds* pixelInnerBoundsData = _pixelInnerBounds.data(); + Bounds* pixelOuterBoundsData = _pixelOuterBounds.data(); Position* horizontalBoundaryPointsData = _horizontalBoundaryPoints.data(); Position* verticalBoundaryPointsData = _verticalBoundaryPoints.data(); From 67a8876a5a5f1ce8081e96b0c393e33663f59b11 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 3 Oct 2025 18:00:49 -0400 Subject: [PATCH 19/66] Update calculateFWHM to be insensitive to np.argsort algorithmic details (#1336) --- galsim/image.py | 9 +++++++-- tests/test_calc.py | 25 +++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/galsim/image.py b/galsim/image.py index 747c97a46b..49c01871fe 100644 --- a/galsim/image.py +++ b/galsim/image.py @@ -1590,13 +1590,18 @@ def calculateFWHM(self, center=None, Imax=0.): # Find the first value with I < 0.5 * Imax k = np.argmax(data < 0.5 * Imax) - Ik = data[k] / Imax + # If there are duplicate rsq values, argmax won't be deterministic across numpy versions. + # To achieve consistent results, we take the average of all data values with the same rsq. + k2 = np.searchsorted(rsqf, rsqf[k], side='right') + Ik = np.mean(data[k:k2]) / Imax # Interpolate (linearly) between this and the previous value. if k == 0: rsqhm = rsqf[0] * (0.5 / Ik) else: - Ikm1 = data[k-1] / Imax + # Similarly, use the mean data for all rsq equal to rsqf[k-1]. + k1 = np.searchsorted(rsqf, rsqf[k-1], side='left') + Ikm1 = np.mean(data[k1:k]) / Imax rsqhm = (rsqf[k-1] * (Ik-0.5) + rsqf[k] * (0.5-Ikm1)) / (Ik-Ikm1) # This has all been done in pixels. So normalize according to the pixel scale. diff --git a/tests/test_calc.py b/tests/test_calc.py index a80e82c71f..655e8b683f 100644 --- a/tests/test_calc.py +++ b/tests/test_calc.py @@ -369,5 +369,30 @@ def test_fwhm(): err_msg="non-square image.calculateFWHM is not accurate.") +def test_fwhm_deterministic_fwhm(): + # This test was proposed by Wiliam Lucas in issue #1336. + # Numpy changed some details about how argsort works, so different numpy versions had + # given different answers to the following calculation. + + gal = galsim.Gaussian(flux=1.e5, sigma=5.) + rng = galsim.BaseDeviate(1234) + img = gal.drawImage(method='phot', rng=rng, nx=50, ny=50) + fwhm = img.calculateFWHM() + # This value used to be different on systems with different numpy versions. + # Note: this only affects situations where the center is a pixel center or pixel corner + # (or some other very special locations) such that the rsq values include repeated values. + # Then argsort could return a different data index for what pixel was the first one past + # the half max value. For symmetric profiles, even this probalby wasn't a problem, since all + # data values at that radius have the same value. But for photon shooting, there is photon + # noise, which means the values are not identical, leading to indeterminacy in the FWHM value. + print(fwhm) + + # The code was changed in GalSim version 2.7 to be insensitive to the details of what argsort + # does with repeated values. Specifically, we now take the mean of all data values with the + # same rsq value. + # Thus, this value should be consistent across any algorithmic changes numpy might make to + # how argsort works in detail. + assert np.isclose(fwhm, 13.715780373024351) + if __name__ == "__main__": runtests(__file__) From 009b99926adcc34f91715331cbc77920557128f1 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 7 Sep 2025 16:48:21 -0400 Subject: [PATCH 20/66] Fix for numpy 2.3 --- galsim/image.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/galsim/image.py b/galsim/image.py index 49c01871fe..a6d20b95bc 100644 --- a/galsim/image.py +++ b/galsim/image.py @@ -1794,7 +1794,10 @@ def __pow__(self, other): def __ipow__(self, other): if not isinstance(other, int) and not isinstance(other, float): raise TypeError("Can only raise an image to a float or int power!") - self.array[:,:] **= other + if not self.isinteger or isinstance(other, int): + self.array[:,:] **= other + else: + self.array[:,:] = self._safe_cast(self.array ** other) return self def __neg__(self): From 3b78ec8e1f7b9e730f078cceaf90b118ce5555bf Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 11:57:07 -0400 Subject: [PATCH 21/66] --debug not allowed anymore --- setup.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/setup.py b/setup.py index d18d9332ca..98fa51bc9e 100644 --- a/setup.py +++ b/setup.py @@ -102,10 +102,12 @@ def all_files_from(dir, ext=''): } # If we build with debug, undefine NDEBUG flag -# Note: setuptools stopped allowing --debug, so if we need this, we'll need to find another -# mechanism. +# Note: setuptools stopped allowing --debug, so edit this manually if you want debugging. +# (The other debug variable is just for verbose output to debug this setup script.) +full_debug = False + undef_macros = [] -if "--debug" in sys.argv: +if full_debug: undef_macros+=['NDEBUG'] for name in copt.keys(): if name != 'unknown': @@ -118,7 +120,7 @@ def all_files_from(dir, ext=''): # Verbose is the default for setuptools logging, but if it's on the command line, we take it # to mean that we should also be verbose. -if "--debug" in sys.argv or "--verbose" in sys.argv: +if full_debug or "--verbose" in sys.argv: debug = True local_tmp = 'tmp' From ba4bed0db5156f2a4040d4c701c97e87e5124b65 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 14:40:06 -0400 Subject: [PATCH 22/66] Stop pinning setuptools <72 --- .github/workflows/ci.yml | 12 +----------- .github/workflows/wheels.yml | 2 +- conda_requirements.txt | 2 +- pyproject.toml | 2 +- requirements.txt | 2 +- setup.py | 2 +- 6 files changed, 6 insertions(+), 16 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a81b133409..0d81e8c1d8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -148,7 +148,7 @@ jobs: # Do these three first to clarify potential conflicts pip install -U numpy - pip install -U "setuptools<72" + pip install -U setuptools pip install -U wheel # Standard dependencies @@ -218,16 +218,6 @@ jobs: ls build/shared_clib ls build/shared_clib/libgalsim.* - # For now, use `python setup.py test` to test linking to the shared library. - # We run some C++ tests there, and we use the shared library for linking. - # Caveats: - # 1. The C++ tests are not very comprehensive, so it won't catch all errors. - # 2. Apparently setup.py test is deprecated. I'm getting warnings when I run - # it that indicate it may go away at some point. So whenever that happens, - # we'll have to revisit this test to find another way to build and run - # the C++ tests. - GALSIM_TEST_PY=0 python setup.py test - - name: Upload coverage to codecov if: matrix.py != 'pypy-3.7' run: | diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 1919b8d2ed..5220011c43 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -128,7 +128,7 @@ jobs: - name: Install dependencies run: | python -m pip install -U pip - pip install -U numpy "setuptools<72" + pip install -U numpy setuptools pip install -U -r requirements.txt - name: Download wheels diff --git a/conda_requirements.txt b/conda_requirements.txt index a0dfb6ccd3..5e87ca011e 100644 --- a/conda_requirements.txt +++ b/conda_requirements.txt @@ -1,6 +1,6 @@ # The requirements packages that can be installed with # conda install -y -c conda-forge --file conda_requirements.txt -setuptools>=38,<72 +setuptools>=38 numpy>=1.17 astropy>=2.0 pybind11>=2.2 diff --git a/pyproject.toml b/pyproject.toml index a7d1740add..6a28f99576 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,2 +1,2 @@ [build-system] -requires = ["setuptools>=38,<72", "wheel", "pybind11>=2.2"] +requires = ["setuptools>=38", "wheel", "pybind11>=2.2"] diff --git a/requirements.txt b/requirements.txt index 52b065502d..cc9a22fe01 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ # These are in conda_requirements.txt. If using that, you may prefer to do # conda install -c conda-forge --file conda_requirements.txt # prior to running pip install -r requirements.txt -setuptools>=38,<72 +setuptools>=38 numpy>=1.17 astropy>=2.0 pybind11>=2.2 diff --git a/setup.py b/setup.py index 98fa51bc9e..41ca6de861 100644 --- a/setup.py +++ b/setup.py @@ -1345,7 +1345,7 @@ def run_tests(self): undef_macros = undef_macros, extra_link_args = ["-lfftw3"]) -build_dep = ['setuptools>=38,<72', 'pybind11>=2.2', 'numpy>=1.17'] +build_dep = ['setuptools>=38', 'pybind11>=2.2', 'numpy>=1.17'] run_dep = ['astropy', 'LSSTDESC.Coord'] test_dep = ['pytest', 'pytest-xdist', 'pytest-timeout', 'scipy', 'pyyaml'] From a2fe10dc48c8584a46e7ff471cb1a201f5c0ad92 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 14:40:20 -0400 Subject: [PATCH 23/66] Let pytest run from root dir --- pyproject.toml | 5 +++++ tests/conftest.py | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 6a28f99576..ce74a191b1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,2 +1,7 @@ [build-system] requires = ["setuptools>=38", "wheel", "pybind11>=2.2"] + +[tool.pytest.ini_options] +testpaths = [ + "tests", +] diff --git a/tests/conftest.py b/tests/conftest.py index 2ecbe8f384..3fc11db2d0 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,4 +1,11 @@ +import pytest + def pytest_addoption(parser): parser.addoption( "--run_slow", action="store_true", default=False, help="Run slow tests" ) + +# cf. https://stackoverflow.com/questions/62044541/change-pytest-working-directory-to-test-case-directory +@pytest.fixture(autouse=True) +def change_test_dir(request, monkeypatch): + monkeypatch.chdir(request.fspath.dirname) From ddca9390f170445c225a46ee8130c74be776b73c Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 14:57:54 -0400 Subject: [PATCH 24/66] Use fixtures to fix setup() function in run_examples --- tests/run_examples.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/run_examples.py b/tests/run_examples.py index f99c0b18db..413960a49d 100644 --- a/tests/run_examples.py +++ b/tests/run_examples.py @@ -26,6 +26,7 @@ import sys import logging import shutil +import pytest import galsim @@ -65,8 +66,10 @@ def check_same(f1, f2): logging.basicConfig(format="%(message)s", stream=sys.stdout) +@pytest.fixture(scope="module", autouse=True) @in_examples def setup(): + print("Removing output dirs") remove_dir('output') remove_dir('output_yaml') remove_dir('output_json') From e29184313aa4baa732dc892372e21eea1a818b67 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 15:58:21 -0400 Subject: [PATCH 25/66] Use a custom command, rather than old setuptools test command --- .github/workflows/ci.yml | 5 +++- setup.py | 50 +++++----------------------------------- 2 files changed, 10 insertions(+), 45 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0d81e8c1d8..aad8747c9d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -210,7 +210,7 @@ jobs: run: | # On a few systems (arbitrarily py3.8, where we also check mac and clang), # check the shared library creation and link. - GALSIM_BUILD_SHARED=1 python setup.py install + GALSIM_BUILD_SHARED=1 python setup.py build # These directories/files should now exist. echo "Look for the shared library:" @@ -218,6 +218,9 @@ jobs: ls build/shared_clib ls build/shared_clib/libgalsim.* + # Build and run the C++ test suite + GALSIM_RUN_TEST=1 python setup.py build + - name: Upload coverage to codecov if: matrix.py != 'pypy-3.7' run: | diff --git a/setup.py b/setup.py index 41ca6de861..10dd936666 100644 --- a/setup.py +++ b/setup.py @@ -1198,6 +1198,9 @@ def run(self): if int(os.environ.get('GALSIM_BUILD_SHARED', 0)): self.run_command("build_shared_clib") + if int(os.environ.get('GALSIM_RUN_TEST', 0)): + self.run_command("run_cpp_test") + class my_install(install): user_options = install.user_options + [('njobs=', 'j', "Number of jobs to use for compiling")] @@ -1229,24 +1232,9 @@ def run(self): install_scripts.run(self) self.distribution.script_install_dir = self.install_dir -class my_test(test): - # TODO: setuptools v72 deprecated python setup.py test, so we need to figure out another - # way to test the C++ code. For now, we are pinning setuptools to <72. - - # cf. https://pytest.readthedocs.io/en/2.7.3/goodpractises.html - user_options = [('njobs=', 'j', "Number of jobs to use in py.test")] - - def initialize_options(self): - test.initialize_options(self) - self.pytest_args = None - self.njobs = None - - def finalize_options(self): - test.finalize_options(self) - self.test_args = [] - self.test_suite = True +class my_run_cpp_test(my_build_ext): - def run_cpp_tests(self): + def run(self): builder = self.distribution.get_command_obj('build_ext') compiler = builder.compiler cflags, lflags = fix_compiler(compiler, 1) @@ -1308,32 +1296,6 @@ def run_cpp_tests(self): raise RuntimeError("C++ tests failed") print("All C++ tests passed.") - def run_tests(self): - - if int(os.environ.get('GALSIM_TEST_PY', 1)): - njobs = parse_njobs(self.njobs, 'pytest', 'test') - pytest_args = ['-n=%d'%njobs, '--timeout=60'] - original_dir = os.getcwd() - os.chdir('tests') - test_files = glob.glob('test*.py') - - import pytest - pytest.main(['--version']) - errno = pytest.main(pytest_args + test_files) - py_err = errno != 0 - - os.chdir(original_dir) - - # Build and run the C++ tests - if int(os.environ.get('GALSIM_TEST_CPP', 1)): - self.run_cpp_tests() - - if int(os.environ.get('GALSIM_TEST_PY', 1)): - if py_err: - raise RuntimeError("Some Python tests failed") - else: - print("All python tests passed.") - lib=("galsim", {'sources' : cpp_sources, 'depends' : headers + inst, @@ -1434,7 +1396,7 @@ def run_tests(self): 'install': my_install, 'install_scripts': my_install_scripts, 'easy_install': my_easy_install, - 'test': my_test, + 'run_cpp_test': my_run_cpp_test, }, entry_points = {'console_scripts' : [ 'galsim = galsim.__main__:run_main', From d21cf7cd1879ef4aa0e8be06372c36d094cfd50d Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 15:58:41 -0400 Subject: [PATCH 26/66] avoid warning about invalid escape char --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 10dd936666..6412d173f7 100644 --- a/setup.py +++ b/setup.py @@ -1330,7 +1330,7 @@ def run(self): print('GalSim version is %s'%(galsim_version)) # Write a Version.h file that has this information for people using the C++ library. -vi = re.split('\.|-',galsim_version) +vi = re.split(r'\.|-',galsim_version) version_info = tuple([int(x) for x in vi if x.isdigit()]) if len(version_info) == 2: version_info = version_info + (0,) From 9fdc3483a4be21bdd517f3069d37e3fac20391b5 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 15:59:00 -0400 Subject: [PATCH 27/66] Run single runner items on 3.12, not 3.8 --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index aad8747c9d..dee913ad46 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -107,7 +107,7 @@ jobs: # Easier if eigen is installed with apt-get, but on at least one system, check that # it gets downloaded and installed properly if it isn't installed. - if ${{ matrix.py != 3.8 }}; then sudo -H apt install -y libeigen3-dev; fi + if ${{ matrix.py != 3.12 }}; then sudo -H apt install -y libeigen3-dev; fi # Need this for the mpeg tests sudo -H apt install -y ffmpeg @@ -189,7 +189,7 @@ jobs: FFTW_DIR=$FFTW_DIR pip install -vvv . - name: Check download_cosmos only if it changed. (And only on 1 runner) - if: matrix.py == 3.8 && github.base_ref != '' + if: matrix.py == 3.12 && github.base_ref != '' run: | git status git --no-pager log --graph --pretty=oneline --abbrev-commit | head -50 @@ -206,9 +206,9 @@ jobs: # Less confusing to include it explicitly. - name: Check shared library - if: matrix.py == 3.8 + if: matrix.py == 3.12 run: | - # On a few systems (arbitrarily py3.8, where we also check mac and clang), + # On a few systems (arbitrarily py3.12, where we also check mac and clang), # check the shared library creation and link. GALSIM_BUILD_SHARED=1 python setup.py build From 2ce4f4ebb5a478dba845d07413054ad8a658d603 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 16:01:34 -0400 Subject: [PATCH 28/66] astroplan and starlink seem to work now --- .github/workflows/ci.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dee913ad46..4d61b726d0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -160,12 +160,6 @@ jobs: pip install -U matplotlib - - name: Install astroplan - # astroplan isn't yet numpy 2.0 compatible. So don't install that on 3.9+. - # I'm also getting errors with starlink, which I think may be related to - # numpy 2.0. - if: (matrix.py == 3.8) || (matrix.py == 3.9) - run: | pip install -U astroplan pip install -U starlink-pyast From 9ae3af87ba15501828d41583dbad6b614c03a9cf Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Fri, 5 Sep 2025 16:02:07 -0400 Subject: [PATCH 29/66] Remove 3.8 from ci --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4d61b726d0..d2e3ad99a0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: matrix: # First all python versions in basic linux os: [ ubuntu-latest ] - py: [ 3.8, 3.9, "3.10", 3.11, 3.12, 3.13 ] + py: [ 3.9, "3.10", 3.11, 3.12, 3.13 ] CC: [ gcc ] CXX: [ g++ ] FFTW_DIR: [ "/usr/local/lib" ] From ace62abfdd2dce760e6d0a16b592b33dc98b6731 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 7 Sep 2025 15:06:05 -0400 Subject: [PATCH 30/66] Starlink doesn't work on CI anymore. --- .github/workflows/ci.yml | 8 ++++++++ galsim/fitswcs.py | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d2e3ad99a0..8eb23a99dc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -161,6 +161,14 @@ jobs: pip install -U matplotlib pip install -U astroplan + + # Starlink doesn't seem to work anymore. Even with numpy 1.x, I'm getting + # "ModuleNotFoundError: No module named 'numpy'" when building the wheel. + # This after already installing numpy, so it should be there. + # Revisit from time to time to see if they fix it. + - name: Install starlink + if: 0 + run: | pip install -U starlink-pyast - name: Install CPython-only dependencies diff --git a/galsim/fitswcs.py b/galsim/fitswcs.py index a85947e060..7a80c8ce0b 100644 --- a/galsim/fitswcs.py +++ b/galsim/fitswcs.py @@ -307,7 +307,7 @@ def __setstate__(self, d): self._wcs = self._load_from_header(self.header) -class PyAstWCS(CelestialWCS): +class PyAstWCS(CelestialWCS): # pragma: no cover """This WCS uses PyAst (the python front end for the Starlink AST code) to read WCS information from a FITS file. It requires the starlink.Ast python module to be installed. From 6a60d0a87c58e3a58f521d4b823e3e47425eda1f Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Mon, 27 Oct 2025 14:57:32 -0400 Subject: [PATCH 31/66] Add 3.14 to ci --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8eb23a99dc..6fda7ddaaf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: matrix: # First all python versions in basic linux os: [ ubuntu-latest ] - py: [ 3.9, "3.10", 3.11, 3.12, 3.13 ] + py: [ 3.9, "3.10", 3.11, 3.12, 3.13, 3.14 ] CC: [ gcc ] CXX: [ g++ ] FFTW_DIR: [ "/usr/local/lib" ] From 50cc4d918a90b42ea6150a7c0b5103e406c5793e Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Mon, 27 Oct 2025 16:22:20 -0400 Subject: [PATCH 32/66] Fix coverage from not including starlink in test suite anymore --- galsim/table.py | 4 ++-- tests/test_fitsheader.py | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/galsim/table.py b/galsim/table.py index 2fa69620af..1eef0926a6 100644 --- a/galsim/table.py +++ b/galsim/table.py @@ -951,7 +951,7 @@ def __call__(self, x, y, grid=False): Returns: a scalar value if x and y are scalar, or a numpy array if x and y are arrays. """ - if np.__version__ >= "2.0": + if np.__version__ >= "2.0": # pragma: no branch # I'm not sure if there is a simpler way to do this in 2.0. # We want a copy when edge_mode == wrap. Otherwise, only copy if dtype changes or # x,y aren't already arrays. That used to be simple... @@ -1071,7 +1071,7 @@ def gradient(self, x, y, grid=False): A tuple of (dfdx, dfdy) where dfdx, dfdy are single values (if x,y were single values) or numpy arrays. """ - if np.__version__ >= "2.0": + if np.__version__ >= "2.0": # pragma: no branch copy = True if self.edge_mode=='wrap' else None else: copy = self.edge_mode=='wrap' diff --git a/tests/test_fitsheader.py b/tests/test_fitsheader.py index 8153225662..a1eaefeef7 100644 --- a/tests/test_fitsheader.py +++ b/tests/test_fitsheader.py @@ -75,6 +75,11 @@ def check_tpv(header): header = galsim.FitsHeader(file_name=file_name, dir=dir, hdu=0) check_tpv(header) check_pickle(header) + # Can also pass the hdu itself. + with pyfits.open(os.path.join(dir,file_name)) as hdu_list: + header = galsim.FitsHeader(hdu_list=hdu_list[0]) + check_tpv(header) + check_pickle(header) # If you pass in a pyfits Header object, that should also work with pyfits.open(os.path.join(dir,file_name)) as hdu_list: header = galsim.FitsHeader(header=hdu_list[0].header) From e30a7f53a8e4eff6736caaa85b2b29793dcceace Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Mon, 8 Dec 2025 17:26:02 -0500 Subject: [PATCH 33/66] Add docs to RealGalaxyCatalog.close() (#1333) --- galsim/real.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/galsim/real.py b/galsim/real.py index 1d58eb5904..ca1af17839 100644 --- a/galsim/real.py +++ b/galsim/real.py @@ -548,8 +548,8 @@ def __init__(self, file_name=None, sample=None, dir=None, preload=False, logger= logger.debug('RealGalaxyCatalog %s has %d objects',self.file_name,self.nobjects) self._preload = preload - self.loaded_files = {} self.saved_noise_im = {} + self.loaded_files = {} # The pyfits commands aren't thread safe. So we need to make sure the methods that # use pyfits are not run concurrently from multiple threads. self.gal_lock = Lock() # Use this when accessing gal files @@ -647,13 +647,22 @@ def __del__(self): self.close() def close(self): + """Close all loaded files. + + Usually it is a performance improvement to keep the various input files open while using + the RealGalaxyCatalog, especially if the access of the galaxies is in semi-random order. + However, if you want to release the memory tied up in these files before the + RealGalaxyCatalog goes out of scope, then this method will release the memroy directly. + """ # Need to close any open files. # Make sure to check if loaded_files exists, since the constructor could abort # before it gets to the place where loaded_files is built. if hasattr(self, 'loaded_files'): for f in self.loaded_files.values(): f.close() - self.loaded_files = {} + self.loaded_files.clear() + # Also release the memory in the noise images, even though this is usually negligible. + self.saved_noise_im.clear() def getNObjects(self) : return self.nobjects def __len__(self): return self.nobjects From 1fd5ca87354196ae2db6ed0fea68fba451b95a51 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 00:29:52 -0500 Subject: [PATCH 34/66] Update galsim/real.py Co-authored-by: Rachel Mandelbaum --- galsim/real.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/galsim/real.py b/galsim/real.py index ca1af17839..a39e5ed2bc 100644 --- a/galsim/real.py +++ b/galsim/real.py @@ -652,7 +652,7 @@ def close(self): Usually it is a performance improvement to keep the various input files open while using the RealGalaxyCatalog, especially if the access of the galaxies is in semi-random order. However, if you want to release the memory tied up in these files before the - RealGalaxyCatalog goes out of scope, then this method will release the memroy directly. + RealGalaxyCatalog goes out of scope, then this method will release the memory directly. """ # Need to close any open files. # Make sure to check if loaded_files exists, since the constructor could abort From bb4274cd58e9b73fcc9cab5236a46b2d21800d9c Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 00:37:20 -0500 Subject: [PATCH 35/66] Add note in RGC class doc about close method (#1333) --- galsim/real.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/galsim/real.py b/galsim/real.py index a39e5ed2bc..01c144ea16 100644 --- a/galsim/real.py +++ b/galsim/real.py @@ -508,6 +508,14 @@ class RealGalaxyCatalog: GalSim knows the location of the installation share directory, so it will automatically look for it there. + .. note:: + + A RealGalaxyCatalog instance will cache data from the input files that it loads. + Normally, this leads to a performance improvement, especially if objects are selected + from the catalog semi-randomly, since it is faster to access the data in memory. + If you want to free the cached memory before the RealGalaxyCatalog goes out of + scope, you can use the `close` method to do so. + Parameters: file_name: The file containing the catalog. [default: None, which will look for the F814W<25.2 COSMOS catalog in $PREFIX/share/galsim. It will raise an From b5be962c8a1cbc20c22a51d77ef1871f93ca90d7 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 12:24:13 -0500 Subject: [PATCH 36/66] Emit warnings for large FFT rather than raising GalSimFFTSizeError (#1332) --- galsim/errors.py | 31 +++++++++++++++++++++++++++++-- galsim/gsobject.py | 5 +++-- galsim/phase_psf.py | 6 +++--- tests/test_chromatic.py | 4 ++-- tests/test_config_gsobject.py | 2 +- tests/test_phase_psf.py | 14 ++++++++------ 6 files changed, 46 insertions(+), 16 deletions(-) diff --git a/galsim/errors.py b/galsim/errors.py index 01b1be4082..40de46693b 100644 --- a/galsim/errors.py +++ b/galsim/errors.py @@ -25,8 +25,8 @@ 'GalSimSEDError', 'GalSimHSMError', 'GalSimFFTSizeError', 'GalSimConfigError', 'GalSimConfigValueError', 'GalSimNotImplementedError', - 'GalSimWarning', 'GalSimDeprecationWarning', - 'convert_cpp_errors', 'galsim_warn', ] + 'GalSimWarning', 'GalSimDeprecationWarning', 'GalSimFFTSizeWarning', + 'convert_cpp_errors', 'galsim_warn', 'galsim_warn_fft' ] import warnings from contextlib import contextmanager @@ -412,6 +412,33 @@ class GalSimDeprecationWarning(GalSimWarning): """ def __repr__(self): return 'galsim.GalSimDeprecationWarning(%r)'%(str(self)) +class GalSimFFTSizeWarning(GalSimWarning): + """A GalSim-specific warning class indicating that a requested FFT exceeds the relevant + maximum_fft_size. + + Attributes: + size: The size that was deemed too large + mem: The estimated memory that would be required (in GB) for the FFT. + """ + def __init__(self, message, size): + self.message = message + self.size = size + self.mem = size * size * 24. / 1024**3 + message += "\nThe required FFT size would be {0} x {0}, which requires ".format(size) + message += "{0:.2f} GB of memory.\n".format(self.mem) + message += "If you can handle the large FFT and want to suppress this warning, " + message += "you may update gsparams.maximum_fft_size." + super(GalSimFFTSizeWarning, self).__init__(message) + def __repr__(self): + return 'galsim.GalSimFFTSizeWarning(%r,%r)'%(self.message, self.size) + def __reduce__(self): + return GalSimFFTSizeWarning, (self.message, self.size) + + +def galsim_warn_fft(message, size): + warnings.warn(GalSimFFTSizeWarning(message, size)) + + @contextmanager def convert_cpp_errors(error_type=GalSimError): try: diff --git a/galsim/gsobject.py b/galsim/gsobject.py index 4be5872097..fcffa4f3ed 100644 --- a/galsim/gsobject.py +++ b/galsim/gsobject.py @@ -27,7 +27,8 @@ from .position import _PositionD, _PositionI, Position, parse_pos_args from ._utilities import lazy_property from .errors import GalSimError, GalSimRangeError, GalSimValueError, GalSimIncompatibleValuesError -from .errors import GalSimFFTSizeError, GalSimNotImplementedError, convert_cpp_errors, galsim_warn +from .errors import GalSimNotImplementedError, convert_cpp_errors +from .errors import galsim_warn, galsim_warn_fft from .image import Image, ImageD, ImageF, ImageCD, ImageCF from .shear import Shear, _Shear from .angle import Angle @@ -1968,7 +1969,7 @@ def drawFFT_makeKImage(self, image): Nk = int(np.ceil(maxk/dk)) * 2 if Nk > self.gsparams.maximum_fft_size: - raise GalSimFFTSizeError("drawFFT requires an FFT that is too large.", Nk) + galsim_warn_fft("drawFFT requires a very large FFT.", Nk) bounds = _BoundsI(0,Nk//2,-Nk//2,Nk//2) if image.dtype in (np.complex128, np.float64, np.int32, np.uint32): diff --git a/galsim/phase_psf.py b/galsim/phase_psf.py index 003881ba45..5e2099d37e 100644 --- a/galsim/phase_psf.py +++ b/galsim/phase_psf.py @@ -34,7 +34,7 @@ from .interpolatedimage import InterpolatedImage from .utilities import doc_inherit, OrderedWeakRef, rotate_xy, lazy_property, basestring from .errors import GalSimValueError, GalSimRangeError, GalSimIncompatibleValuesError -from .errors import GalSimFFTSizeError, galsim_warn +from .errors import galsim_warn, galsim_warn_fft from .photon_array import TimeSampler, PhotonArray from .airy import Airy from .second_kick import SecondKick @@ -328,7 +328,7 @@ def _generate_pupil_plane(self): # Check FFT size if self._npix > self.gsparams.maximum_fft_size: - raise GalSimFFTSizeError("Created pupil plane array that is too large.",self._npix) + galsim_warn_fft("Created pupil plane array that is too large.",self._npix) # Shrink scale such that size = scale * npix exactly. self._pupil_plane_scale = self._pupil_plane_size / self._npix @@ -383,7 +383,7 @@ def _load_pupil_plane(self): # Check FFT size if self._npix > self.gsparams.maximum_fft_size: - raise GalSimFFTSizeError("Loaded pupil plane array that is too large.", self._npix) + galsim_warn_fft("Loaded pupil plane array that is too large.", self._npix) # Sanity checks if self._pupil_plane_im.array.shape[0] != self._pupil_plane_im.array.shape[1]: diff --git a/tests/test_chromatic.py b/tests/test_chromatic.py index 4eccb9a4a6..4c1603e080 100644 --- a/tests/test_chromatic.py +++ b/tests/test_chromatic.py @@ -1493,7 +1493,7 @@ def test_gsparams(): # getting properly forwarded through the internals of ChromaticObjects. gsparams = galsim.GSParams(maximum_fft_size=16) gal = galsim.Gaussian(fwhm=1, gsparams=gsparams) * bulge_SED - with assert_raises(galsim.GalSimFFTSizeError): + with assert_warns(galsim.GalSimFFTSizeWarning): gal.drawImage(bandpass) assert (galsim.Gaussian(fwhm=1) * bulge_SED) != gal assert (galsim.Gaussian(fwhm=1) * bulge_SED).withGSParams(gsparams) == gal @@ -1503,7 +1503,7 @@ def test_gsparams(): gal = galsim.Gaussian(fwhm=1) * bulge_SED psf = galsim.Gaussian(sigma=0.4) final = galsim.Convolve([gal, psf], gsparams=gsparams) - with assert_raises(galsim.GalSimFFTSizeError): + with assert_warns(galsim.GalSimFFTSizeWarning): final.drawImage(bandpass) # Use a restrictive one this time, so we test the "most restrictive gsparams" feature diff --git a/tests/test_config_gsobject.py b/tests/test_config_gsobject.py index 6eba44ee8a..bec54a181b 100644 --- a/tests/test_config_gsobject.py +++ b/tests/test_config_gsobject.py @@ -669,7 +669,7 @@ def test_sersic(): # and would be rather slow. gal6a = galsim.config.BuildGSObject(config, 'gal6')[0] gal6b = galsim.Sersic(n=0.7, half_light_radius=1, flux=50) - with assert_raises(galsim.GalSimFFTSizeError): + with assert_warns(galsim.GalSimFFTSizeWarning): gsobject_compare(gal6a, gal6b, conv=galsim.Gaussian(sigma=1)) gal7a = galsim.config.BuildGSObject(config, 'gal7')[0] diff --git a/tests/test_phase_psf.py b/tests/test_phase_psf.py index 78bac176ca..1cebc38eb2 100644 --- a/tests/test_phase_psf.py +++ b/tests/test_phase_psf.py @@ -79,18 +79,20 @@ def test_aperture(): np.testing.assert_almost_equal(stepk, 2.*np.pi/size) np.testing.assert_almost_equal(maxk, np.pi/scale) - # If the constructed pupil plane would be too large, raise an error - with assert_raises(galsim.GalSimFFTSizeError): - ap = galsim.Aperture(1.7, pupil_plane_scale=1.e-4) + # If the constructed pupil plane would be too large, emit a warning + # For testing this and the next one, we change gsparams.maximum_fft_size, rather than try + # to build or load a really large image. + with assert_warns(galsim.GalSimFFTSizeWarning): + ap = galsim.Aperture(1.7, pupil_plane_scale=0.01, + gsparams=galsim.GSParams(maximum_fft_size=64)) ap._illuminated # Only triggers once we force it to build the illuminated array # Similar if the given image is too large. - # Here, we change gsparams.maximum_fft_size, rather than build a really large image to load. - with assert_raises(galsim.GalSimFFTSizeError): + with assert_warns(galsim.GalSimFFTSizeWarning): ap = galsim.Aperture(1.7, pupil_plane_im=im, gsparams=galsim.GSParams(maximum_fft_size=64)) ap._illuminated - # Other choices just give warnings about pupil scale or size being inappropriate + # Other choices give warnings about pupil scale or size being inappropriate with assert_warns(galsim.GalSimWarning): ap = galsim.Aperture(diam=1.7, pupil_plane_size=3, pupil_plane_scale=0.03) ap._illuminated From 175a5d546f6feb2daa51a132d71f4f3ba6695e6a Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 12:31:42 -0500 Subject: [PATCH 37/66] Deprecate GalSimFFTSizeError (#1332) --- galsim/errors.py | 9 +++------ tests/test_deprecated.py | 18 ++++++++++++++++++ tests/test_errors.py | 15 --------------- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/galsim/errors.py b/galsim/errors.py index 40de46693b..a772536ecb 100644 --- a/galsim/errors.py +++ b/galsim/errors.py @@ -125,10 +125,6 @@ # GalSimHSMError: Use this for errors from the HSM algorithm. They are emitted in C++, but # we use `with convert_cpp_errors(GalSimHSMError):` to convert them. # -# GalSimFFTSizeError: Use this when a requested FFT would exceed the relevant maximum_fft_size -# for the object, so the recommendation is raise this parameter if that -# is possible. -# # GalSimConfigError: Use this for errors processing a config dict. # # GalSimConfigValueError: Use this when a config dict has a value that is invalid. Basically, @@ -345,6 +341,9 @@ class GalSimFFTSizeError(GalSimError): mem: The estimated memory that would be required (in GB) for the FFT. """ def __init__(self, message, size): + from .deprecated import depr + depr(GalSimFFTSizeError, 2.7, '', + "Cases that used to raise GalSimFFTSizeError now emit a GalSimFFTSizeWarning instead.") self.message = message self.size = size self.mem = size * size * 24. / 1024**3 @@ -434,11 +433,9 @@ def __repr__(self): def __reduce__(self): return GalSimFFTSizeWarning, (self.message, self.size) - def galsim_warn_fft(message, size): warnings.warn(GalSimFFTSizeWarning(message, size)) - @contextmanager def convert_cpp_errors(error_type=GalSimError): try: diff --git a/tests/test_deprecated.py b/tests/test_deprecated.py index ea7141914a..b814e69c3c 100644 --- a/tests/test_deprecated.py +++ b/tests/test_deprecated.py @@ -968,6 +968,24 @@ def test_save_photons(): assert np.allclose(np.sum(image.photons.flux), flux, rtol=0.1) repr(obj) +@timer +def test_galsim_fft_size_error(): + """Test basic usage of GalSimFFTSizeError + """ + # This feela a little gratuitous, since almost certainly no one used GalSimFFTSizeError + # for anything directly. Even catching it seems unlikely. But it was technically part + # of our API, so just deprecate it and make sure it still works appropriately. + err = check_dep(galsim.GalSimFFTSizeError, "Test FFT is too big.", 10240) + print('str = ',str(err)) + print('repr = ',repr(err)) + assert str(err) == ("Test FFT is too big.\nThe required FFT size would be 10240 x 10240, " + "which requires 2.34 GB of memory.\nIf you can handle " + "the large FFT, you may update gsparams.maximum_fft_size.") + assert err.size == 10240 + np.testing.assert_almost_equal(err.mem, 2.34375) + assert isinstance(err, galsim.GalSimError) + + if __name__ == "__main__": runtests(__file__) diff --git a/tests/test_errors.py b/tests/test_errors.py index f407857aed..1270cea323 100644 --- a/tests/test_errors.py +++ b/tests/test_errors.py @@ -203,21 +203,6 @@ def test_galsim_hsm_error(): check_pickle(err) -@timer -def test_galsim_fft_size_error(): - """Test basic usage of GalSimFFTSizeError - """ - err = galsim.GalSimFFTSizeError("Test FFT is too big.", 10240) - print('str = ',str(err)) - print('repr = ',repr(err)) - assert str(err) == ("Test FFT is too big.\nThe required FFT size would be 10240 x 10240, " - "which requires 2.34 GB of memory.\nIf you can handle " - "the large FFT, you may update gsparams.maximum_fft_size.") - assert err.size == 10240 - np.testing.assert_almost_equal(err.mem, 2.34375) - assert isinstance(err, galsim.GalSimError) - check_pickle(err) - @timer def test_galsim_config_error(): From d1f72bf9c42add3cec459760dd5d2455554b78cc Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 12:46:37 -0500 Subject: [PATCH 38/66] Update some docs for new behavior (#1332) --- galsim/errors.py | 2 +- galsim/gsobject.py | 14 ++++---------- galsim/gsparams.py | 18 ++++++++++-------- 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/galsim/errors.py b/galsim/errors.py index a772536ecb..2302b4b2a4 100644 --- a/galsim/errors.py +++ b/galsim/errors.py @@ -425,7 +425,7 @@ def __init__(self, message, size): self.mem = size * size * 24. / 1024**3 message += "\nThe required FFT size would be {0} x {0}, which requires ".format(size) message += "{0:.2f} GB of memory.\n".format(self.mem) - message += "If you can handle the large FFT and want to suppress this warning, " + message += "If you can handle the large FFT and want to suppress this warning,\n" message += "you may update gsparams.maximum_fft_size." super(GalSimFFTSizeWarning, self).__init__(message) def __repr__(self): diff --git a/galsim/gsobject.py b/galsim/gsobject.py index fcffa4f3ed..d998d743fb 100644 --- a/galsim/gsobject.py +++ b/galsim/gsobject.py @@ -163,17 +163,11 @@ class GSObject: >>> conv = galsim.Convolve([gal,psf]) >>> im = galsim.Image(1000,1000, scale=0.02) # Note the very small pixel scale! >>> im = conv.drawImage(image=im) # This uses the default GSParams. - Traceback (most recent call last): - File "", line 1, in - File "galsim/gsobject.py", line 1666, in drawImage - added_photons = prof.drawFFT(draw_image, add) - File "galsim/gsobject.py", line 1877, in drawFFT - kimage, wrap_size = self.drawFFT_makeKImage(image) - File "galsim/gsobject.py", line 1802, in drawFFT_makeKImage - raise GalSimFFTSizeError("drawFFT requires an FFT that is too large.", Nk) - galsim.errors.GalSimFFTSizeError: drawFFT requires an FFT that is too large. + galsim/errors.py:437: GalSimFFTSizeWarning: drawFFT requires a very large FFT. The required FFT size would be 12288 x 12288, which requires 3.38 GB of memory. - If you can handle the large FFT, you may update gsparams.maximum_fft_size. + If you can handle the large FFT and want to suppress this warning, + you may update gsparams.maximum_fft_size. + warnings.warn(GalSimFFTSizeWarning(message, size)) >>> big_fft_params = galsim.GSParams(maximum_fft_size=12300) >>> conv = galsim.Convolve([gal,psf],gsparams=big_fft_params) >>> im = conv.drawImage(image=im) # Now it works (but is slow!) diff --git a/galsim/gsparams.py b/galsim/gsparams.py index f032083652..64f10868ee 100644 --- a/galsim/gsparams.py +++ b/galsim/gsparams.py @@ -43,14 +43,16 @@ class GSParams: Parameters: minimum_fft_size: The minimum size of any FFT that may need to be performed. [default: 128] - maximum_fft_size: The maximum allowed size of an image for performing an FFT. This - is more about memory use than accuracy. We have this maximum - value to help prevent the user from accidentally trying to perform - an extremely large FFT that crashes the program. Instead, GalSim - will raise an exception indicating that the image is too large, - which is often a sign of an error in the user's code. However, if - you have the memory to handle it, you can raise this limit to - allow the calculation to happen. [default: 8192] + maximum_fft_size: The maximum allowed size of an image for performing an FFT without + warning. This is more about memory use than accuracy. We have this + maximum value to inform a user who accidentally performs an extremely + large FFT why they just crashed the program. GalSim used to + raise an exception indicating that the image is too large, + which is often a sign of an error in the user's code. However, we + now just emit a warning about the large FFT, so if the code crashes + you have some indication of why. If you have the memory to handle it, + you can raise this limit to allow the calculation to happen without + seeing the warning. [default: 8192] folding_threshold: This sets a maximum amount of real space folding that is allowed, an effect caused by the periodic nature of FFTs. FFTs implicitly use periodic boundary conditions, and a profile specified on a From 9b08b27b7b06d4fc8090c0ab03f7009f1944a6a7 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 15:34:29 -0500 Subject: [PATCH 39/66] coverage (#1332) --- tests/test_deprecated.py | 1 - tests/test_errors.py | 11 +++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/test_deprecated.py b/tests/test_deprecated.py index b814e69c3c..f0aa5c0dbc 100644 --- a/tests/test_deprecated.py +++ b/tests/test_deprecated.py @@ -986,6 +986,5 @@ def test_galsim_fft_size_error(): assert isinstance(err, galsim.GalSimError) - if __name__ == "__main__": runtests(__file__) diff --git a/tests/test_errors.py b/tests/test_errors.py index 1270cea323..c315dfd4de 100644 --- a/tests/test_errors.py +++ b/tests/test_errors.py @@ -281,6 +281,17 @@ def test_galsim_deprecation_warning(): assert isinstance(err, UserWarning) check_pickle(err) +@timer +def test_galsim_fftsize_warning(): + """Test basic usage of GalSimDeprecationWarning + """ + err = galsim.GalSimFFTSizeWarning("Test", 10240) + print('str = ',str(err)) + print('repr = ',repr(err)) + assert str(err).startswith("Test") + assert isinstance(err, UserWarning) + check_pickle(err) + if __name__ == "__main__": runtests(__file__) From a25d5a46256420b5b93889a5b29b14c491fb6785 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 20:40:14 -0500 Subject: [PATCH 40/66] Add some slight slop on time sampler test to allow for rare values at edge of range. (#1332) --- tests/test_phase_psf.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_phase_psf.py b/tests/test_phase_psf.py index 1cebc38eb2..658feb2e92 100644 --- a/tests/test_phase_psf.py +++ b/tests/test_phase_psf.py @@ -1539,8 +1539,8 @@ def test_t_persistence(): nphot = 1_000_000 photons = psf.drawImage(save_photons=True, method='phot', n_photons=nphot).photons assert photons.hasAllocatedTimes() - assert np.min(photons.time) > 10.0 - assert np.max(photons.time) < 25.0 + assert np.min(photons.time) >= 10.0 + assert np.max(photons.time) <= 25.0 + 1.e-10 # slight slop to allow for numerical imprecision @timer From 6ece650dea86c6bb5273156c372ce6bc1dbb5be5 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 9 Dec 2025 21:59:00 -0500 Subject: [PATCH 41/66] coverage (#1332) --- tests/test_deprecated.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/test_deprecated.py b/tests/test_deprecated.py index f0aa5c0dbc..6f921a948d 100644 --- a/tests/test_deprecated.py +++ b/tests/test_deprecated.py @@ -17,6 +17,7 @@ # import os +import warnings import numpy as np import galsim @@ -984,6 +985,10 @@ def test_galsim_fft_size_error(): assert err.size == 10240 np.testing.assert_almost_equal(err.mem, 2.34375) assert isinstance(err, galsim.GalSimError) + with warnings.catch_warnings(): + warnings.filterwarnings("ignore",category=galsim.GalSimDeprecationWarning) + check_pickle(err) + if __name__ == "__main__": From 79e379a8d3a0e0b7f294a6dc6c6f43312f914870 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 17 Dec 2025 10:10:58 -0500 Subject: [PATCH 42/66] Not 'too' large anymore (#1332) --- galsim/phase_psf.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/galsim/phase_psf.py b/galsim/phase_psf.py index 5e2099d37e..e1181f8bf8 100644 --- a/galsim/phase_psf.py +++ b/galsim/phase_psf.py @@ -328,7 +328,7 @@ def _generate_pupil_plane(self): # Check FFT size if self._npix > self.gsparams.maximum_fft_size: - galsim_warn_fft("Created pupil plane array that is too large.",self._npix) + galsim_warn_fft("Created pupil plane array that will need a very large fft.",self._npix) # Shrink scale such that size = scale * npix exactly. self._pupil_plane_scale = self._pupil_plane_size / self._npix @@ -383,7 +383,7 @@ def _load_pupil_plane(self): # Check FFT size if self._npix > self.gsparams.maximum_fft_size: - galsim_warn_fft("Loaded pupil plane array that is too large.", self._npix) + galsim_warn_fft("Loaded pupil plane array that will need a very large fft.",self._npix) # Sanity checks if self._pupil_plane_im.array.shape[0] != self._pupil_plane_im.array.shape[1]: From 3e388af5849c54361464ad22270d88726e02672a Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 17 Dec 2025 10:11:35 -0500 Subject: [PATCH 43/66] typo (#1332) --- tests/test_errors.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_errors.py b/tests/test_errors.py index c315dfd4de..7d75f0e4f8 100644 --- a/tests/test_errors.py +++ b/tests/test_errors.py @@ -283,7 +283,7 @@ def test_galsim_deprecation_warning(): @timer def test_galsim_fftsize_warning(): - """Test basic usage of GalSimDeprecationWarning + """Test basic usage of GalSimFFTSizeWarning """ err = galsim.GalSimFFTSizeWarning("Test", 10240) print('str = ',str(err)) From 2696dc21fd1341274999bf8bb80fc85f6258ae22 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Tue, 27 Jan 2026 15:00:52 -0500 Subject: [PATCH 44/66] Allow old behavior of raising GalSimFFTSizeError via galsim.errors.raise_fft_size_error=True --- galsim/errors.py | 12 ++++++++---- galsim/gsparams.py | 6 ++++++ tests/test_chromatic.py | 13 ++++++++++++- tests/test_config_gsobject.py | 7 +++++++ tests/test_deprecated.py | 21 --------------------- tests/test_errors.py | 14 ++++++++++++++ 6 files changed, 47 insertions(+), 26 deletions(-) diff --git a/galsim/errors.py b/galsim/errors.py index 2302b4b2a4..b7969d2827 100644 --- a/galsim/errors.py +++ b/galsim/errors.py @@ -31,6 +31,10 @@ import warnings from contextlib import contextmanager +# Set this to True to have large FFTs raise a GalSimFFTSizeError exception rather +# merely emit a GalSimFFTSizeWarning. +raise_fft_size_error = False + # Note to developers about which exception to throw. # # Aside from the below classes, which should be preferred for most errors, we also @@ -341,9 +345,6 @@ class GalSimFFTSizeError(GalSimError): mem: The estimated memory that would be required (in GB) for the FFT. """ def __init__(self, message, size): - from .deprecated import depr - depr(GalSimFFTSizeError, 2.7, '', - "Cases that used to raise GalSimFFTSizeError now emit a GalSimFFTSizeWarning instead.") self.message = message self.size = size self.mem = size * size * 24. / 1024**3 @@ -434,7 +435,10 @@ def __reduce__(self): return GalSimFFTSizeWarning, (self.message, self.size) def galsim_warn_fft(message, size): - warnings.warn(GalSimFFTSizeWarning(message, size)) + if raise_fft_size_error: + raise GalSimFFTSizeError(message, size) + else: + warnings.warn(GalSimFFTSizeWarning(message, size)) @contextmanager def convert_cpp_errors(error_type=GalSimError): diff --git a/galsim/gsparams.py b/galsim/gsparams.py index 64f10868ee..4771f90b9c 100644 --- a/galsim/gsparams.py +++ b/galsim/gsparams.py @@ -53,6 +53,12 @@ class GSParams: you have some indication of why. If you have the memory to handle it, you can raise this limit to allow the calculation to happen without seeing the warning. [default: 8192] + + .. note:: + + To revert to the old behavior of raising an exception, you + may set ``galsim.errors.raise_fft_size_error = True``. + folding_threshold: This sets a maximum amount of real space folding that is allowed, an effect caused by the periodic nature of FFTs. FFTs implicitly use periodic boundary conditions, and a profile specified on a diff --git a/tests/test_chromatic.py b/tests/test_chromatic.py index 4c1603e080..71ac9b59b4 100644 --- a/tests/test_chromatic.py +++ b/tests/test_chromatic.py @@ -1488,7 +1488,7 @@ def test_analytic_integrator(): def test_gsparams(): """Check that gsparams actually gets processed by ChromaticObjects. """ - # Setting maximum_fft_size this low causes an exception to be raised for GSObjects, so + # Setting maximum_fft_size this low causes a warning to be emitted for GSObjects, so # make sure it does for ChromaticObjects too, thereby assuring that gsparams is really # getting properly forwarded through the internals of ChromaticObjects. gsparams = galsim.GSParams(maximum_fft_size=16) @@ -1499,6 +1499,12 @@ def test_gsparams(): assert (galsim.Gaussian(fwhm=1) * bulge_SED).withGSParams(gsparams) == gal assert (galsim.Gaussian(fwhm=1) * bulge_SED).withGSParams(maximum_fft_size=16) == gal + # Should raise an exception if raise_fft_size_error is True + galsim.errors.raise_fft_size_error = True + with assert_raises(galsim.GalSimFFTSizeError): + gal.drawImage(bandpass) + galsim.errors.raise_fft_size_error = False + # Repeat, putting the gsparams argument in after the ChromaticObject constructor. gal = galsim.Gaussian(fwhm=1) * bulge_SED psf = galsim.Gaussian(sigma=0.4) @@ -1506,6 +1512,11 @@ def test_gsparams(): with assert_warns(galsim.GalSimFFTSizeWarning): final.drawImage(bandpass) + galsim.errors.raise_fft_size_error = True + with assert_raises(galsim.GalSimFFTSizeError): + final.drawImage(bandpass) + galsim.errors.raise_fft_size_error = False + # Use a restrictive one this time, so we test the "most restrictive gsparams" feature gsp2 = galsim.GSParams(folding_threshold=1.e-4, maxk_threshold=1.e-4, maximum_fft_size=1.e4) final = galsim.Convolve([gal, psf]) diff --git a/tests/test_config_gsobject.py b/tests/test_config_gsobject.py index bec54a181b..dd848a21c3 100644 --- a/tests/test_config_gsobject.py +++ b/tests/test_config_gsobject.py @@ -672,6 +672,13 @@ def test_sersic(): with assert_warns(galsim.GalSimFFTSizeWarning): gsobject_compare(gal6a, gal6b, conv=galsim.Gaussian(sigma=1)) + # If galsim.errors.raise_fft_size_error is True, then it raises an exception instead. + # (This was the behavior until version 2.7.) + galsim.errors.raise_fft_size_error = True + with assert_raises(galsim.GalSimFFTSizeError): + gsobject_compare(gal6a, gal6b, conv=galsim.Gaussian(sigma=1)) + galsim.errors.raise_fft_size_error = False + gal7a = galsim.config.BuildGSObject(config, 'gal7')[0] gsparams = galsim.GSParams(realspace_relerr=1.e-2, realspace_abserr=1.e-4) gal7b = galsim.Sersic(n=3.2, half_light_radius=1.7, flux=50, trunc=4.3, gsparams=gsparams) diff --git a/tests/test_deprecated.py b/tests/test_deprecated.py index 6f921a948d..08d13a14f6 100644 --- a/tests/test_deprecated.py +++ b/tests/test_deprecated.py @@ -969,27 +969,6 @@ def test_save_photons(): assert np.allclose(np.sum(image.photons.flux), flux, rtol=0.1) repr(obj) -@timer -def test_galsim_fft_size_error(): - """Test basic usage of GalSimFFTSizeError - """ - # This feela a little gratuitous, since almost certainly no one used GalSimFFTSizeError - # for anything directly. Even catching it seems unlikely. But it was technically part - # of our API, so just deprecate it and make sure it still works appropriately. - err = check_dep(galsim.GalSimFFTSizeError, "Test FFT is too big.", 10240) - print('str = ',str(err)) - print('repr = ',repr(err)) - assert str(err) == ("Test FFT is too big.\nThe required FFT size would be 10240 x 10240, " - "which requires 2.34 GB of memory.\nIf you can handle " - "the large FFT, you may update gsparams.maximum_fft_size.") - assert err.size == 10240 - np.testing.assert_almost_equal(err.mem, 2.34375) - assert isinstance(err, galsim.GalSimError) - with warnings.catch_warnings(): - warnings.filterwarnings("ignore",category=galsim.GalSimDeprecationWarning) - check_pickle(err) - - if __name__ == "__main__": runtests(__file__) diff --git a/tests/test_errors.py b/tests/test_errors.py index 7d75f0e4f8..83eba92b25 100644 --- a/tests/test_errors.py +++ b/tests/test_errors.py @@ -292,6 +292,20 @@ def test_galsim_fftsize_warning(): assert isinstance(err, UserWarning) check_pickle(err) +@timer +def test_galsim_fft_size_error(): + """Test basic usage of GalSimFFTSizeError + """ + err = galsim.GalSimFFTSizeError("Test FFT is too big.", 10240) + print('str = ',str(err)) + print('repr = ',repr(err)) + assert str(err) == ("Test FFT is too big.\nThe required FFT size would be 10240 x 10240, " + "which requires 2.34 GB of memory.\nIf you can handle " + "the large FFT, you may update gsparams.maximum_fft_size.") + assert err.size == 10240 + np.testing.assert_almost_equal(err.mem, 2.34375) + assert isinstance(err, galsim.GalSimError) + if __name__ == "__main__": runtests(__file__) From e3d782bc1f3152302c0176d0d54c09a792566ff1 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 28 Jan 2026 16:28:50 -0500 Subject: [PATCH 45/66] Clear changelog --- CHANGELOG.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index f9b58124c7..f28cad9aee 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,11 +1,11 @@ -Changes from v2.5 to v2.6 +Changes from v2.7 to v2.8 ========================= -We currently support Python 3.7 through 3.12. +We currently support Python 3.9 through 3.14. A complete list of all new features and changes is given below. `Relevant PRs and Issues, -`_ +`_ whose issue numbers are listed below for the relevant items. Dependency Changes From bec9e74e0a874ba3fde366de6a8a326ad3900c63 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 28 Jan 2026 16:32:09 -0500 Subject: [PATCH 46/66] 2026 --- LICENSE | 2 +- devel/GalSim_License_statement.txt | 6 +++--- devel/brighter-fatter/bf_plots_07aug18.py | 2 +- devel/brighter-fatter/bf_plots_20Oct17.py | 2 +- .../forward_model_varying_i/forward.cpp | 2 +- .../forward_model_varying_i/forward.h | 2 +- .../forward_convert.cpp | 2 +- .../forward_model_varying_i/setup.py | 2 +- devel/external/AEGIS/add_weights.py | 2 +- devel/external/AEGIS/apply_cuts.py | 2 +- devel/external/AEGIS/clean_pstamp.py | 2 +- devel/external/AEGIS/functions.py | 2 +- devel/external/AEGIS/get_all_gal.py | 2 +- devel/external/AEGIS/get_cat_seg.py | 2 +- devel/external/AEGIS/get_in_galsim.py | 2 +- devel/external/AEGIS/get_objects.py | 2 +- devel/external/AEGIS/get_psf.py | 2 +- devel/external/AEGIS/get_pstamps.py | 2 +- devel/external/AEGIS/remove_multi.py | 2 +- devel/external/AEGIS/run_batch_first.py | 2 +- devel/external/AEGIS/run_batch_fourth.py | 2 +- devel/external/AEGIS/run_batch_second.py | 2 +- devel/external/AEGIS/run_batch_third.py | 2 +- devel/external/AEGIS/run_batch_third_again.py | 2 +- devel/external/AEGIS/run_clean_seg.py | 2 +- devel/external/calculate_moffat_radii.py | 2 +- devel/external/comparison_utilities.py | 2 +- .../hst/compare_whitening_subtraction.py | 2 +- devel/external/hst/make_cosmos_cfimage.py | 2 +- devel/external/make_subcatalogs.py | 2 +- devel/external/make_table_testarrays.py | 2 +- devel/external/make_test_catalog.pro | 2 +- devel/external/make_test_images_real.pro | 2 +- devel/external/makecatalog.pro | 2 +- devel/external/makestamps.pro | 2 +- devel/external/parse_wfirst_zernikes_1217.py | 2 +- devel/external/radius_flux_cuts.py | 2 +- devel/external/repackage_great3_cut_info.py | 2 +- devel/external/run_shera.pro | 2 +- devel/external/test_Image/make_test_ims.pro | 2 +- devel/external/test_cf/test_cf.py | 2 +- .../test_cf/test_cf_convolution_detailed.py | 2 +- devel/external/test_cf/test_noise_gen_irfft.py | 2 +- devel/external/test_gridshear/g10_powerspec.py | 2 +- devel/external/test_gridshear/plot_pk_test.py | 2 +- devel/external/test_gridshear/test_pk.py | 2 +- devel/external/test_gridshear/test_pk_sht.py | 2 +- .../make_interpolant_comparison_files.py | 2 +- .../photon_vs_fft.debug.yaml | 2 +- .../photon_vs_fft.ground.yaml | 2 +- .../test_photon_vs_fft/photon_vs_fft.py | 2 +- .../photon_vs_fft.space.yaml | 2 +- .../test_photon_vs_fft/photon_vs_fft_plots.py | 2 +- devel/external/test_pse_corr.py | 2 +- .../reconvolution_validation.debug.yaml | 2 +- .../reconvolution_validation.py | 2 +- .../reconvolution_validation.yaml | 2 +- .../reconvolution_validation_plots.py | 2 +- .../break_test_sersic_highn_basic.py | 2 +- devel/external/test_sersic_highn/fitting.py | 2 +- .../test_sersic_highn/galaxy_sample.py | 2 +- .../test_sersic_highn/plot_gaussian.py | 2 +- .../test_sersic_highn/plot_sersic_highn.py | 2 +- .../test_sersic_highn/test_comparison_basic.py | 2 +- .../test_sersic_highn/test_gaussian_basic.py | 2 +- .../test_sersic_highn/test_sersic_highn.py | 2 +- .../test_sersic_highn_alias2.py | 2 +- .../test_sersic_highn_alias2_maxk2_wmult2.py | 2 +- ...est_sersic_highn_allowed_flux_variation2.py | 2 +- .../test_sersic_highn_basic.py | 2 +- .../test_sersic_highn_kvalue10.py | 2 +- .../test_sersic_highn_maxk2.py | 2 +- ...sersic_highn_range_division_for_extrema2.py | 2 +- .../test_sersic_highn_shoot_abserr2.py | 2 +- .../test_sersic_highn_shoot_accuracy2.py | 2 +- .../test_sersic_highn_shoot_relerr2.py | 2 +- ...est_sersic_highn_small_fraction_of_flux2.py | 2 +- .../test_sersic_highn_wmult2.py | 2 +- .../time_photon_shooting/time_exponential.py | 2 +- .../time_photon_shooting/time_gaussian.py | 2 +- .../time_photon_shooting/time_moffat.py | 2 +- devel/external/update_parametric_fits.py | 2 +- devel/external/update_rgc.py | 2 +- devel/fds_test.py | 2 +- devel/getACSBandpass.py | 2 +- devel/getLSSTBandpass.py | 2 +- devel/getSEDs.py | 2 +- devel/getWFC3Bandpass.py | 2 +- devel/get_sysinfo.py | 2 +- devel/lsst/check_flats.py | 2 +- .../csl_flats/Flat_Correlations_18Apr18.py | 2 +- ...Correlations_Varying_Flux_Errors_18Apr18.py | 2 +- devel/lsst/focus_depth.py | 2 +- devel/lsst/test_bf_direction.py | 2 +- devel/lsst/time_phase_phot.py | 2 +- devel/lsst/treering_flat.py | 2 +- devel/lsst/treering_flat_csl_18apr18.py | 2 +- devel/lsst/treering_skybg2.py | 2 +- devel/lsst/treering_skybg_check.py | 2 +- devel/make_sensor_data_symmetrical.py | 2 +- devel/modules/CGNotes.tex | 2 +- devel/modules/atmValidate/firstKick.py | 2 +- .../atmValidate/firstKick_screen_scale.py | 2 +- devel/modules/atmValidate/screen_plot.py | 2 +- devel/modules/atmValidate/screen_scale.py | 2 +- devel/modules/atmValidate/secondKick.py | 2 +- devel/modules/atmValidate/vonKarman.py | 2 +- devel/modules/atmos_factfinding.tex | 2 +- .../modules/chromatic_real_galaxy/test_CRG.py | 2 +- .../chromatic_real_galaxy/test_CRG_noise.py | 2 +- devel/modules/corrfuncs/test_cf_interpolant.py | 2 +- devel/modules/corrfuncs/test_cf_periodicity.py | 2 +- devel/modules/lensing_engine.tex | 2 +- devel/modules/lensing_engine_interpolants.py | 2 +- devel/modules/phase_psf/ArScreens/ArScreens.py | 2 +- .../ArScreens/create_multilayer_arbase.py | 2 +- devel/modules/plot_test_interpolants.py | 2 +- devel/modules/shera_vs_sbprofile.tex | 2 +- devel/modules/test_interpolants.py | 2 +- devel/modules/test_interpolants_parametric.py | 2 +- devel/modules/test_mom_timing.py | 2 +- devel/plot_si.py | 2 +- devel/plot_thin.py | 2 +- devel/roman/make_sip_file.py | 2 +- devel/roman/test_roman_phot.py | 2 +- devel/roman/test_roman_psf.py | 2 +- devel/test_zernike_speed.py | 2 +- devel/testlinecounting.py | 2 +- devel/time_combine_waves.py | 2 +- devel/time_conv.py | 2 +- devel/time_expon_k.py | 2 +- devel/time_faint_bd_gals.py | 2 +- devel/time_hankel.py | 2 +- devel/time_invsqrt.cpp | 2 +- devel/time_knots.py | 2 +- devel/time_noise_pad.py | 2 +- devel/time_phot.py | 2 +- devel/time_sersic.py | 2 +- devel/time_silicon_accumulate.py | 2 +- devel/time_wcs.py | 2 +- devel/time_zip.py | 2 +- devel/treerings/tr_plots.py | 2 +- devel/treerings/tree_ring_test_function.py | 2 +- devel/treerings/write_tree_ring_table.py | 2 +- docs/conf.py | 2 +- docs/gh-link.py | 2 +- examples/IntExample.cpp | 2 +- examples/check_des | 2 +- examples/check_diff.py | 2 +- examples/check_json | 2 +- examples/check_yaml | 2 +- examples/data/plot_ps.py | 2 +- examples/demo1.py | 2 +- examples/demo1.yaml | 2 +- examples/demo10.py | 2 +- examples/demo10.yaml | 2 +- examples/demo11.py | 2 +- examples/demo11.yaml | 2 +- examples/demo12.py | 2 +- examples/demo12.yaml | 2 +- examples/demo13.py | 2 +- examples/demo13.yaml | 2 +- examples/demo2.py | 2 +- examples/demo2.yaml | 2 +- examples/demo3.py | 2 +- examples/demo3.yaml | 2 +- examples/demo4.py | 2 +- examples/demo4.yaml | 2 +- examples/demo5.py | 2 +- examples/demo5.yaml | 2 +- examples/demo6.py | 2 +- examples/demo6.yaml | 2 +- examples/demo7.py | 2 +- examples/demo7.yaml | 2 +- examples/demo8.py | 2 +- examples/demo8.yaml | 2 +- examples/demo9.py | 2 +- examples/demo9.yaml | 2 +- examples/des/blend.py | 2 +- examples/des/blend.yaml | 2 +- examples/des/blendset.yaml | 2 +- examples/des/des_wcs.py | 2 +- examples/des/draw_psf.py | 2 +- examples/des/draw_psf.yaml | 2 +- examples/des/excluded_random.py | 2 +- examples/des/hsm_shape_measure.py | 2 +- examples/des/log_normal.py | 2 +- examples/des/meds.yaml | 2 +- examples/fft_vs_geom_movie.py | 2 +- examples/great3/cgc.yaml | 2 +- examples/great3/cgc_faint.yaml | 2 +- examples/great3/cgc_psf.yaml | 2 +- examples/great3/great3_reject.py | 2 +- examples/great3/noise_free.py | 2 +- examples/great3/rgc.yaml | 2 +- examples/great3/rgc_psf.yaml | 2 +- examples/input/make_default_input.py | 2 +- examples/log_normal.py | 2 +- examples/lsst.yaml | 2 +- examples/make_coadd.py | 2 +- examples/mixed_scene.py | 2 +- examples/psf_wf_movie.py | 2 +- examples/shear_test1.yaml | 2 +- examples/testRandom.cpp | 2 +- galsim/__init__.py | 4 ++-- galsim/__main__.py | 2 +- galsim/_pyfits.py | 2 +- galsim/_utilities.py | 2 +- galsim/_version.py | 2 +- galsim/airy.py | 2 +- galsim/angle.py | 2 +- galsim/bandpass.py | 2 +- galsim/bessel.py | 2 +- galsim/bounds.py | 2 +- galsim/box.py | 2 +- galsim/catalog.py | 2 +- galsim/cdmodel.py | 2 +- galsim/celestial.py | 2 +- galsim/chromatic.py | 2 +- galsim/config/__init__.py | 2 +- galsim/config/bandpass.py | 2 +- galsim/config/extra.py | 2 +- galsim/config/extra_badpix.py | 2 +- galsim/config/extra_psf.py | 2 +- galsim/config/extra_truth.py | 2 +- galsim/config/extra_weight.py | 2 +- galsim/config/gsobject.py | 2 +- galsim/config/image.py | 2 +- galsim/config/image_scattered.py | 2 +- galsim/config/image_tiled.py | 2 +- galsim/config/input.py | 2 +- galsim/config/input_cosmos.py | 2 +- galsim/config/input_fitsheader.py | 2 +- galsim/config/input_image.py | 2 +- galsim/config/input_nfw.py | 2 +- galsim/config/input_powerspectrum.py | 2 +- galsim/config/input_real.py | 2 +- galsim/config/noise.py | 2 +- galsim/config/output.py | 2 +- galsim/config/output_datacube.py | 2 +- galsim/config/output_multifits.py | 2 +- galsim/config/photon_ops.py | 2 +- galsim/config/process.py | 2 +- galsim/config/sed.py | 2 +- galsim/config/sensor.py | 2 +- galsim/config/stamp.py | 2 +- galsim/config/stamp_ring.py | 2 +- galsim/config/util.py | 2 +- galsim/config/value.py | 2 +- galsim/config/value_eval.py | 2 +- galsim/config/value_random.py | 2 +- galsim/config/wcs.py | 2 +- galsim/convolve.py | 2 +- galsim/correlatednoise.py | 2 +- galsim/dcr.py | 2 +- galsim/deltafunction.py | 2 +- galsim/deprecated/__init__.py | 2 +- galsim/deprecated/correlatednoise.py | 2 +- galsim/deprecated/integ.py | 2 +- galsim/deprecated/randwalk.py | 2 +- galsim/des/__init__.py | 2 +- galsim/des/des_meds.py | 2 +- galsim/des/des_psfex.py | 2 +- galsim/des/des_shapelet.py | 2 +- galsim/detectors.py | 2 +- galsim/download_cosmos.py | 2 +- galsim/errors.py | 2 +- galsim/exponential.py | 2 +- galsim/fft.py | 2 +- galsim/fits.py | 2 +- galsim/fitswcs.py | 2 +- galsim/fouriersqrt.py | 2 +- galsim/galaxy_sample.py | 2 +- galsim/gaussian.py | 2 +- galsim/gsobject.py | 2 +- galsim/gsparams.py | 2 +- galsim/hsm.py | 2 +- galsim/image.py | 2 +- galsim/inclined.py | 2 +- galsim/integ.py | 2 +- galsim/interpolant.py | 2 +- galsim/interpolatedimage.py | 2 +- galsim/knots.py | 2 +- galsim/kolmogorov.py | 2 +- galsim/lensing_ps.py | 2 +- galsim/main.py | 2 +- galsim/meta_data.py | 2 +- galsim/moffat.py | 2 +- galsim/nfw_halo.py | 2 +- galsim/noise.py | 2 +- galsim/phase_psf.py | 2 +- galsim/phase_screens.py | 2 +- galsim/photon_array.py | 2 +- galsim/position.py | 2 +- galsim/pse.py | 2 +- galsim/random.py | 2 +- galsim/real.py | 2 +- galsim/roman/__init__.py | 2 +- galsim/roman/roman_backgrounds.py | 2 +- galsim/roman/roman_bandpass.py | 2 +- galsim/roman/roman_config.py | 2 +- galsim/roman/roman_detectors.py | 2 +- galsim/roman/roman_psfs.py | 2 +- galsim/roman/roman_wcs.py | 2 +- galsim/second_kick.py | 2 +- galsim/sed.py | 2 +- galsim/sensor.py | 2 +- galsim/sersic.py | 2 +- galsim/shapelet.py | 2 +- galsim/shear.py | 2 +- galsim/spergel.py | 2 +- galsim/sum.py | 2 +- galsim/table.py | 2 +- galsim/transform.py | 2 +- galsim/utilities.py | 2 +- galsim/vonkarman.py | 2 +- galsim/wcs.py | 2 +- galsim/wfirst.py | 2 +- galsim/zernike.py | 2 +- include/GalSim.h | 2 +- include/galsim/BinomFact.h | 2 +- include/galsim/Bounds.h | 2 +- include/galsim/CDModel.h | 2 +- include/galsim/CorrelatedNoise.h | 2 +- include/galsim/GSParams.h | 2 +- include/galsim/Image.h | 2 +- include/galsim/ImageArith.h | 2 +- include/galsim/Interpolant.h | 2 +- include/galsim/LRUCache.h | 2 +- include/galsim/Laguerre.h | 2 +- include/galsim/OneDimensionalDeviate.h | 2 +- include/galsim/PhotonArray.h | 2 +- include/galsim/Polygon.h | 2 +- include/galsim/ProbabilityTree.h | 2 +- include/galsim/Random.h | 2 +- include/galsim/RealGalaxy.h | 2 +- include/galsim/SBAdd.h | 2 +- include/galsim/SBAddImpl.h | 2 +- include/galsim/SBAiry.h | 2 +- include/galsim/SBAiryImpl.h | 2 +- include/galsim/SBBox.h | 2 +- include/galsim/SBBoxImpl.h | 2 +- include/galsim/SBConvolve.h | 2 +- include/galsim/SBConvolveImpl.h | 2 +- include/galsim/SBDeconvolve.h | 2 +- include/galsim/SBDeconvolveImpl.h | 2 +- include/galsim/SBDeltaFunction.h | 2 +- include/galsim/SBDeltaFunctionImpl.h | 2 +- include/galsim/SBExponential.h | 2 +- include/galsim/SBExponentialImpl.h | 2 +- include/galsim/SBFourierSqrt.h | 2 +- include/galsim/SBFourierSqrtImpl.h | 2 +- include/galsim/SBGaussian.h | 2 +- include/galsim/SBGaussianImpl.h | 2 +- include/galsim/SBInclinedExponential.h | 2 +- include/galsim/SBInclinedExponentialImpl.h | 2 +- include/galsim/SBInclinedSersic.h | 2 +- include/galsim/SBInclinedSersicImpl.h | 2 +- include/galsim/SBInterpolatedImage.h | 2 +- include/galsim/SBInterpolatedImageImpl.h | 2 +- include/galsim/SBKolmogorov.h | 2 +- include/galsim/SBKolmogorovImpl.h | 2 +- include/galsim/SBMoffat.h | 2 +- include/galsim/SBMoffatImpl.h | 2 +- include/galsim/SBProfile.h | 2 +- include/galsim/SBProfileImpl.h | 2 +- include/galsim/SBSecondKick.h | 2 +- include/galsim/SBSecondKickImpl.h | 2 +- include/galsim/SBSersic.h | 2 +- include/galsim/SBSersicImpl.h | 2 +- include/galsim/SBShapelet.h | 2 +- include/galsim/SBShapeletImpl.h | 2 +- include/galsim/SBSpergel.h | 2 +- include/galsim/SBSpergelImpl.h | 2 +- include/galsim/SBTransform.h | 2 +- include/galsim/SBTransformImpl.h | 2 +- include/galsim/SBVonKarman.h | 2 +- include/galsim/SBVonKarmanImpl.h | 2 +- include/galsim/Silicon.h | 2 +- include/galsim/Solve.h | 2 +- include/galsim/Std.h | 2 +- include/galsim/Stopwatch.h | 2 +- include/galsim/Table.h | 2 +- include/galsim/WCS.h | 2 +- include/galsim/hsm/PSFCorr.h | 2 +- include/galsim/integ/Int.h | 2 +- include/galsim/integ/IntGKPData1.h | 2 +- include/galsim/integ/IntGKPData10.h | 2 +- include/galsim/integ/MoreFunctional.h | 2 +- include/galsim/math/Angle.h | 2 +- include/galsim/math/Bessel.h | 2 +- include/galsim/math/Gamma.h | 2 +- include/galsim/math/Hankel.h | 2 +- include/galsim/math/Horner.h | 2 +- include/galsim/math/Nan.h | 2 +- include/galsim/math/Sinc.h | 2 +- include/galsim/mmgr.h | 2 +- pysrc/Bessel.cpp | 2 +- pysrc/Bounds.cpp | 2 +- pysrc/CDModel.cpp | 2 +- pysrc/HSM.cpp | 2 +- pysrc/Horner.cpp | 2 +- pysrc/Image.cpp | 2 +- pysrc/Integ.cpp | 2 +- pysrc/Interpolant.cpp | 2 +- pysrc/PhotonArray.cpp | 2 +- pysrc/PyBind11Helper.h | 2 +- pysrc/Random.cpp | 2 +- pysrc/RealGalaxy.cpp | 2 +- pysrc/SBAdd.cpp | 2 +- pysrc/SBAiry.cpp | 2 +- pysrc/SBBox.cpp | 2 +- pysrc/SBConvolve.cpp | 2 +- pysrc/SBDeconvolve.cpp | 2 +- pysrc/SBDeltaFunction.cpp | 2 +- pysrc/SBExponential.cpp | 2 +- pysrc/SBFourierSqrt.cpp | 2 +- pysrc/SBGaussian.cpp | 2 +- pysrc/SBInclinedExponential.cpp | 2 +- pysrc/SBInclinedSersic.cpp | 2 +- pysrc/SBInterpolatedImage.cpp | 2 +- pysrc/SBKolmogorov.cpp | 2 +- pysrc/SBMoffat.cpp | 2 +- pysrc/SBProfile.cpp | 2 +- pysrc/SBSecondKick.cpp | 2 +- pysrc/SBSersic.cpp | 2 +- pysrc/SBShapelet.cpp | 2 +- pysrc/SBSpergel.cpp | 2 +- pysrc/SBTransform.cpp | 2 +- pysrc/SBVonKarman.cpp | 2 +- pysrc/Silicon.cpp | 2 +- pysrc/Table.cpp | 2 +- pysrc/Utilities.cpp | 2 +- pysrc/WCS.cpp | 2 +- pysrc/module.cpp | 2 +- setup.py | 2 +- src/BinomFact.cpp | 2 +- src/CDModel.cpp | 2 +- src/CorrelatedNoise.cpp | 2 +- src/GSParams.cpp | 2 +- src/Image.cpp | 2 +- src/Image.inst | 2 +- src/Interpolant.cpp | 2 +- src/Laguerre.cpp | 2 +- src/OneDimensionalDeviate.cpp | 2 +- src/PhotonArray.cpp | 2 +- src/Polygon.cpp | 2 +- src/Random.cpp | 2 +- src/RealGalaxy.cpp | 2 +- src/RealSpaceConvolve.cpp | 2 +- src/SBAdd.cpp | 2 +- src/SBAiry.cpp | 2 +- src/SBBox.cpp | 2 +- src/SBConvolve.cpp | 2 +- src/SBDeconvolve.cpp | 2 +- src/SBDeltaFunction.cpp | 2 +- src/SBExponential.cpp | 2 +- src/SBFourierSqrt.cpp | 2 +- src/SBGaussian.cpp | 2 +- src/SBInclinedExponential.cpp | 2 +- src/SBInclinedSersic.cpp | 2 +- src/SBInterpolatedImage.cpp | 2 +- src/SBKolmogorov.cpp | 2 +- src/SBMoffat.cpp | 2 +- src/SBProfile.cpp | 2 +- src/SBSecondKick.cpp | 2 +- src/SBSersic.cpp | 2 +- src/SBShapelet.cpp | 2 +- src/SBSpergel.cpp | 2 +- src/SBTransform.cpp | 2 +- src/SBVonKarman.cpp | 2 +- src/Silicon.cpp | 2 +- src/Table.cpp | 2 +- src/Version.cpp | 2 +- src/WCS.cpp | 2 +- src/hsm/PSFCorr.cpp | 2 +- src/math/Angle.cpp | 2 +- src/math/Bessel.cpp | 2 +- src/math/BesselI.cpp | 2 +- src/math/BesselJ.cpp | 2 +- src/math/BesselK.cpp | 2 +- src/math/BesselRoots.cpp | 2 +- src/math/BesselY.cpp | 2 +- src/math/Gamma.cpp | 2 +- src/math/Hankel.cpp | 2 +- src/math/Horner.cpp | 2 +- src/math/Nan.cpp | 2 +- src/math/Sinc.cpp | 2 +- .../generate_optics_comparison_images.py | 2 +- .../convert_maple_output.py | 2 +- .../spergel_image.py | 2 +- tests/Test.h | 2 +- tests/TestAll.cpp | 2 +- tests/TestImage.cpp | 2 +- tests/TestInteg.cpp | 2 +- tests/TestVersion.cpp | 2 +- tests/compare_image_integrators.py | 2 +- tests/compare_thin.py | 2 +- tests/config_input/dict.yaml | 2 +- tests/config_input/index_key.yaml | 2 +- tests/config_input/multirng.yaml | 2 +- tests/config_input/sequential_seeds.yaml | 2 +- tests/config_input/sn.yaml | 2 +- tests/config_input/template.yaml | 2 +- tests/config_input_test_modules.py | 2 +- tests/conftest.py | 18 ++++++++++++++++++ tests/fits_files/check_pyast_sip.py | 2 +- tests/fits_files/check_pyast_tpv.py | 2 +- tests/fits_files/make_interpim_hdu.py | 2 +- tests/galsim_test_helpers.py | 2 +- tests/hsm_shape.py | 2 +- .../inclined_exponential_images/hankelcode4.c | 2 +- tests/input/test.yaml | 2 +- tests/lensing_reference_data/shearfield_ref.py | 2 +- tests/real_comparison_images/make_images.py | 2 +- tests/roman_files/gen_chris_comparison.py | 2 +- tests/roman_files/radec_to_chip.py | 2 +- tests/run_examples.py | 2 +- tests/template_register.py | 2 +- tests/test_airy.py | 2 +- tests/test_bandpass.py | 2 +- tests/test_bessel.py | 2 +- tests/test_box.py | 2 +- tests/test_calc.py | 2 +- tests/test_catalog.py | 2 +- tests/test_cdmodel.py | 2 +- tests/test_celestial.py | 2 +- tests/test_chromatic.py | 2 +- tests/test_config_gsobject.py | 2 +- tests/test_config_image.py | 2 +- tests/test_config_input.py | 2 +- tests/test_config_noise.py | 2 +- tests/test_config_output.py | 2 +- tests/test_config_value.py | 2 +- tests/test_convolve.py | 2 +- tests/test_correlatednoise.py | 2 +- tests/test_deltafunction.py | 2 +- tests/test_deprecated.py | 2 +- tests/test_des.py | 2 +- tests/test_detectors.py | 2 +- tests/test_download.py | 2 +- tests/test_draw.py | 2 +- tests/test_errors.py | 2 +- tests/test_exponential.py | 2 +- tests/test_fitsheader.py | 2 +- tests/test_fouriersqrt.py | 2 +- tests/test_galaxy_sample.py | 2 +- tests/test_gaussian.py | 2 +- tests/test_hsm.py | 2 +- tests/test_image.py | 2 +- tests/test_inclined.py | 2 +- tests/test_integ.py | 2 +- tests/test_interpolatedimage.py | 2 +- tests/test_knots.py | 2 +- tests/test_kolmogorov.py | 2 +- tests/test_lensing.py | 2 +- tests/test_main.py | 2 +- tests/test_metacal.py | 2 +- tests/test_moffat.py | 2 +- tests/test_noise.py | 2 +- tests/test_optics.py | 2 +- tests/test_phase_psf.py | 2 +- tests/test_photon_array.py | 2 +- tests/test_pse.py | 2 +- tests/test_random.py | 2 +- tests/test_real.py | 2 +- tests/test_roman.py | 2 +- tests/test_second_kick.py | 2 +- tests/test_sed.py | 2 +- tests/test_sensor.py | 2 +- tests/test_sersic.py | 2 +- tests/test_shapelet.py | 2 +- tests/test_shear.py | 2 +- tests/test_shear_position.py | 2 +- tests/test_spergel.py | 2 +- tests/test_sum.py | 2 +- tests/test_table.py | 2 +- tests/test_transforms.py | 2 +- tests/test_utilities.py | 2 +- tests/test_vonkarman.py | 2 +- tests/test_wcs.py | 2 +- tests/test_zernike.py | 2 +- 582 files changed, 602 insertions(+), 584 deletions(-) diff --git a/LICENSE b/LICENSE index a0a7565344..462160c0cf 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2012-2023 by the GalSim developers team on GitHub +Copyright (c) 2012-2026 by the GalSim developers team on GitHub https://github.com/GalSim-developers Redistribution and use in source and binary forms, with or without diff --git a/devel/GalSim_License_statement.txt b/devel/GalSim_License_statement.txt index 3e9cc68ded..813bc7d15e 100644 --- a/devel/GalSim_License_statement.txt +++ b/devel/GalSim_License_statement.txt @@ -2,7 +2,7 @@ All GalSim source files should contain the following copyright statement (Python commented versions follow below): -Copyright (c) 2012-2023 by the GalSim developers team on GitHub +Copyright (c) 2012-2026 by the GalSim developers team on GitHub https://github.com/GalSim-developers This file is part of GalSim: The modular galaxy image simulation toolkit. @@ -20,7 +20,7 @@ conditions are met: and/or other materials provided with the distribution. -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. @@ -39,7 +39,7 @@ conditions are met: /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/brighter-fatter/bf_plots_07aug18.py b/devel/brighter-fatter/bf_plots_07aug18.py index 92a51d9887..c3ecd180d3 100644 --- a/devel/brighter-fatter/bf_plots_07aug18.py +++ b/devel/brighter-fatter/bf_plots_07aug18.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/brighter-fatter/bf_plots_20Oct17.py b/devel/brighter-fatter/bf_plots_20Oct17.py index cc0f8ab05f..a3b68fab8a 100644 --- a/devel/brighter-fatter/bf_plots_20Oct17.py +++ b/devel/brighter-fatter/bf_plots_20Oct17.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/brighter-fatter/forward_model_varying_i/forward.cpp b/devel/brighter-fatter/forward_model_varying_i/forward.cpp index 651a4ce285..1bfa30cb23 100755 --- a/devel/brighter-fatter/forward_model_varying_i/forward.cpp +++ b/devel/brighter-fatter/forward_model_varying_i/forward.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/brighter-fatter/forward_model_varying_i/forward.h b/devel/brighter-fatter/forward_model_varying_i/forward.h index b5df13709e..4be75fd6a5 100644 --- a/devel/brighter-fatter/forward_model_varying_i/forward.h +++ b/devel/brighter-fatter/forward_model_varying_i/forward.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/brighter-fatter/forward_model_varying_i/forward_convert.cpp b/devel/brighter-fatter/forward_model_varying_i/forward_convert.cpp index d0bbb43d80..e06f387588 100644 --- a/devel/brighter-fatter/forward_model_varying_i/forward_convert.cpp +++ b/devel/brighter-fatter/forward_model_varying_i/forward_convert.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/brighter-fatter/forward_model_varying_i/setup.py b/devel/brighter-fatter/forward_model_varying_i/setup.py index 66ab404e29..5593520d25 100644 --- a/devel/brighter-fatter/forward_model_varying_i/setup.py +++ b/devel/brighter-fatter/forward_model_varying_i/setup.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/add_weights.py b/devel/external/AEGIS/add_weights.py index 9d8ebd0079..98d75f04e4 100644 --- a/devel/external/AEGIS/add_weights.py +++ b/devel/external/AEGIS/add_weights.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/apply_cuts.py b/devel/external/AEGIS/apply_cuts.py index 89c78004d4..f95d20bc73 100644 --- a/devel/external/AEGIS/apply_cuts.py +++ b/devel/external/AEGIS/apply_cuts.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/clean_pstamp.py b/devel/external/AEGIS/clean_pstamp.py index 635efaa843..a529874ce9 100644 --- a/devel/external/AEGIS/clean_pstamp.py +++ b/devel/external/AEGIS/clean_pstamp.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/functions.py b/devel/external/AEGIS/functions.py index df91adffe9..d2ca8fb991 100644 --- a/devel/external/AEGIS/functions.py +++ b/devel/external/AEGIS/functions.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/get_all_gal.py b/devel/external/AEGIS/get_all_gal.py index 3b9e062906..f69eea5713 100644 --- a/devel/external/AEGIS/get_all_gal.py +++ b/devel/external/AEGIS/get_all_gal.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/get_cat_seg.py b/devel/external/AEGIS/get_cat_seg.py index a5ec8b4318..56fee8c0ac 100644 --- a/devel/external/AEGIS/get_cat_seg.py +++ b/devel/external/AEGIS/get_cat_seg.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/get_in_galsim.py b/devel/external/AEGIS/get_in_galsim.py index 932a21f07d..3e115aca06 100644 --- a/devel/external/AEGIS/get_in_galsim.py +++ b/devel/external/AEGIS/get_in_galsim.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/get_objects.py b/devel/external/AEGIS/get_objects.py index a6906a444c..75902337ec 100644 --- a/devel/external/AEGIS/get_objects.py +++ b/devel/external/AEGIS/get_objects.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/get_psf.py b/devel/external/AEGIS/get_psf.py index ce1d7d3678..5cb77463b5 100644 --- a/devel/external/AEGIS/get_psf.py +++ b/devel/external/AEGIS/get_psf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/get_pstamps.py b/devel/external/AEGIS/get_pstamps.py index 50e9eedcde..cb19ff2d39 100644 --- a/devel/external/AEGIS/get_pstamps.py +++ b/devel/external/AEGIS/get_pstamps.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/remove_multi.py b/devel/external/AEGIS/remove_multi.py index 6290a00686..7a837bdbef 100644 --- a/devel/external/AEGIS/remove_multi.py +++ b/devel/external/AEGIS/remove_multi.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/run_batch_first.py b/devel/external/AEGIS/run_batch_first.py index 4b53628427..6893fb2cb4 100644 --- a/devel/external/AEGIS/run_batch_first.py +++ b/devel/external/AEGIS/run_batch_first.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/run_batch_fourth.py b/devel/external/AEGIS/run_batch_fourth.py index d6c13af5eb..0844342962 100644 --- a/devel/external/AEGIS/run_batch_fourth.py +++ b/devel/external/AEGIS/run_batch_fourth.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/run_batch_second.py b/devel/external/AEGIS/run_batch_second.py index 8510ce9be1..b05d376f50 100644 --- a/devel/external/AEGIS/run_batch_second.py +++ b/devel/external/AEGIS/run_batch_second.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/run_batch_third.py b/devel/external/AEGIS/run_batch_third.py index dabeb5a08b..ce74ca501a 100644 --- a/devel/external/AEGIS/run_batch_third.py +++ b/devel/external/AEGIS/run_batch_third.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/run_batch_third_again.py b/devel/external/AEGIS/run_batch_third_again.py index 164c5f37c8..f740e2de43 100644 --- a/devel/external/AEGIS/run_batch_third_again.py +++ b/devel/external/AEGIS/run_batch_third_again.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/AEGIS/run_clean_seg.py b/devel/external/AEGIS/run_clean_seg.py index 5910832156..332c3e8523 100644 --- a/devel/external/AEGIS/run_clean_seg.py +++ b/devel/external/AEGIS/run_clean_seg.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/calculate_moffat_radii.py b/devel/external/calculate_moffat_radii.py index d54d7a9417..1547e90ee9 100644 --- a/devel/external/calculate_moffat_radii.py +++ b/devel/external/calculate_moffat_radii.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/comparison_utilities.py b/devel/external/comparison_utilities.py index 2bc64a7f25..f9d5fa558c 100644 --- a/devel/external/comparison_utilities.py +++ b/devel/external/comparison_utilities.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/hst/compare_whitening_subtraction.py b/devel/external/hst/compare_whitening_subtraction.py index 50f3885714..4527bff3af 100644 --- a/devel/external/hst/compare_whitening_subtraction.py +++ b/devel/external/hst/compare_whitening_subtraction.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/hst/make_cosmos_cfimage.py b/devel/external/hst/make_cosmos_cfimage.py index 825e6d9543..0fca31ca22 100644 --- a/devel/external/hst/make_cosmos_cfimage.py +++ b/devel/external/hst/make_cosmos_cfimage.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/make_subcatalogs.py b/devel/external/make_subcatalogs.py index aad1beb1cc..da9838b333 100644 --- a/devel/external/make_subcatalogs.py +++ b/devel/external/make_subcatalogs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/make_table_testarrays.py b/devel/external/make_table_testarrays.py index 07120ca8b1..320a199acb 100644 --- a/devel/external/make_table_testarrays.py +++ b/devel/external/make_table_testarrays.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/make_test_catalog.pro b/devel/external/make_test_catalog.pro index 29dca1d7dc..666c6f8fe6 100644 --- a/devel/external/make_test_catalog.pro +++ b/devel/external/make_test_catalog.pro @@ -1,4 +1,4 @@ -; Copyright (c) 2012-2023 by the GalSim developers team on GitHub +; Copyright (c) 2012-2026 by the GalSim developers team on GitHub ; https://github.com/GalSim-developers ; ; This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/make_test_images_real.pro b/devel/external/make_test_images_real.pro index 118ae9cbda..52409f1ef4 100644 --- a/devel/external/make_test_images_real.pro +++ b/devel/external/make_test_images_real.pro @@ -1,4 +1,4 @@ -; Copyright (c) 2012-2023 by the GalSim developers team on GitHub +; Copyright (c) 2012-2026 by the GalSim developers team on GitHub ; https://github.com/GalSim-developers ; ; This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/makecatalog.pro b/devel/external/makecatalog.pro index 67d0273ac8..f331389842 100644 --- a/devel/external/makecatalog.pro +++ b/devel/external/makecatalog.pro @@ -1,4 +1,4 @@ -; Copyright (c) 2012-2023 by the GalSim developers team on GitHub +; Copyright (c) 2012-2026 by the GalSim developers team on GitHub ; https://github.com/GalSim-developers ; ; This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/makestamps.pro b/devel/external/makestamps.pro index 77a0c3023d..a205c2a02f 100644 --- a/devel/external/makestamps.pro +++ b/devel/external/makestamps.pro @@ -1,4 +1,4 @@ -; Copyright (c) 2012-2023 by the GalSim developers team on GitHub +; Copyright (c) 2012-2026 by the GalSim developers team on GitHub ; https://github.com/GalSim-developers ; ; This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/parse_wfirst_zernikes_1217.py b/devel/external/parse_wfirst_zernikes_1217.py index 9c6ad8c983..0f759b1e41 100644 --- a/devel/external/parse_wfirst_zernikes_1217.py +++ b/devel/external/parse_wfirst_zernikes_1217.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/radius_flux_cuts.py b/devel/external/radius_flux_cuts.py index 9317077321..c74e4ed2b6 100644 --- a/devel/external/radius_flux_cuts.py +++ b/devel/external/radius_flux_cuts.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/repackage_great3_cut_info.py b/devel/external/repackage_great3_cut_info.py index 4004beb623..2bada7a573 100644 --- a/devel/external/repackage_great3_cut_info.py +++ b/devel/external/repackage_great3_cut_info.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/run_shera.pro b/devel/external/run_shera.pro index 4f46eac922..7a5b4708d5 100644 --- a/devel/external/run_shera.pro +++ b/devel/external/run_shera.pro @@ -1,4 +1,4 @@ -; Copyright (c) 2012-2023 by the GalSim developers team on GitHub +; Copyright (c) 2012-2026 by the GalSim developers team on GitHub ; https://github.com/GalSim-developers ; ; This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_Image/make_test_ims.pro b/devel/external/test_Image/make_test_ims.pro index 36d5154c50..9a2349eae8 100644 --- a/devel/external/test_Image/make_test_ims.pro +++ b/devel/external/test_Image/make_test_ims.pro @@ -1,4 +1,4 @@ -; Copyright (c) 2012-2023 by the GalSim developers team on GitHub +; Copyright (c) 2012-2026 by the GalSim developers team on GitHub ; https://github.com/GalSim-developers ; ; This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_cf/test_cf.py b/devel/external/test_cf/test_cf.py index b2a3ee9242..acc32ee552 100644 --- a/devel/external/test_cf/test_cf.py +++ b/devel/external/test_cf/test_cf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_cf/test_cf_convolution_detailed.py b/devel/external/test_cf/test_cf_convolution_detailed.py index a1f5e23212..2646926487 100644 --- a/devel/external/test_cf/test_cf_convolution_detailed.py +++ b/devel/external/test_cf/test_cf_convolution_detailed.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_cf/test_noise_gen_irfft.py b/devel/external/test_cf/test_noise_gen_irfft.py index 69e9f36ae7..0c3a7572d4 100644 --- a/devel/external/test_cf/test_noise_gen_irfft.py +++ b/devel/external/test_cf/test_noise_gen_irfft.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_gridshear/g10_powerspec.py b/devel/external/test_gridshear/g10_powerspec.py index 81361fbec3..8e4e915206 100644 --- a/devel/external/test_gridshear/g10_powerspec.py +++ b/devel/external/test_gridshear/g10_powerspec.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_gridshear/plot_pk_test.py b/devel/external/test_gridshear/plot_pk_test.py index 3881c3812f..c1411191a9 100644 --- a/devel/external/test_gridshear/plot_pk_test.py +++ b/devel/external/test_gridshear/plot_pk_test.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_gridshear/test_pk.py b/devel/external/test_gridshear/test_pk.py index 68a5176592..274e68b34d 100644 --- a/devel/external/test_gridshear/test_pk.py +++ b/devel/external/test_gridshear/test_pk.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_gridshear/test_pk_sht.py b/devel/external/test_gridshear/test_pk_sht.py index 51c87c24c6..1fbfec8427 100644 --- a/devel/external/test_gridshear/test_pk_sht.py +++ b/devel/external/test_gridshear/test_pk_sht.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_interpolant/make_interpolant_comparison_files.py b/devel/external/test_interpolant/make_interpolant_comparison_files.py index 1958007382..8b606ad87d 100644 --- a/devel/external/test_interpolant/make_interpolant_comparison_files.py +++ b/devel/external/test_interpolant/make_interpolant_comparison_files.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_photon_vs_fft/photon_vs_fft.debug.yaml b/devel/external/test_photon_vs_fft/photon_vs_fft.debug.yaml index 61481789f1..5024e03120 100644 --- a/devel/external/test_photon_vs_fft/photon_vs_fft.debug.yaml +++ b/devel/external/test_photon_vs_fft/photon_vs_fft.debug.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_photon_vs_fft/photon_vs_fft.ground.yaml b/devel/external/test_photon_vs_fft/photon_vs_fft.ground.yaml index 7ca6d01926..6132e441f5 100644 --- a/devel/external/test_photon_vs_fft/photon_vs_fft.ground.yaml +++ b/devel/external/test_photon_vs_fft/photon_vs_fft.ground.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_photon_vs_fft/photon_vs_fft.py b/devel/external/test_photon_vs_fft/photon_vs_fft.py index 3ed86ac8cb..34ccb78f2c 100644 --- a/devel/external/test_photon_vs_fft/photon_vs_fft.py +++ b/devel/external/test_photon_vs_fft/photon_vs_fft.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_photon_vs_fft/photon_vs_fft.space.yaml b/devel/external/test_photon_vs_fft/photon_vs_fft.space.yaml index 170636dec1..c05272cc11 100644 --- a/devel/external/test_photon_vs_fft/photon_vs_fft.space.yaml +++ b/devel/external/test_photon_vs_fft/photon_vs_fft.space.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_photon_vs_fft/photon_vs_fft_plots.py b/devel/external/test_photon_vs_fft/photon_vs_fft_plots.py index 552aa24ab3..a554ee1c97 100644 --- a/devel/external/test_photon_vs_fft/photon_vs_fft_plots.py +++ b/devel/external/test_photon_vs_fft/photon_vs_fft_plots.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_pse_corr.py b/devel/external/test_pse_corr.py index 43f40c4c9c..bb5f633274 100644 --- a/devel/external/test_pse_corr.py +++ b/devel/external/test_pse_corr.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_reconvolution/reconvolution_validation.debug.yaml b/devel/external/test_reconvolution/reconvolution_validation.debug.yaml index 83961fb5b5..affdbe43ea 100644 --- a/devel/external/test_reconvolution/reconvolution_validation.debug.yaml +++ b/devel/external/test_reconvolution/reconvolution_validation.debug.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_reconvolution/reconvolution_validation.py b/devel/external/test_reconvolution/reconvolution_validation.py index 23e78c7669..05a585205b 100644 --- a/devel/external/test_reconvolution/reconvolution_validation.py +++ b/devel/external/test_reconvolution/reconvolution_validation.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_reconvolution/reconvolution_validation.yaml b/devel/external/test_reconvolution/reconvolution_validation.yaml index 809055a728..7b6e408683 100644 --- a/devel/external/test_reconvolution/reconvolution_validation.yaml +++ b/devel/external/test_reconvolution/reconvolution_validation.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_reconvolution/reconvolution_validation_plots.py b/devel/external/test_reconvolution/reconvolution_validation_plots.py index 4ef3666c7f..081d6e6183 100644 --- a/devel/external/test_reconvolution/reconvolution_validation_plots.py +++ b/devel/external/test_reconvolution/reconvolution_validation_plots.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/break_test_sersic_highn_basic.py b/devel/external/test_sersic_highn/break_test_sersic_highn_basic.py index 90ea5fafcd..12da87cc00 100644 --- a/devel/external/test_sersic_highn/break_test_sersic_highn_basic.py +++ b/devel/external/test_sersic_highn/break_test_sersic_highn_basic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/fitting.py b/devel/external/test_sersic_highn/fitting.py index a1c48c1651..b4ed4ea72a 100644 --- a/devel/external/test_sersic_highn/fitting.py +++ b/devel/external/test_sersic_highn/fitting.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/galaxy_sample.py b/devel/external/test_sersic_highn/galaxy_sample.py index d87e33a9cb..a145909630 100644 --- a/devel/external/test_sersic_highn/galaxy_sample.py +++ b/devel/external/test_sersic_highn/galaxy_sample.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/plot_gaussian.py b/devel/external/test_sersic_highn/plot_gaussian.py index 4f8e6bb1a4..e213ce3a63 100644 --- a/devel/external/test_sersic_highn/plot_gaussian.py +++ b/devel/external/test_sersic_highn/plot_gaussian.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/plot_sersic_highn.py b/devel/external/test_sersic_highn/plot_sersic_highn.py index 8e2839f6d7..b56aeacb10 100644 --- a/devel/external/test_sersic_highn/plot_sersic_highn.py +++ b/devel/external/test_sersic_highn/plot_sersic_highn.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_comparison_basic.py b/devel/external/test_sersic_highn/test_comparison_basic.py index 4362d65f13..ed47c489c9 100644 --- a/devel/external/test_sersic_highn/test_comparison_basic.py +++ b/devel/external/test_sersic_highn/test_comparison_basic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_gaussian_basic.py b/devel/external/test_sersic_highn/test_gaussian_basic.py index a0d0570ebd..f69af60281 100644 --- a/devel/external/test_sersic_highn/test_gaussian_basic.py +++ b/devel/external/test_sersic_highn/test_gaussian_basic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn.py b/devel/external/test_sersic_highn/test_sersic_highn.py index 4f569211a9..8d720d4ba3 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn.py +++ b/devel/external/test_sersic_highn/test_sersic_highn.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_alias2.py b/devel/external/test_sersic_highn/test_sersic_highn_alias2.py index 5704718483..b16a03c888 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_alias2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_alias2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_alias2_maxk2_wmult2.py b/devel/external/test_sersic_highn/test_sersic_highn_alias2_maxk2_wmult2.py index 91689b91a2..474d5830e6 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_alias2_maxk2_wmult2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_alias2_maxk2_wmult2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_allowed_flux_variation2.py b/devel/external/test_sersic_highn/test_sersic_highn_allowed_flux_variation2.py index e2bfbd802d..abf9e64dc6 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_allowed_flux_variation2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_allowed_flux_variation2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_basic.py b/devel/external/test_sersic_highn/test_sersic_highn_basic.py index 0182747857..acdbec43e2 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_basic.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_basic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_kvalue10.py b/devel/external/test_sersic_highn/test_sersic_highn_kvalue10.py index fa6f650fff..8477f2953f 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_kvalue10.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_kvalue10.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_maxk2.py b/devel/external/test_sersic_highn/test_sersic_highn_maxk2.py index de5fa8554d..b1d809f85e 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_maxk2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_maxk2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_range_division_for_extrema2.py b/devel/external/test_sersic_highn/test_sersic_highn_range_division_for_extrema2.py index f8fa5e4fa2..f44b28ae1e 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_range_division_for_extrema2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_range_division_for_extrema2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_shoot_abserr2.py b/devel/external/test_sersic_highn/test_sersic_highn_shoot_abserr2.py index ad422f4a19..41bca3c855 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_shoot_abserr2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_shoot_abserr2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_shoot_accuracy2.py b/devel/external/test_sersic_highn/test_sersic_highn_shoot_accuracy2.py index 2a74a51946..9a4a96aec8 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_shoot_accuracy2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_shoot_accuracy2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_shoot_relerr2.py b/devel/external/test_sersic_highn/test_sersic_highn_shoot_relerr2.py index 7352d99a27..badf518033 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_shoot_relerr2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_shoot_relerr2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_small_fraction_of_flux2.py b/devel/external/test_sersic_highn/test_sersic_highn_small_fraction_of_flux2.py index 52f57f3860..9e325ba456 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_small_fraction_of_flux2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_small_fraction_of_flux2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/test_sersic_highn/test_sersic_highn_wmult2.py b/devel/external/test_sersic_highn/test_sersic_highn_wmult2.py index 51090ef6dc..9949b6fb1a 100644 --- a/devel/external/test_sersic_highn/test_sersic_highn_wmult2.py +++ b/devel/external/test_sersic_highn/test_sersic_highn_wmult2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/time_photon_shooting/time_exponential.py b/devel/external/time_photon_shooting/time_exponential.py index a5371408d4..3fd940378f 100644 --- a/devel/external/time_photon_shooting/time_exponential.py +++ b/devel/external/time_photon_shooting/time_exponential.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/time_photon_shooting/time_gaussian.py b/devel/external/time_photon_shooting/time_gaussian.py index 24044f742c..aa3010af94 100644 --- a/devel/external/time_photon_shooting/time_gaussian.py +++ b/devel/external/time_photon_shooting/time_gaussian.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/time_photon_shooting/time_moffat.py b/devel/external/time_photon_shooting/time_moffat.py index ed0881a01f..4a69b615b0 100644 --- a/devel/external/time_photon_shooting/time_moffat.py +++ b/devel/external/time_photon_shooting/time_moffat.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/update_parametric_fits.py b/devel/external/update_parametric_fits.py index cd5d75229b..fc96e42dc6 100644 --- a/devel/external/update_parametric_fits.py +++ b/devel/external/update_parametric_fits.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/external/update_rgc.py b/devel/external/update_rgc.py index 978e6448e2..a17eb09653 100644 --- a/devel/external/update_rgc.py +++ b/devel/external/update_rgc.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/fds_test.py b/devel/fds_test.py index 3892ee22fc..44bc188aaf 100644 --- a/devel/fds_test.py +++ b/devel/fds_test.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/getACSBandpass.py b/devel/getACSBandpass.py index bf46828d2d..80f61c10e5 100644 --- a/devel/getACSBandpass.py +++ b/devel/getACSBandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/getLSSTBandpass.py b/devel/getLSSTBandpass.py index dfa23984ac..6841268a8f 100644 --- a/devel/getLSSTBandpass.py +++ b/devel/getLSSTBandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/getSEDs.py b/devel/getSEDs.py index 466f6a8bd6..57f759d00d 100644 --- a/devel/getSEDs.py +++ b/devel/getSEDs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/getWFC3Bandpass.py b/devel/getWFC3Bandpass.py index a7868203f1..08f80f6250 100644 --- a/devel/getWFC3Bandpass.py +++ b/devel/getWFC3Bandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/get_sysinfo.py b/devel/get_sysinfo.py index 1a6c4e0031..93d0ae81c8 100644 --- a/devel/get_sysinfo.py +++ b/devel/get_sysinfo.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/check_flats.py b/devel/lsst/check_flats.py index 9562373355..f209cb619b 100644 --- a/devel/lsst/check_flats.py +++ b/devel/lsst/check_flats.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/csl_flats/Flat_Correlations_18Apr18.py b/devel/lsst/csl_flats/Flat_Correlations_18Apr18.py index c87eb7bff1..01b4e6a088 100644 --- a/devel/lsst/csl_flats/Flat_Correlations_18Apr18.py +++ b/devel/lsst/csl_flats/Flat_Correlations_18Apr18.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/csl_flats/Plot_Correlations_Varying_Flux_Errors_18Apr18.py b/devel/lsst/csl_flats/Plot_Correlations_Varying_Flux_Errors_18Apr18.py index 9f6974e928..d6acba46e2 100644 --- a/devel/lsst/csl_flats/Plot_Correlations_Varying_Flux_Errors_18Apr18.py +++ b/devel/lsst/csl_flats/Plot_Correlations_Varying_Flux_Errors_18Apr18.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/focus_depth.py b/devel/lsst/focus_depth.py index 70c95fcdc4..f0e58a0288 100644 --- a/devel/lsst/focus_depth.py +++ b/devel/lsst/focus_depth.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/test_bf_direction.py b/devel/lsst/test_bf_direction.py index 0f64ac4512..5ed03b59d4 100644 --- a/devel/lsst/test_bf_direction.py +++ b/devel/lsst/test_bf_direction.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/time_phase_phot.py b/devel/lsst/time_phase_phot.py index 5800d9dfb8..0c8a756af2 100644 --- a/devel/lsst/time_phase_phot.py +++ b/devel/lsst/time_phase_phot.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/treering_flat.py b/devel/lsst/treering_flat.py index 8ceabd068c..f80035d09e 100644 --- a/devel/lsst/treering_flat.py +++ b/devel/lsst/treering_flat.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/treering_flat_csl_18apr18.py b/devel/lsst/treering_flat_csl_18apr18.py index 48443f4aee..fd3f5ae4ad 100644 --- a/devel/lsst/treering_flat_csl_18apr18.py +++ b/devel/lsst/treering_flat_csl_18apr18.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/treering_skybg2.py b/devel/lsst/treering_skybg2.py index 99ae7a35ab..d42bc16e03 100644 --- a/devel/lsst/treering_skybg2.py +++ b/devel/lsst/treering_skybg2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/lsst/treering_skybg_check.py b/devel/lsst/treering_skybg_check.py index e54e6faaea..6693639fee 100644 --- a/devel/lsst/treering_skybg_check.py +++ b/devel/lsst/treering_skybg_check.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/make_sensor_data_symmetrical.py b/devel/make_sensor_data_symmetrical.py index 1681b5f7ba..38b29fe934 100644 --- a/devel/make_sensor_data_symmetrical.py +++ b/devel/make_sensor_data_symmetrical.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/CGNotes.tex b/devel/modules/CGNotes.tex index 25e7e45fd1..b511578d04 100644 --- a/devel/modules/CGNotes.tex +++ b/devel/modules/CGNotes.tex @@ -1,4 +1,4 @@ -% Copyright (c) 2012-2023 by the GalSim developers team on GitHub +% Copyright (c) 2012-2026 by the GalSim developers team on GitHub % https://github.com/GalSim-developers % % This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmValidate/firstKick.py b/devel/modules/atmValidate/firstKick.py index 3733072fbf..12e1e9df07 100644 --- a/devel/modules/atmValidate/firstKick.py +++ b/devel/modules/atmValidate/firstKick.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmValidate/firstKick_screen_scale.py b/devel/modules/atmValidate/firstKick_screen_scale.py index 7fb156a255..6b79d51899 100644 --- a/devel/modules/atmValidate/firstKick_screen_scale.py +++ b/devel/modules/atmValidate/firstKick_screen_scale.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmValidate/screen_plot.py b/devel/modules/atmValidate/screen_plot.py index daaafe73cd..6bcff2884d 100644 --- a/devel/modules/atmValidate/screen_plot.py +++ b/devel/modules/atmValidate/screen_plot.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmValidate/screen_scale.py b/devel/modules/atmValidate/screen_scale.py index 8df56c9323..68f9230386 100644 --- a/devel/modules/atmValidate/screen_scale.py +++ b/devel/modules/atmValidate/screen_scale.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmValidate/secondKick.py b/devel/modules/atmValidate/secondKick.py index 2336da3140..9198d3d2af 100644 --- a/devel/modules/atmValidate/secondKick.py +++ b/devel/modules/atmValidate/secondKick.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmValidate/vonKarman.py b/devel/modules/atmValidate/vonKarman.py index fe3709af63..4f2af86cda 100644 --- a/devel/modules/atmValidate/vonKarman.py +++ b/devel/modules/atmValidate/vonKarman.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/atmos_factfinding.tex b/devel/modules/atmos_factfinding.tex index 31602e192d..8f5804ea4a 100644 --- a/devel/modules/atmos_factfinding.tex +++ b/devel/modules/atmos_factfinding.tex @@ -1,4 +1,4 @@ -% Copyright (c) 2012-2023 by the GalSim developers team on GitHub +% Copyright (c) 2012-2026 by the GalSim developers team on GitHub % https://github.com/GalSim-developers % % This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/chromatic_real_galaxy/test_CRG.py b/devel/modules/chromatic_real_galaxy/test_CRG.py index bbeb030d16..d521d157b5 100644 --- a/devel/modules/chromatic_real_galaxy/test_CRG.py +++ b/devel/modules/chromatic_real_galaxy/test_CRG.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/chromatic_real_galaxy/test_CRG_noise.py b/devel/modules/chromatic_real_galaxy/test_CRG_noise.py index a55c4723f2..640871578f 100644 --- a/devel/modules/chromatic_real_galaxy/test_CRG_noise.py +++ b/devel/modules/chromatic_real_galaxy/test_CRG_noise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/corrfuncs/test_cf_interpolant.py b/devel/modules/corrfuncs/test_cf_interpolant.py index 91d3a2a8d7..7bfa6c7b5b 100644 --- a/devel/modules/corrfuncs/test_cf_interpolant.py +++ b/devel/modules/corrfuncs/test_cf_interpolant.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/corrfuncs/test_cf_periodicity.py b/devel/modules/corrfuncs/test_cf_periodicity.py index 26bcdb7d7b..ebd37a5b12 100644 --- a/devel/modules/corrfuncs/test_cf_periodicity.py +++ b/devel/modules/corrfuncs/test_cf_periodicity.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/lensing_engine.tex b/devel/modules/lensing_engine.tex index fe3d414f47..c0af3c67ae 100644 --- a/devel/modules/lensing_engine.tex +++ b/devel/modules/lensing_engine.tex @@ -1,4 +1,4 @@ -% Copyright (c) 2012-2023 by the GalSim developers team on GitHub +% Copyright (c) 2012-2026 by the GalSim developers team on GitHub % https://github.com/GalSim-developers % % This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/lensing_engine_interpolants.py b/devel/modules/lensing_engine_interpolants.py index b81e0d23ff..4a995c08c5 100644 --- a/devel/modules/lensing_engine_interpolants.py +++ b/devel/modules/lensing_engine_interpolants.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/phase_psf/ArScreens/ArScreens.py b/devel/modules/phase_psf/ArScreens/ArScreens.py index 800e1c66cf..36ee4cd185 100644 --- a/devel/modules/phase_psf/ArScreens/ArScreens.py +++ b/devel/modules/phase_psf/ArScreens/ArScreens.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/phase_psf/ArScreens/create_multilayer_arbase.py b/devel/modules/phase_psf/ArScreens/create_multilayer_arbase.py index a431c123fb..8d11ce30be 100644 --- a/devel/modules/phase_psf/ArScreens/create_multilayer_arbase.py +++ b/devel/modules/phase_psf/ArScreens/create_multilayer_arbase.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/plot_test_interpolants.py b/devel/modules/plot_test_interpolants.py index 293311fa4f..7c0dca6f69 100644 --- a/devel/modules/plot_test_interpolants.py +++ b/devel/modules/plot_test_interpolants.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/shera_vs_sbprofile.tex b/devel/modules/shera_vs_sbprofile.tex index ee061de551..438b622db7 100644 --- a/devel/modules/shera_vs_sbprofile.tex +++ b/devel/modules/shera_vs_sbprofile.tex @@ -1,4 +1,4 @@ -% Copyright (c) 2012-2023 by the GalSim developers team on GitHub +% Copyright (c) 2012-2026 by the GalSim developers team on GitHub % https://github.com/GalSim-developers % % This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/test_interpolants.py b/devel/modules/test_interpolants.py index 7d25fd4e52..33f76d1863 100644 --- a/devel/modules/test_interpolants.py +++ b/devel/modules/test_interpolants.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/test_interpolants_parametric.py b/devel/modules/test_interpolants_parametric.py index 46d13fdac6..0e856a452a 100644 --- a/devel/modules/test_interpolants_parametric.py +++ b/devel/modules/test_interpolants_parametric.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/modules/test_mom_timing.py b/devel/modules/test_mom_timing.py index 8231aa5f6b..744e99c6bb 100644 --- a/devel/modules/test_mom_timing.py +++ b/devel/modules/test_mom_timing.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/plot_si.py b/devel/plot_si.py index 6d1f5680a6..7c85649529 100644 --- a/devel/plot_si.py +++ b/devel/plot_si.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/plot_thin.py b/devel/plot_thin.py index bf659caa7a..029ebf7471 100644 --- a/devel/plot_thin.py +++ b/devel/plot_thin.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/roman/make_sip_file.py b/devel/roman/make_sip_file.py index d8a4308004..51a1e064d3 100644 --- a/devel/roman/make_sip_file.py +++ b/devel/roman/make_sip_file.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/roman/test_roman_phot.py b/devel/roman/test_roman_phot.py index a6cc34fac2..f9b5c05293 100644 --- a/devel/roman/test_roman_phot.py +++ b/devel/roman/test_roman_phot.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/roman/test_roman_psf.py b/devel/roman/test_roman_psf.py index 758110b5d3..ce61146542 100644 --- a/devel/roman/test_roman_psf.py +++ b/devel/roman/test_roman_psf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/test_zernike_speed.py b/devel/test_zernike_speed.py index 3289dfc139..05e47c7420 100644 --- a/devel/test_zernike_speed.py +++ b/devel/test_zernike_speed.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/testlinecounting.py b/devel/testlinecounting.py index 23f62eed3e..41aa12eea5 100644 --- a/devel/testlinecounting.py +++ b/devel/testlinecounting.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_combine_waves.py b/devel/time_combine_waves.py index 96cf1dd3e8..1469021c6c 100644 --- a/devel/time_combine_waves.py +++ b/devel/time_combine_waves.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_conv.py b/devel/time_conv.py index 5171eb6168..b9f5223d25 100644 --- a/devel/time_conv.py +++ b/devel/time_conv.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_expon_k.py b/devel/time_expon_k.py index 268b4f335e..c785f5f0e3 100644 --- a/devel/time_expon_k.py +++ b/devel/time_expon_k.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_faint_bd_gals.py b/devel/time_faint_bd_gals.py index 0fae5870ec..0f59306faf 100644 --- a/devel/time_faint_bd_gals.py +++ b/devel/time_faint_bd_gals.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_hankel.py b/devel/time_hankel.py index ac819ab3ec..acf8e0de5b 100644 --- a/devel/time_hankel.py +++ b/devel/time_hankel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_invsqrt.cpp b/devel/time_invsqrt.cpp index 33e495f1a5..9031c7630f 100644 --- a/devel/time_invsqrt.cpp +++ b/devel/time_invsqrt.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_knots.py b/devel/time_knots.py index 978f43ab30..ef6e9af7ff 100644 --- a/devel/time_knots.py +++ b/devel/time_knots.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_noise_pad.py b/devel/time_noise_pad.py index 666d16668f..7686fc976a 100644 --- a/devel/time_noise_pad.py +++ b/devel/time_noise_pad.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_phot.py b/devel/time_phot.py index 763fde776b..5e18be3f18 100644 --- a/devel/time_phot.py +++ b/devel/time_phot.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_sersic.py b/devel/time_sersic.py index 7934ea590a..af5b4321cf 100644 --- a/devel/time_sersic.py +++ b/devel/time_sersic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_silicon_accumulate.py b/devel/time_silicon_accumulate.py index 194e39c1c1..ba30823cad 100644 --- a/devel/time_silicon_accumulate.py +++ b/devel/time_silicon_accumulate.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_wcs.py b/devel/time_wcs.py index fd4c8b84b9..42c0056983 100644 --- a/devel/time_wcs.py +++ b/devel/time_wcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/time_zip.py b/devel/time_zip.py index 025fc7cef0..330bee0539 100644 --- a/devel/time_zip.py +++ b/devel/time_zip.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/treerings/tr_plots.py b/devel/treerings/tr_plots.py index 1bc018cc87..b9f0ee47ad 100644 --- a/devel/treerings/tr_plots.py +++ b/devel/treerings/tr_plots.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/treerings/tree_ring_test_function.py b/devel/treerings/tree_ring_test_function.py index 1b48a6d0ca..769ee83de6 100644 --- a/devel/treerings/tree_ring_test_function.py +++ b/devel/treerings/tree_ring_test_function.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/devel/treerings/write_tree_ring_table.py b/devel/treerings/write_tree_ring_table.py index 68219d4406..241c9919d7 100644 --- a/devel/treerings/write_tree_ring_table.py +++ b/devel/treerings/write_tree_ring_table.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/docs/conf.py b/docs/conf.py index b468d03e6f..295b5443a6 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/docs/gh-link.py b/docs/gh-link.py index 45b35d61a5..d8a14a5f21 100644 --- a/docs/gh-link.py +++ b/docs/gh-link.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/IntExample.cpp b/examples/IntExample.cpp index 212c77af5c..4a78978bd4 100644 --- a/examples/IntExample.cpp +++ b/examples/IntExample.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/check_des b/examples/check_des index bc7dedd2dd..1007534b2a 100755 --- a/examples/check_des +++ b/examples/check_des @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/check_diff.py b/examples/check_diff.py index e365dc1786..5b804133a6 100644 --- a/examples/check_diff.py +++ b/examples/check_diff.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/check_json b/examples/check_json index 31e92ee03b..fd6d10a41b 100755 --- a/examples/check_json +++ b/examples/check_json @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/check_yaml b/examples/check_yaml index 12b834cbd2..db055aad43 100755 --- a/examples/check_yaml +++ b/examples/check_yaml @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/data/plot_ps.py b/examples/data/plot_ps.py index 2ccf8a032e..39b8f1f73e 100644 --- a/examples/data/plot_ps.py +++ b/examples/data/plot_ps.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo1.py b/examples/demo1.py index 993c5f2947..6efb29bd59 100644 --- a/examples/demo1.py +++ b/examples/demo1.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo1.yaml b/examples/demo1.yaml index 2058060b4e..7671906dc0 100644 --- a/examples/demo1.yaml +++ b/examples/demo1.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo10.py b/examples/demo10.py index 1a6e7d7a64..6c1e080ffa 100644 --- a/examples/demo10.py +++ b/examples/demo10.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo10.yaml b/examples/demo10.yaml index 1f2c4283a9..8b5f10734b 100644 --- a/examples/demo10.yaml +++ b/examples/demo10.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo11.py b/examples/demo11.py index 4381bd2814..b8226ea2ce 100644 --- a/examples/demo11.py +++ b/examples/demo11.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo11.yaml b/examples/demo11.yaml index 8913e95042..27876c0e2d 100644 --- a/examples/demo11.yaml +++ b/examples/demo11.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo12.py b/examples/demo12.py index a19484f689..72eb71e257 100644 --- a/examples/demo12.py +++ b/examples/demo12.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo12.yaml b/examples/demo12.yaml index d645385925..29f71b0f1b 100644 --- a/examples/demo12.yaml +++ b/examples/demo12.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo13.py b/examples/demo13.py index 00228edfb3..a62129ce4d 100644 --- a/examples/demo13.py +++ b/examples/demo13.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo13.yaml b/examples/demo13.yaml index 7ec1e6314b..90edc5d794 100644 --- a/examples/demo13.yaml +++ b/examples/demo13.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo2.py b/examples/demo2.py index dbe2b4121e..5d4f0e2b51 100644 --- a/examples/demo2.py +++ b/examples/demo2.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo2.yaml b/examples/demo2.yaml index 7e79ab7405..03350983fa 100644 --- a/examples/demo2.yaml +++ b/examples/demo2.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo3.py b/examples/demo3.py index 052f585f12..90a364488d 100644 --- a/examples/demo3.py +++ b/examples/demo3.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo3.yaml b/examples/demo3.yaml index 9e145b51b1..62090a52c3 100644 --- a/examples/demo3.yaml +++ b/examples/demo3.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo4.py b/examples/demo4.py index aaeed8522f..f85ae64c38 100644 --- a/examples/demo4.py +++ b/examples/demo4.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo4.yaml b/examples/demo4.yaml index 4a50451266..c6861844d3 100644 --- a/examples/demo4.yaml +++ b/examples/demo4.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo5.py b/examples/demo5.py index 6c1d694ab0..69ec76f7c4 100644 --- a/examples/demo5.py +++ b/examples/demo5.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo5.yaml b/examples/demo5.yaml index 58f87a54a5..68de1dc489 100644 --- a/examples/demo5.yaml +++ b/examples/demo5.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo6.py b/examples/demo6.py index 924d0fd35a..fb661c9843 100644 --- a/examples/demo6.py +++ b/examples/demo6.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo6.yaml b/examples/demo6.yaml index 5199b209a6..43049b8df6 100644 --- a/examples/demo6.yaml +++ b/examples/demo6.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo7.py b/examples/demo7.py index 68adf0e0cc..50829ecd80 100644 --- a/examples/demo7.py +++ b/examples/demo7.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo7.yaml b/examples/demo7.yaml index 20d325cc9a..95d186fee8 100644 --- a/examples/demo7.yaml +++ b/examples/demo7.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo8.py b/examples/demo8.py index 8e318a5630..83b6e0c4b5 100644 --- a/examples/demo8.py +++ b/examples/demo8.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo8.yaml b/examples/demo8.yaml index c48eb953bb..18326f6076 100644 --- a/examples/demo8.yaml +++ b/examples/demo8.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo9.py b/examples/demo9.py index dba15f449b..0452b94d88 100644 --- a/examples/demo9.py +++ b/examples/demo9.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/demo9.yaml b/examples/demo9.yaml index 887a37552d..2de7acfcd5 100644 --- a/examples/demo9.yaml +++ b/examples/demo9.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/blend.py b/examples/des/blend.py index cc1ceb07b1..c3fae1dcb0 100644 --- a/examples/des/blend.py +++ b/examples/des/blend.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/blend.yaml b/examples/des/blend.yaml index 91ea7bf5d9..da4d82e5cd 100644 --- a/examples/des/blend.yaml +++ b/examples/des/blend.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/blendset.yaml b/examples/des/blendset.yaml index 1bc191de39..1592c96e1a 100644 --- a/examples/des/blendset.yaml +++ b/examples/des/blendset.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/des_wcs.py b/examples/des/des_wcs.py index 9b08d52281..0db4d63c3c 100644 --- a/examples/des/des_wcs.py +++ b/examples/des/des_wcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/draw_psf.py b/examples/des/draw_psf.py index 0024480227..bead657090 100644 --- a/examples/des/draw_psf.py +++ b/examples/des/draw_psf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/draw_psf.yaml b/examples/des/draw_psf.yaml index a604ff33b9..1c4a66f243 100644 --- a/examples/des/draw_psf.yaml +++ b/examples/des/draw_psf.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/excluded_random.py b/examples/des/excluded_random.py index 444f37476c..8064f5bede 100644 --- a/examples/des/excluded_random.py +++ b/examples/des/excluded_random.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/hsm_shape_measure.py b/examples/des/hsm_shape_measure.py index 37af7fcd80..806e4ef711 100644 --- a/examples/des/hsm_shape_measure.py +++ b/examples/des/hsm_shape_measure.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/log_normal.py b/examples/des/log_normal.py index 7553179a23..5f83012736 100644 --- a/examples/des/log_normal.py +++ b/examples/des/log_normal.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/des/meds.yaml b/examples/des/meds.yaml index 2b8d88ab65..88f611919f 100644 --- a/examples/des/meds.yaml +++ b/examples/des/meds.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/fft_vs_geom_movie.py b/examples/fft_vs_geom_movie.py index 1b2e1a6d3b..4cf6d6a1ef 100644 --- a/examples/fft_vs_geom_movie.py +++ b/examples/fft_vs_geom_movie.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/cgc.yaml b/examples/great3/cgc.yaml index fad99c950b..ab3d3c4847 100644 --- a/examples/great3/cgc.yaml +++ b/examples/great3/cgc.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/cgc_faint.yaml b/examples/great3/cgc_faint.yaml index af652634ed..9d787b6159 100644 --- a/examples/great3/cgc_faint.yaml +++ b/examples/great3/cgc_faint.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/cgc_psf.yaml b/examples/great3/cgc_psf.yaml index f9d5add9dd..3014945973 100644 --- a/examples/great3/cgc_psf.yaml +++ b/examples/great3/cgc_psf.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/great3_reject.py b/examples/great3/great3_reject.py index 59bf846954..ddf5588bbf 100644 --- a/examples/great3/great3_reject.py +++ b/examples/great3/great3_reject.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/noise_free.py b/examples/great3/noise_free.py index 6f6a47c582..9f7558d202 100644 --- a/examples/great3/noise_free.py +++ b/examples/great3/noise_free.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/rgc.yaml b/examples/great3/rgc.yaml index 5b3522f81f..f77552f4f1 100644 --- a/examples/great3/rgc.yaml +++ b/examples/great3/rgc.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/great3/rgc_psf.yaml b/examples/great3/rgc_psf.yaml index bb53a35512..09629d8e83 100644 --- a/examples/great3/rgc_psf.yaml +++ b/examples/great3/rgc_psf.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/input/make_default_input.py b/examples/input/make_default_input.py index d360adbcc2..397e98e00c 100644 --- a/examples/input/make_default_input.py +++ b/examples/input/make_default_input.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/log_normal.py b/examples/log_normal.py index c798aa6be3..a830d44200 100644 --- a/examples/log_normal.py +++ b/examples/log_normal.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/lsst.yaml b/examples/lsst.yaml index 768322e46a..3964fce107 100644 --- a/examples/lsst.yaml +++ b/examples/lsst.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/make_coadd.py b/examples/make_coadd.py index e2c8ee095b..b40e7d1d0a 100644 --- a/examples/make_coadd.py +++ b/examples/make_coadd.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/mixed_scene.py b/examples/mixed_scene.py index 22cc1cb022..babe0ecd05 100644 --- a/examples/mixed_scene.py +++ b/examples/mixed_scene.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/psf_wf_movie.py b/examples/psf_wf_movie.py index cc2013b634..ff02fc5e61 100644 --- a/examples/psf_wf_movie.py +++ b/examples/psf_wf_movie.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/shear_test1.yaml b/examples/shear_test1.yaml index 03f8ec5846..f872df546d 100644 --- a/examples/shear_test1.yaml +++ b/examples/shear_test1.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/examples/testRandom.cpp b/examples/testRandom.cpp index 4a2cf95bec..c7af480b21 100644 --- a/examples/testRandom.cpp +++ b/examples/testRandom.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/__init__.py b/galsim/__init__.py index 0dd6a6fdee..f20aec18a0 100644 --- a/galsim/__init__.py +++ b/galsim/__init__.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. @@ -53,7 +53,7 @@ -Copyright (c) 2012-2023 by the GalSim developers team on GitHub +Copyright (c) 2012-2026 by the GalSim developers team on GitHub https://github.com/GalSim-developers Redistribution and use in source and binary forms, with or without diff --git a/galsim/__main__.py b/galsim/__main__.py index 07f8b2dec3..214cce85a1 100644 --- a/galsim/__main__.py +++ b/galsim/__main__.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/_pyfits.py b/galsim/_pyfits.py index 835d7d1c66..7e4ef5cea0 100644 --- a/galsim/_pyfits.py +++ b/galsim/_pyfits.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/_utilities.py b/galsim/_utilities.py index e1d845f784..a3daf90665 100644 --- a/galsim/_utilities.py +++ b/galsim/_utilities.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/_version.py b/galsim/_version.py index fa04b39fa1..300222e36a 100644 --- a/galsim/_version.py +++ b/galsim/_version.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/airy.py b/galsim/airy.py index aa175ea0c4..b131248425 100644 --- a/galsim/airy.py +++ b/galsim/airy.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/angle.py b/galsim/angle.py index d4a76f7a7f..8c525bf5ba 100644 --- a/galsim/angle.py +++ b/galsim/angle.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/bandpass.py b/galsim/bandpass.py index c93e11a517..c5c0fbad89 100644 --- a/galsim/bandpass.py +++ b/galsim/bandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/bessel.py b/galsim/bessel.py index 9b729a86b5..b9d6893d01 100644 --- a/galsim/bessel.py +++ b/galsim/bessel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/bounds.py b/galsim/bounds.py index 0cd4976d37..c0fb46d630 100644 --- a/galsim/bounds.py +++ b/galsim/bounds.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/box.py b/galsim/box.py index 99146cbb42..18dfc003a5 100644 --- a/galsim/box.py +++ b/galsim/box.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/catalog.py b/galsim/catalog.py index 5d3b66066a..c7c8f5b5ed 100644 --- a/galsim/catalog.py +++ b/galsim/catalog.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/cdmodel.py b/galsim/cdmodel.py index 74ca04c99b..8d3bcd992e 100644 --- a/galsim/cdmodel.py +++ b/galsim/cdmodel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/celestial.py b/galsim/celestial.py index c302a27043..92ea09e822 100644 --- a/galsim/celestial.py +++ b/galsim/celestial.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/chromatic.py b/galsim/chromatic.py index 813eb7af49..ac26ae0e0b 100644 --- a/galsim/chromatic.py +++ b/galsim/chromatic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/__init__.py b/galsim/config/__init__.py index 82e1a84508..e808c2c7d7 100644 --- a/galsim/config/__init__.py +++ b/galsim/config/__init__.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/bandpass.py b/galsim/config/bandpass.py index 0057349877..fd768b4168 100644 --- a/galsim/config/bandpass.py +++ b/galsim/config/bandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/extra.py b/galsim/config/extra.py index d95bfb2825..634dfa6751 100644 --- a/galsim/config/extra.py +++ b/galsim/config/extra.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/extra_badpix.py b/galsim/config/extra_badpix.py index e2788ba9e7..2372f3a529 100644 --- a/galsim/config/extra_badpix.py +++ b/galsim/config/extra_badpix.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/extra_psf.py b/galsim/config/extra_psf.py index 861a00e30c..1c1122ac86 100644 --- a/galsim/config/extra_psf.py +++ b/galsim/config/extra_psf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/extra_truth.py b/galsim/config/extra_truth.py index 79a4a8597f..f400037b19 100644 --- a/galsim/config/extra_truth.py +++ b/galsim/config/extra_truth.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/extra_weight.py b/galsim/config/extra_weight.py index 5e8bdf6525..6df834c187 100644 --- a/galsim/config/extra_weight.py +++ b/galsim/config/extra_weight.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/gsobject.py b/galsim/config/gsobject.py index 2cb37d1173..5754330c6b 100644 --- a/galsim/config/gsobject.py +++ b/galsim/config/gsobject.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/image.py b/galsim/config/image.py index 697a9b73e5..3e9c660a6a 100644 --- a/galsim/config/image.py +++ b/galsim/config/image.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/image_scattered.py b/galsim/config/image_scattered.py index 995b68f820..f067a3b6df 100644 --- a/galsim/config/image_scattered.py +++ b/galsim/config/image_scattered.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/image_tiled.py b/galsim/config/image_tiled.py index 478b589e3e..8bd149b6ef 100644 --- a/galsim/config/image_tiled.py +++ b/galsim/config/image_tiled.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input.py b/galsim/config/input.py index 97f8479876..b6afb0cd0c 100644 --- a/galsim/config/input.py +++ b/galsim/config/input.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input_cosmos.py b/galsim/config/input_cosmos.py index 5e6f9d819d..7eed1ab9d4 100644 --- a/galsim/config/input_cosmos.py +++ b/galsim/config/input_cosmos.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input_fitsheader.py b/galsim/config/input_fitsheader.py index 5293b215e5..c8a16c6b85 100644 --- a/galsim/config/input_fitsheader.py +++ b/galsim/config/input_fitsheader.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input_image.py b/galsim/config/input_image.py index 68767ee7b7..459e5d7438 100644 --- a/galsim/config/input_image.py +++ b/galsim/config/input_image.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input_nfw.py b/galsim/config/input_nfw.py index 8b443905ef..c47b7253b7 100644 --- a/galsim/config/input_nfw.py +++ b/galsim/config/input_nfw.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input_powerspectrum.py b/galsim/config/input_powerspectrum.py index c84bba97e6..ce08208ba2 100644 --- a/galsim/config/input_powerspectrum.py +++ b/galsim/config/input_powerspectrum.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/input_real.py b/galsim/config/input_real.py index f0c5dd857d..9aa807b073 100644 --- a/galsim/config/input_real.py +++ b/galsim/config/input_real.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/noise.py b/galsim/config/noise.py index cd2448d7d1..685275e627 100644 --- a/galsim/config/noise.py +++ b/galsim/config/noise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/output.py b/galsim/config/output.py index e6a86c1d5e..7d91fcaf06 100644 --- a/galsim/config/output.py +++ b/galsim/config/output.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/output_datacube.py b/galsim/config/output_datacube.py index 9e2fb196a4..72a563c1d7 100644 --- a/galsim/config/output_datacube.py +++ b/galsim/config/output_datacube.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/output_multifits.py b/galsim/config/output_multifits.py index c0de86f944..53494236f5 100644 --- a/galsim/config/output_multifits.py +++ b/galsim/config/output_multifits.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/photon_ops.py b/galsim/config/photon_ops.py index 6a3f874852..068283ea77 100644 --- a/galsim/config/photon_ops.py +++ b/galsim/config/photon_ops.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/process.py b/galsim/config/process.py index 17ca513d2c..2283e5cf49 100644 --- a/galsim/config/process.py +++ b/galsim/config/process.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/sed.py b/galsim/config/sed.py index 05ed926ddf..1f87d5a827 100644 --- a/galsim/config/sed.py +++ b/galsim/config/sed.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/sensor.py b/galsim/config/sensor.py index 858e7d0f48..d086bd0906 100644 --- a/galsim/config/sensor.py +++ b/galsim/config/sensor.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/stamp.py b/galsim/config/stamp.py index 78119ddf81..f293e8fef9 100644 --- a/galsim/config/stamp.py +++ b/galsim/config/stamp.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/stamp_ring.py b/galsim/config/stamp_ring.py index 1e9bb96ae0..d0a1e6794a 100644 --- a/galsim/config/stamp_ring.py +++ b/galsim/config/stamp_ring.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/util.py b/galsim/config/util.py index 35aade6cf7..0c28dfafeb 100644 --- a/galsim/config/util.py +++ b/galsim/config/util.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/value.py b/galsim/config/value.py index 2ba2411fec..13b58dd9ec 100644 --- a/galsim/config/value.py +++ b/galsim/config/value.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/value_eval.py b/galsim/config/value_eval.py index 87c594bf79..a324849abf 100644 --- a/galsim/config/value_eval.py +++ b/galsim/config/value_eval.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/value_random.py b/galsim/config/value_random.py index bf8d0f50b6..9012dc92df 100644 --- a/galsim/config/value_random.py +++ b/galsim/config/value_random.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/config/wcs.py b/galsim/config/wcs.py index 9c22d734e4..11d7075dd2 100644 --- a/galsim/config/wcs.py +++ b/galsim/config/wcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/convolve.py b/galsim/convolve.py index c198e03773..a34ebd5565 100644 --- a/galsim/convolve.py +++ b/galsim/convolve.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/correlatednoise.py b/galsim/correlatednoise.py index e0a3580a15..af212b94cb 100644 --- a/galsim/correlatednoise.py +++ b/galsim/correlatednoise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/dcr.py b/galsim/dcr.py index f2276aeeed..e260399c8a 100644 --- a/galsim/dcr.py +++ b/galsim/dcr.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/deltafunction.py b/galsim/deltafunction.py index 299d86de03..80576ba937 100644 --- a/galsim/deltafunction.py +++ b/galsim/deltafunction.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/deprecated/__init__.py b/galsim/deprecated/__init__.py index bf2e51e384..43ad7108f1 100644 --- a/galsim/deprecated/__init__.py +++ b/galsim/deprecated/__init__.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/deprecated/correlatednoise.py b/galsim/deprecated/correlatednoise.py index 92f979df92..ebf3f53612 100644 --- a/galsim/deprecated/correlatednoise.py +++ b/galsim/deprecated/correlatednoise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/deprecated/integ.py b/galsim/deprecated/integ.py index f0ec00a708..75aa33e95a 100644 --- a/galsim/deprecated/integ.py +++ b/galsim/deprecated/integ.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/deprecated/randwalk.py b/galsim/deprecated/randwalk.py index b4b1b9d997..ac81f4c8bf 100644 --- a/galsim/deprecated/randwalk.py +++ b/galsim/deprecated/randwalk.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/des/__init__.py b/galsim/des/__init__.py index 7792bf8134..858d86d4ff 100644 --- a/galsim/des/__init__.py +++ b/galsim/des/__init__.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/des/des_meds.py b/galsim/des/des_meds.py index c28ca98aad..5b80743fe0 100644 --- a/galsim/des/des_meds.py +++ b/galsim/des/des_meds.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/des/des_psfex.py b/galsim/des/des_psfex.py index 0a0960a1d2..6bb54c945b 100644 --- a/galsim/des/des_psfex.py +++ b/galsim/des/des_psfex.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/des/des_shapelet.py b/galsim/des/des_shapelet.py index 0b9b6c2749..0cff23ee64 100644 --- a/galsim/des/des_shapelet.py +++ b/galsim/des/des_shapelet.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/detectors.py b/galsim/detectors.py index ec1f8a03dc..933e98fcd6 100644 --- a/galsim/detectors.py +++ b/galsim/detectors.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/download_cosmos.py b/galsim/download_cosmos.py index 827484bbc3..cc9cff7876 100644 --- a/galsim/download_cosmos.py +++ b/galsim/download_cosmos.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/errors.py b/galsim/errors.py index b7969d2827..ae1281df2b 100644 --- a/galsim/errors.py +++ b/galsim/errors.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/exponential.py b/galsim/exponential.py index 46cdc140b6..b7d5aef0c1 100644 --- a/galsim/exponential.py +++ b/galsim/exponential.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/fft.py b/galsim/fft.py index 5d4d876f76..1d4c7f0241 100644 --- a/galsim/fft.py +++ b/galsim/fft.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/fits.py b/galsim/fits.py index cdf6a6cb7c..1c970887a3 100644 --- a/galsim/fits.py +++ b/galsim/fits.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/fitswcs.py b/galsim/fitswcs.py index 7a80c8ce0b..ed3b88b99a 100644 --- a/galsim/fitswcs.py +++ b/galsim/fitswcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/fouriersqrt.py b/galsim/fouriersqrt.py index 723c9799d1..a144502930 100644 --- a/galsim/fouriersqrt.py +++ b/galsim/fouriersqrt.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/galaxy_sample.py b/galsim/galaxy_sample.py index dc8bc89a49..aca7fe29e6 100644 --- a/galsim/galaxy_sample.py +++ b/galsim/galaxy_sample.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/gaussian.py b/galsim/gaussian.py index 9fa4f53be2..064249e5f4 100644 --- a/galsim/gaussian.py +++ b/galsim/gaussian.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/gsobject.py b/galsim/gsobject.py index d998d743fb..84c935bc5b 100644 --- a/galsim/gsobject.py +++ b/galsim/gsobject.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/gsparams.py b/galsim/gsparams.py index 4771f90b9c..479d37a60c 100644 --- a/galsim/gsparams.py +++ b/galsim/gsparams.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/hsm.py b/galsim/hsm.py index 4dceaa7909..6d0e952371 100644 --- a/galsim/hsm.py +++ b/galsim/hsm.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/image.py b/galsim/image.py index a6d20b95bc..3681958504 100644 --- a/galsim/image.py +++ b/galsim/image.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/inclined.py b/galsim/inclined.py index 0495a272d6..03a8ac22c6 100644 --- a/galsim/inclined.py +++ b/galsim/inclined.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/integ.py b/galsim/integ.py index 24df68da5c..4209db65fa 100644 --- a/galsim/integ.py +++ b/galsim/integ.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/interpolant.py b/galsim/interpolant.py index 06d022d446..4e24b036b3 100644 --- a/galsim/interpolant.py +++ b/galsim/interpolant.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/interpolatedimage.py b/galsim/interpolatedimage.py index 07c8f3be9e..9ed6d853f0 100644 --- a/galsim/interpolatedimage.py +++ b/galsim/interpolatedimage.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/knots.py b/galsim/knots.py index 3ebc82f7bb..3d1a00e27e 100644 --- a/galsim/knots.py +++ b/galsim/knots.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/kolmogorov.py b/galsim/kolmogorov.py index 1fa7066536..e03993ee38 100644 --- a/galsim/kolmogorov.py +++ b/galsim/kolmogorov.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/lensing_ps.py b/galsim/lensing_ps.py index d0b56c97bd..421c6b1a4e 100644 --- a/galsim/lensing_ps.py +++ b/galsim/lensing_ps.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/main.py b/galsim/main.py index 300124e382..a60ed70db3 100644 --- a/galsim/main.py +++ b/galsim/main.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/meta_data.py b/galsim/meta_data.py index a019ae1328..8586970d3f 100644 --- a/galsim/meta_data.py +++ b/galsim/meta_data.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/moffat.py b/galsim/moffat.py index b251706a77..189d1b5605 100644 --- a/galsim/moffat.py +++ b/galsim/moffat.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/nfw_halo.py b/galsim/nfw_halo.py index 4c550508ff..f65d28bdcb 100644 --- a/galsim/nfw_halo.py +++ b/galsim/nfw_halo.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/noise.py b/galsim/noise.py index 49a9f69d5c..67e722c754 100644 --- a/galsim/noise.py +++ b/galsim/noise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/phase_psf.py b/galsim/phase_psf.py index e1181f8bf8..0178040579 100644 --- a/galsim/phase_psf.py +++ b/galsim/phase_psf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/phase_screens.py b/galsim/phase_screens.py index fa00df4b84..cdb2eedb18 100644 --- a/galsim/phase_screens.py +++ b/galsim/phase_screens.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/photon_array.py b/galsim/photon_array.py index 5de24fcaf8..502dc2c87e 100644 --- a/galsim/photon_array.py +++ b/galsim/photon_array.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/position.py b/galsim/position.py index 147dad3ca3..7460837868 100644 --- a/galsim/position.py +++ b/galsim/position.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/pse.py b/galsim/pse.py index c795859d33..7d49fd032a 100644 --- a/galsim/pse.py +++ b/galsim/pse.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/random.py b/galsim/random.py index a47246aa03..60f23d7270 100644 --- a/galsim/random.py +++ b/galsim/random.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/real.py b/galsim/real.py index 01c144ea16..8f12ad23a4 100644 --- a/galsim/real.py +++ b/galsim/real.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/__init__.py b/galsim/roman/__init__.py index 8468b62601..c754e5cb05 100644 --- a/galsim/roman/__init__.py +++ b/galsim/roman/__init__.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/roman_backgrounds.py b/galsim/roman/roman_backgrounds.py index bd56179c93..9e00088616 100644 --- a/galsim/roman/roman_backgrounds.py +++ b/galsim/roman/roman_backgrounds.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/roman_bandpass.py b/galsim/roman/roman_bandpass.py index 9ff664bc20..1673ede1dc 100644 --- a/galsim/roman/roman_bandpass.py +++ b/galsim/roman/roman_bandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/roman_config.py b/galsim/roman/roman_config.py index b2d49f3cdf..56ae7adf1d 100644 --- a/galsim/roman/roman_config.py +++ b/galsim/roman/roman_config.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/roman_detectors.py b/galsim/roman/roman_detectors.py index 256d8ba5ac..a9030aaa80 100644 --- a/galsim/roman/roman_detectors.py +++ b/galsim/roman/roman_detectors.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/roman_psfs.py b/galsim/roman/roman_psfs.py index c7a8dc7f10..28a63ece4a 100644 --- a/galsim/roman/roman_psfs.py +++ b/galsim/roman/roman_psfs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/roman/roman_wcs.py b/galsim/roman/roman_wcs.py index 24ec3e2b79..416555f59e 100644 --- a/galsim/roman/roman_wcs.py +++ b/galsim/roman/roman_wcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/second_kick.py b/galsim/second_kick.py index 1dc96bd53b..be0ce85aeb 100644 --- a/galsim/second_kick.py +++ b/galsim/second_kick.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/sed.py b/galsim/sed.py index e4427d89b4..704957d446 100644 --- a/galsim/sed.py +++ b/galsim/sed.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/sensor.py b/galsim/sensor.py index d38baaf3d2..844cc0f4f9 100644 --- a/galsim/sensor.py +++ b/galsim/sensor.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/sersic.py b/galsim/sersic.py index 0ef996bc12..df2c5daa5f 100644 --- a/galsim/sersic.py +++ b/galsim/sersic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/shapelet.py b/galsim/shapelet.py index 4d5ffdc77d..20d1dc3f51 100644 --- a/galsim/shapelet.py +++ b/galsim/shapelet.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/shear.py b/galsim/shear.py index 70fff39163..4a73814452 100644 --- a/galsim/shear.py +++ b/galsim/shear.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/spergel.py b/galsim/spergel.py index bd12345522..5904809efb 100644 --- a/galsim/spergel.py +++ b/galsim/spergel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/sum.py b/galsim/sum.py index 2a0598cde0..148b86f65a 100644 --- a/galsim/sum.py +++ b/galsim/sum.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/table.py b/galsim/table.py index 1eef0926a6..1ccf2acb7c 100644 --- a/galsim/table.py +++ b/galsim/table.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/transform.py b/galsim/transform.py index bd24779d51..8e24a7f7ba 100644 --- a/galsim/transform.py +++ b/galsim/transform.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/utilities.py b/galsim/utilities.py index acd233ca58..6300b2847c 100644 --- a/galsim/utilities.py +++ b/galsim/utilities.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/vonkarman.py b/galsim/vonkarman.py index bd2abaf2f7..c0f42743d9 100644 --- a/galsim/vonkarman.py +++ b/galsim/vonkarman.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/wcs.py b/galsim/wcs.py index 014dfa1aa8..e93fa68c00 100644 --- a/galsim/wcs.py +++ b/galsim/wcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/wfirst.py b/galsim/wfirst.py index 1d9dba349f..2b5eddd284 100644 --- a/galsim/wfirst.py +++ b/galsim/wfirst.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/galsim/zernike.py b/galsim/zernike.py index 9bace9cfa0..e162a20353 100644 --- a/galsim/zernike.py +++ b/galsim/zernike.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/GalSim.h b/include/GalSim.h index 69c4c5715f..5f9bafffff 100644 --- a/include/GalSim.h +++ b/include/GalSim.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/BinomFact.h b/include/galsim/BinomFact.h index 02104a40a1..f47122e3be 100644 --- a/include/galsim/BinomFact.h +++ b/include/galsim/BinomFact.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Bounds.h b/include/galsim/Bounds.h index 75a67d9962..ef377623b2 100644 --- a/include/galsim/Bounds.h +++ b/include/galsim/Bounds.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/CDModel.h b/include/galsim/CDModel.h index 0434fceda8..48313fc181 100644 --- a/include/galsim/CDModel.h +++ b/include/galsim/CDModel.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/CorrelatedNoise.h b/include/galsim/CorrelatedNoise.h index 3b7b34a557..3c4b98cf05 100644 --- a/include/galsim/CorrelatedNoise.h +++ b/include/galsim/CorrelatedNoise.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/GSParams.h b/include/galsim/GSParams.h index 8129956b3c..8c23a1b916 100644 --- a/include/galsim/GSParams.h +++ b/include/galsim/GSParams.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Image.h b/include/galsim/Image.h index 3923e03c87..55362ddd41 100644 --- a/include/galsim/Image.h +++ b/include/galsim/Image.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/ImageArith.h b/include/galsim/ImageArith.h index 3c01642a6f..838cf436f3 100644 --- a/include/galsim/ImageArith.h +++ b/include/galsim/ImageArith.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Interpolant.h b/include/galsim/Interpolant.h index 955eafe4d6..f0cedf5ba5 100644 --- a/include/galsim/Interpolant.h +++ b/include/galsim/Interpolant.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/LRUCache.h b/include/galsim/LRUCache.h index 796488ca16..cd6157a96b 100644 --- a/include/galsim/LRUCache.h +++ b/include/galsim/LRUCache.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Laguerre.h b/include/galsim/Laguerre.h index f12f1ed0c4..8d37490b0a 100644 --- a/include/galsim/Laguerre.h +++ b/include/galsim/Laguerre.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/OneDimensionalDeviate.h b/include/galsim/OneDimensionalDeviate.h index 5d8aa575e8..0ed0bc2d8b 100644 --- a/include/galsim/OneDimensionalDeviate.h +++ b/include/galsim/OneDimensionalDeviate.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/PhotonArray.h b/include/galsim/PhotonArray.h index 34ba27a074..126e6c1382 100644 --- a/include/galsim/PhotonArray.h +++ b/include/galsim/PhotonArray.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Polygon.h b/include/galsim/Polygon.h index 1948613d3b..6f1beffdee 100644 --- a/include/galsim/Polygon.h +++ b/include/galsim/Polygon.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/ProbabilityTree.h b/include/galsim/ProbabilityTree.h index 313a054a23..37d42a7ff7 100644 --- a/include/galsim/ProbabilityTree.h +++ b/include/galsim/ProbabilityTree.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Random.h b/include/galsim/Random.h index d6afe8b7c5..f40cc8205d 100644 --- a/include/galsim/Random.h +++ b/include/galsim/Random.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/RealGalaxy.h b/include/galsim/RealGalaxy.h index 0b14774454..4751ffaca0 100644 --- a/include/galsim/RealGalaxy.h +++ b/include/galsim/RealGalaxy.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBAdd.h b/include/galsim/SBAdd.h index 5a8b59a8e6..d7f0cfdade 100644 --- a/include/galsim/SBAdd.h +++ b/include/galsim/SBAdd.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBAddImpl.h b/include/galsim/SBAddImpl.h index 492c3659ef..2f78ed0507 100644 --- a/include/galsim/SBAddImpl.h +++ b/include/galsim/SBAddImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBAiry.h b/include/galsim/SBAiry.h index 6edf348395..7079aabf79 100644 --- a/include/galsim/SBAiry.h +++ b/include/galsim/SBAiry.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBAiryImpl.h b/include/galsim/SBAiryImpl.h index 584a491a16..90716bf200 100644 --- a/include/galsim/SBAiryImpl.h +++ b/include/galsim/SBAiryImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBBox.h b/include/galsim/SBBox.h index 55048cce4f..b44c7e1d72 100644 --- a/include/galsim/SBBox.h +++ b/include/galsim/SBBox.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBBoxImpl.h b/include/galsim/SBBoxImpl.h index a39bd872ba..a1d022c24c 100644 --- a/include/galsim/SBBoxImpl.h +++ b/include/galsim/SBBoxImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBConvolve.h b/include/galsim/SBConvolve.h index 01b7d1da71..497348dcc7 100644 --- a/include/galsim/SBConvolve.h +++ b/include/galsim/SBConvolve.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBConvolveImpl.h b/include/galsim/SBConvolveImpl.h index 351688e6aa..fd431a9800 100644 --- a/include/galsim/SBConvolveImpl.h +++ b/include/galsim/SBConvolveImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBDeconvolve.h b/include/galsim/SBDeconvolve.h index 7702b0a92d..8c58fd76f4 100644 --- a/include/galsim/SBDeconvolve.h +++ b/include/galsim/SBDeconvolve.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBDeconvolveImpl.h b/include/galsim/SBDeconvolveImpl.h index f3c82a88c3..274f01fd80 100644 --- a/include/galsim/SBDeconvolveImpl.h +++ b/include/galsim/SBDeconvolveImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBDeltaFunction.h b/include/galsim/SBDeltaFunction.h index a08ed866af..9df280ad7e 100644 --- a/include/galsim/SBDeltaFunction.h +++ b/include/galsim/SBDeltaFunction.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBDeltaFunctionImpl.h b/include/galsim/SBDeltaFunctionImpl.h index e4298bebf1..2cf97b0b18 100644 --- a/include/galsim/SBDeltaFunctionImpl.h +++ b/include/galsim/SBDeltaFunctionImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBExponential.h b/include/galsim/SBExponential.h index 4542420e7b..d83990d1d2 100644 --- a/include/galsim/SBExponential.h +++ b/include/galsim/SBExponential.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBExponentialImpl.h b/include/galsim/SBExponentialImpl.h index 8a809500cd..7d594f9bc2 100644 --- a/include/galsim/SBExponentialImpl.h +++ b/include/galsim/SBExponentialImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBFourierSqrt.h b/include/galsim/SBFourierSqrt.h index 4fc4e89aaf..745c2c0fd3 100644 --- a/include/galsim/SBFourierSqrt.h +++ b/include/galsim/SBFourierSqrt.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBFourierSqrtImpl.h b/include/galsim/SBFourierSqrtImpl.h index 786164521e..bcf0e5aae6 100644 --- a/include/galsim/SBFourierSqrtImpl.h +++ b/include/galsim/SBFourierSqrtImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBGaussian.h b/include/galsim/SBGaussian.h index d573eff499..d5072add25 100644 --- a/include/galsim/SBGaussian.h +++ b/include/galsim/SBGaussian.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBGaussianImpl.h b/include/galsim/SBGaussianImpl.h index d05d948ccb..dd2c46ddeb 100644 --- a/include/galsim/SBGaussianImpl.h +++ b/include/galsim/SBGaussianImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBInclinedExponential.h b/include/galsim/SBInclinedExponential.h index 2980abac96..5fc3a74464 100644 --- a/include/galsim/SBInclinedExponential.h +++ b/include/galsim/SBInclinedExponential.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBInclinedExponentialImpl.h b/include/galsim/SBInclinedExponentialImpl.h index 710daf04fe..5c358d801e 100644 --- a/include/galsim/SBInclinedExponentialImpl.h +++ b/include/galsim/SBInclinedExponentialImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBInclinedSersic.h b/include/galsim/SBInclinedSersic.h index 3da9dbdc39..2441a99602 100644 --- a/include/galsim/SBInclinedSersic.h +++ b/include/galsim/SBInclinedSersic.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBInclinedSersicImpl.h b/include/galsim/SBInclinedSersicImpl.h index 656bec0f1c..6231d4025f 100644 --- a/include/galsim/SBInclinedSersicImpl.h +++ b/include/galsim/SBInclinedSersicImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBInterpolatedImage.h b/include/galsim/SBInterpolatedImage.h index eaa1f2c55d..5d5ebc2466 100644 --- a/include/galsim/SBInterpolatedImage.h +++ b/include/galsim/SBInterpolatedImage.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBInterpolatedImageImpl.h b/include/galsim/SBInterpolatedImageImpl.h index b4d7a8d756..505c98e617 100644 --- a/include/galsim/SBInterpolatedImageImpl.h +++ b/include/galsim/SBInterpolatedImageImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBKolmogorov.h b/include/galsim/SBKolmogorov.h index 663042812d..654be3c8d3 100644 --- a/include/galsim/SBKolmogorov.h +++ b/include/galsim/SBKolmogorov.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBKolmogorovImpl.h b/include/galsim/SBKolmogorovImpl.h index 7218de48af..4830cb1f76 100644 --- a/include/galsim/SBKolmogorovImpl.h +++ b/include/galsim/SBKolmogorovImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBMoffat.h b/include/galsim/SBMoffat.h index f84e78cddd..bf3302ff73 100644 --- a/include/galsim/SBMoffat.h +++ b/include/galsim/SBMoffat.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBMoffatImpl.h b/include/galsim/SBMoffatImpl.h index 83109f849a..de50c9b6c0 100644 --- a/include/galsim/SBMoffatImpl.h +++ b/include/galsim/SBMoffatImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBProfile.h b/include/galsim/SBProfile.h index 4f08af72f4..3ae101cb83 100644 --- a/include/galsim/SBProfile.h +++ b/include/galsim/SBProfile.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBProfileImpl.h b/include/galsim/SBProfileImpl.h index 5d004aae69..da1ce4e34e 100644 --- a/include/galsim/SBProfileImpl.h +++ b/include/galsim/SBProfileImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBSecondKick.h b/include/galsim/SBSecondKick.h index 5fc905d532..c1312e1e90 100644 --- a/include/galsim/SBSecondKick.h +++ b/include/galsim/SBSecondKick.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBSecondKickImpl.h b/include/galsim/SBSecondKickImpl.h index eb402f6391..5f1a5fe02c 100644 --- a/include/galsim/SBSecondKickImpl.h +++ b/include/galsim/SBSecondKickImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBSersic.h b/include/galsim/SBSersic.h index 1f0d5c30fe..676bb328f8 100644 --- a/include/galsim/SBSersic.h +++ b/include/galsim/SBSersic.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBSersicImpl.h b/include/galsim/SBSersicImpl.h index 4e55b134b2..f75d18976b 100644 --- a/include/galsim/SBSersicImpl.h +++ b/include/galsim/SBSersicImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBShapelet.h b/include/galsim/SBShapelet.h index 9e7a8e2046..e186a4d52a 100644 --- a/include/galsim/SBShapelet.h +++ b/include/galsim/SBShapelet.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBShapeletImpl.h b/include/galsim/SBShapeletImpl.h index 99a7c4f14a..ee0091197c 100644 --- a/include/galsim/SBShapeletImpl.h +++ b/include/galsim/SBShapeletImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBSpergel.h b/include/galsim/SBSpergel.h index 3a107a52da..0c828e418c 100644 --- a/include/galsim/SBSpergel.h +++ b/include/galsim/SBSpergel.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBSpergelImpl.h b/include/galsim/SBSpergelImpl.h index c7298a555a..7ef4101961 100644 --- a/include/galsim/SBSpergelImpl.h +++ b/include/galsim/SBSpergelImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBTransform.h b/include/galsim/SBTransform.h index dc4267c5bb..b3c644c588 100644 --- a/include/galsim/SBTransform.h +++ b/include/galsim/SBTransform.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBTransformImpl.h b/include/galsim/SBTransformImpl.h index 108f1bc5fc..2faee572e8 100644 --- a/include/galsim/SBTransformImpl.h +++ b/include/galsim/SBTransformImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBVonKarman.h b/include/galsim/SBVonKarman.h index fc97172edf..ef25e4b3c4 100644 --- a/include/galsim/SBVonKarman.h +++ b/include/galsim/SBVonKarman.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/SBVonKarmanImpl.h b/include/galsim/SBVonKarmanImpl.h index fe61fd6d85..65bde1330c 100644 --- a/include/galsim/SBVonKarmanImpl.h +++ b/include/galsim/SBVonKarmanImpl.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Silicon.h b/include/galsim/Silicon.h index e1a4b6c158..31405fce48 100644 --- a/include/galsim/Silicon.h +++ b/include/galsim/Silicon.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Solve.h b/include/galsim/Solve.h index 3bb3bdd2cd..1035bc341b 100644 --- a/include/galsim/Solve.h +++ b/include/galsim/Solve.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Std.h b/include/galsim/Std.h index 81824a6ab0..a149800e92 100644 --- a/include/galsim/Std.h +++ b/include/galsim/Std.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Stopwatch.h b/include/galsim/Stopwatch.h index 324a10d217..efd062d20b 100644 --- a/include/galsim/Stopwatch.h +++ b/include/galsim/Stopwatch.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/Table.h b/include/galsim/Table.h index e531347314..c4fa54b3ac 100644 --- a/include/galsim/Table.h +++ b/include/galsim/Table.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/WCS.h b/include/galsim/WCS.h index 33697714d0..4e936c01d8 100644 --- a/include/galsim/WCS.h +++ b/include/galsim/WCS.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/hsm/PSFCorr.h b/include/galsim/hsm/PSFCorr.h index baecb29e8a..cbd27dfede 100644 --- a/include/galsim/hsm/PSFCorr.h +++ b/include/galsim/hsm/PSFCorr.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/integ/Int.h b/include/galsim/integ/Int.h index 0da23ef342..f75263a686 100644 --- a/include/galsim/integ/Int.h +++ b/include/galsim/integ/Int.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/integ/IntGKPData1.h b/include/galsim/integ/IntGKPData1.h index 8e9525a923..e9d7b5398f 100644 --- a/include/galsim/integ/IntGKPData1.h +++ b/include/galsim/integ/IntGKPData1.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/integ/IntGKPData10.h b/include/galsim/integ/IntGKPData10.h index 73adb4cdb6..6f06367b7f 100644 --- a/include/galsim/integ/IntGKPData10.h +++ b/include/galsim/integ/IntGKPData10.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/integ/MoreFunctional.h b/include/galsim/integ/MoreFunctional.h index 2e63faf0fd..adbb9cc891 100644 --- a/include/galsim/integ/MoreFunctional.h +++ b/include/galsim/integ/MoreFunctional.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Angle.h b/include/galsim/math/Angle.h index b86ef6d38d..223be8e4e7 100644 --- a/include/galsim/math/Angle.h +++ b/include/galsim/math/Angle.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Bessel.h b/include/galsim/math/Bessel.h index d734dc57e0..a6b2eb6514 100644 --- a/include/galsim/math/Bessel.h +++ b/include/galsim/math/Bessel.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Gamma.h b/include/galsim/math/Gamma.h index 405d75b3cc..20d492a6a4 100644 --- a/include/galsim/math/Gamma.h +++ b/include/galsim/math/Gamma.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Hankel.h b/include/galsim/math/Hankel.h index 65e911f623..b0398be025 100644 --- a/include/galsim/math/Hankel.h +++ b/include/galsim/math/Hankel.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Horner.h b/include/galsim/math/Horner.h index 8fc3979124..5e4b97a71c 100644 --- a/include/galsim/math/Horner.h +++ b/include/galsim/math/Horner.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Nan.h b/include/galsim/math/Nan.h index 33b710dc62..10661b6c4f 100644 --- a/include/galsim/math/Nan.h +++ b/include/galsim/math/Nan.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/math/Sinc.h b/include/galsim/math/Sinc.h index bf99fcfbe3..f5c15c4af6 100644 --- a/include/galsim/math/Sinc.h +++ b/include/galsim/math/Sinc.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/include/galsim/mmgr.h b/include/galsim/mmgr.h index 1f3e8b3cda..0ba448c85b 100644 --- a/include/galsim/mmgr.h +++ b/include/galsim/mmgr.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Bessel.cpp b/pysrc/Bessel.cpp index df1a7ee001..35a0aa4afc 100644 --- a/pysrc/Bessel.cpp +++ b/pysrc/Bessel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Bounds.cpp b/pysrc/Bounds.cpp index a7d55d4b3f..f8de093f9f 100644 --- a/pysrc/Bounds.cpp +++ b/pysrc/Bounds.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/CDModel.cpp b/pysrc/CDModel.cpp index fdf8829305..6a71021a1b 100644 --- a/pysrc/CDModel.cpp +++ b/pysrc/CDModel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/HSM.cpp b/pysrc/HSM.cpp index 33cec393f3..b6fdaf7c48 100644 --- a/pysrc/HSM.cpp +++ b/pysrc/HSM.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Horner.cpp b/pysrc/Horner.cpp index 785ea8fbde..c15fb00a1d 100644 --- a/pysrc/Horner.cpp +++ b/pysrc/Horner.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Image.cpp b/pysrc/Image.cpp index 631942fdf5..8c07b0b98f 100644 --- a/pysrc/Image.cpp +++ b/pysrc/Image.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Integ.cpp b/pysrc/Integ.cpp index 131ab4d43b..74d1744f64 100644 --- a/pysrc/Integ.cpp +++ b/pysrc/Integ.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Interpolant.cpp b/pysrc/Interpolant.cpp index 57f4817910..87585a077e 100644 --- a/pysrc/Interpolant.cpp +++ b/pysrc/Interpolant.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/PhotonArray.cpp b/pysrc/PhotonArray.cpp index b01ab6f101..cc97d9343d 100644 --- a/pysrc/PhotonArray.cpp +++ b/pysrc/PhotonArray.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/PyBind11Helper.h b/pysrc/PyBind11Helper.h index d89f7c55aa..0459e0d872 100644 --- a/pysrc/PyBind11Helper.h +++ b/pysrc/PyBind11Helper.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Random.cpp b/pysrc/Random.cpp index 8a63c10126..5d5f942175 100644 --- a/pysrc/Random.cpp +++ b/pysrc/Random.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/RealGalaxy.cpp b/pysrc/RealGalaxy.cpp index e87ab36736..2aceb65411 100644 --- a/pysrc/RealGalaxy.cpp +++ b/pysrc/RealGalaxy.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBAdd.cpp b/pysrc/SBAdd.cpp index b7af0b33d0..2b95cbdb1e 100644 --- a/pysrc/SBAdd.cpp +++ b/pysrc/SBAdd.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBAiry.cpp b/pysrc/SBAiry.cpp index bf60e76417..7ac4141b65 100644 --- a/pysrc/SBAiry.cpp +++ b/pysrc/SBAiry.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBBox.cpp b/pysrc/SBBox.cpp index b9e28322d7..621e066d52 100644 --- a/pysrc/SBBox.cpp +++ b/pysrc/SBBox.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBConvolve.cpp b/pysrc/SBConvolve.cpp index e52d1f49f8..8bb3d69945 100644 --- a/pysrc/SBConvolve.cpp +++ b/pysrc/SBConvolve.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBDeconvolve.cpp b/pysrc/SBDeconvolve.cpp index 2d7732b554..2caf6675a2 100644 --- a/pysrc/SBDeconvolve.cpp +++ b/pysrc/SBDeconvolve.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBDeltaFunction.cpp b/pysrc/SBDeltaFunction.cpp index b4a86bbc85..c37fc36ba9 100644 --- a/pysrc/SBDeltaFunction.cpp +++ b/pysrc/SBDeltaFunction.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBExponential.cpp b/pysrc/SBExponential.cpp index 5d13064f47..0a5a9d4084 100644 --- a/pysrc/SBExponential.cpp +++ b/pysrc/SBExponential.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBFourierSqrt.cpp b/pysrc/SBFourierSqrt.cpp index 8267d8785b..0277b19581 100644 --- a/pysrc/SBFourierSqrt.cpp +++ b/pysrc/SBFourierSqrt.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBGaussian.cpp b/pysrc/SBGaussian.cpp index 877106aef2..138912e934 100644 --- a/pysrc/SBGaussian.cpp +++ b/pysrc/SBGaussian.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBInclinedExponential.cpp b/pysrc/SBInclinedExponential.cpp index 706478af58..da8d2b2445 100644 --- a/pysrc/SBInclinedExponential.cpp +++ b/pysrc/SBInclinedExponential.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBInclinedSersic.cpp b/pysrc/SBInclinedSersic.cpp index 6e24cd2b2c..d3680c9f27 100644 --- a/pysrc/SBInclinedSersic.cpp +++ b/pysrc/SBInclinedSersic.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBInterpolatedImage.cpp b/pysrc/SBInterpolatedImage.cpp index a9c4a7c14b..ee2a3cbfec 100644 --- a/pysrc/SBInterpolatedImage.cpp +++ b/pysrc/SBInterpolatedImage.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBKolmogorov.cpp b/pysrc/SBKolmogorov.cpp index a14047b391..23df1251fa 100644 --- a/pysrc/SBKolmogorov.cpp +++ b/pysrc/SBKolmogorov.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBMoffat.cpp b/pysrc/SBMoffat.cpp index d4dda8a262..7b26c370da 100644 --- a/pysrc/SBMoffat.cpp +++ b/pysrc/SBMoffat.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBProfile.cpp b/pysrc/SBProfile.cpp index 88a97765a4..6b53adae61 100644 --- a/pysrc/SBProfile.cpp +++ b/pysrc/SBProfile.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBSecondKick.cpp b/pysrc/SBSecondKick.cpp index 6c4d3942fe..a89fafe91d 100644 --- a/pysrc/SBSecondKick.cpp +++ b/pysrc/SBSecondKick.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBSersic.cpp b/pysrc/SBSersic.cpp index 9dad5a2b68..2667b44032 100644 --- a/pysrc/SBSersic.cpp +++ b/pysrc/SBSersic.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBShapelet.cpp b/pysrc/SBShapelet.cpp index 505ea956d9..f54ebace3a 100644 --- a/pysrc/SBShapelet.cpp +++ b/pysrc/SBShapelet.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBSpergel.cpp b/pysrc/SBSpergel.cpp index 7ddf9bc72e..cfe3dbf094 100644 --- a/pysrc/SBSpergel.cpp +++ b/pysrc/SBSpergel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBTransform.cpp b/pysrc/SBTransform.cpp index 6c8de5041c..a55777a0d7 100644 --- a/pysrc/SBTransform.cpp +++ b/pysrc/SBTransform.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/SBVonKarman.cpp b/pysrc/SBVonKarman.cpp index a5b733d7e5..7bfd9f0b63 100644 --- a/pysrc/SBVonKarman.cpp +++ b/pysrc/SBVonKarman.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Silicon.cpp b/pysrc/Silicon.cpp index 5d84d4bd2d..0cfe487c5c 100644 --- a/pysrc/Silicon.cpp +++ b/pysrc/Silicon.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Table.cpp b/pysrc/Table.cpp index a195e33b4c..a4d843f91e 100644 --- a/pysrc/Table.cpp +++ b/pysrc/Table.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/Utilities.cpp b/pysrc/Utilities.cpp index 1482538cf2..d593264c80 100644 --- a/pysrc/Utilities.cpp +++ b/pysrc/Utilities.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/WCS.cpp b/pysrc/WCS.cpp index 355473dd9f..db2ee100fb 100644 --- a/pysrc/WCS.cpp +++ b/pysrc/WCS.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/pysrc/module.cpp b/pysrc/module.cpp index 5123273617..476171ab36 100644 --- a/pysrc/module.cpp +++ b/pysrc/module.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/setup.py b/setup.py index 6412d173f7..7468899aa1 100644 --- a/setup.py +++ b/setup.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/BinomFact.cpp b/src/BinomFact.cpp index 8a2e787a2c..bc0654b308 100644 --- a/src/BinomFact.cpp +++ b/src/BinomFact.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/CDModel.cpp b/src/CDModel.cpp index 9d4358d783..0961b39e26 100644 --- a/src/CDModel.cpp +++ b/src/CDModel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/CorrelatedNoise.cpp b/src/CorrelatedNoise.cpp index d9f04af53d..393d055521 100644 --- a/src/CorrelatedNoise.cpp +++ b/src/CorrelatedNoise.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/GSParams.cpp b/src/GSParams.cpp index 6223ada171..7dd7438274 100644 --- a/src/GSParams.cpp +++ b/src/GSParams.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Image.cpp b/src/Image.cpp index bcf9a00484..9d5464f108 100644 --- a/src/Image.cpp +++ b/src/Image.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Image.inst b/src/Image.inst index 1a76fd313c..0d443c5436 100644 --- a/src/Image.inst +++ b/src/Image.inst @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Interpolant.cpp b/src/Interpolant.cpp index 4f00178b82..d5fc3f10d3 100644 --- a/src/Interpolant.cpp +++ b/src/Interpolant.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Laguerre.cpp b/src/Laguerre.cpp index e7bab91a11..ea9f940faa 100644 --- a/src/Laguerre.cpp +++ b/src/Laguerre.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/OneDimensionalDeviate.cpp b/src/OneDimensionalDeviate.cpp index 11d9636f31..91d50da463 100644 --- a/src/OneDimensionalDeviate.cpp +++ b/src/OneDimensionalDeviate.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/PhotonArray.cpp b/src/PhotonArray.cpp index 25aa585115..b95773cae6 100644 --- a/src/PhotonArray.cpp +++ b/src/PhotonArray.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Polygon.cpp b/src/Polygon.cpp index d8a3766c39..2367aa8cbf 100644 --- a/src/Polygon.cpp +++ b/src/Polygon.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Random.cpp b/src/Random.cpp index a7f806c503..905c25d5f0 100644 --- a/src/Random.cpp +++ b/src/Random.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/RealGalaxy.cpp b/src/RealGalaxy.cpp index 0aa54bf7a3..a006cd4643 100644 --- a/src/RealGalaxy.cpp +++ b/src/RealGalaxy.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/RealSpaceConvolve.cpp b/src/RealSpaceConvolve.cpp index a8e01a2e5c..1b5bd51460 100644 --- a/src/RealSpaceConvolve.cpp +++ b/src/RealSpaceConvolve.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBAdd.cpp b/src/SBAdd.cpp index 457fefb7ae..5f2f92fa24 100644 --- a/src/SBAdd.cpp +++ b/src/SBAdd.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBAiry.cpp b/src/SBAiry.cpp index 45da16df06..8f31d2e22d 100644 --- a/src/SBAiry.cpp +++ b/src/SBAiry.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBBox.cpp b/src/SBBox.cpp index dbc8caf81c..dc3b23c73a 100644 --- a/src/SBBox.cpp +++ b/src/SBBox.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBConvolve.cpp b/src/SBConvolve.cpp index ee8f3dab31..782735ebb8 100644 --- a/src/SBConvolve.cpp +++ b/src/SBConvolve.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBDeconvolve.cpp b/src/SBDeconvolve.cpp index 6f8b2e460c..e000145458 100644 --- a/src/SBDeconvolve.cpp +++ b/src/SBDeconvolve.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBDeltaFunction.cpp b/src/SBDeltaFunction.cpp index 4426952161..9853b45308 100644 --- a/src/SBDeltaFunction.cpp +++ b/src/SBDeltaFunction.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBExponential.cpp b/src/SBExponential.cpp index b8f5f6cba7..46c320c65d 100644 --- a/src/SBExponential.cpp +++ b/src/SBExponential.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBFourierSqrt.cpp b/src/SBFourierSqrt.cpp index fee2529c78..5c4492171e 100644 --- a/src/SBFourierSqrt.cpp +++ b/src/SBFourierSqrt.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBGaussian.cpp b/src/SBGaussian.cpp index 6037153571..8ffe248f20 100644 --- a/src/SBGaussian.cpp +++ b/src/SBGaussian.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBInclinedExponential.cpp b/src/SBInclinedExponential.cpp index b2f8f8ebd4..ff9d1bd708 100644 --- a/src/SBInclinedExponential.cpp +++ b/src/SBInclinedExponential.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBInclinedSersic.cpp b/src/SBInclinedSersic.cpp index 5fcc2c1354..6429423fe9 100644 --- a/src/SBInclinedSersic.cpp +++ b/src/SBInclinedSersic.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBInterpolatedImage.cpp b/src/SBInterpolatedImage.cpp index 16aa5a120c..c92672fe06 100644 --- a/src/SBInterpolatedImage.cpp +++ b/src/SBInterpolatedImage.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBKolmogorov.cpp b/src/SBKolmogorov.cpp index 30158747a6..c0a04de60c 100644 --- a/src/SBKolmogorov.cpp +++ b/src/SBKolmogorov.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBMoffat.cpp b/src/SBMoffat.cpp index 2cbb8e891a..369d045738 100644 --- a/src/SBMoffat.cpp +++ b/src/SBMoffat.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBProfile.cpp b/src/SBProfile.cpp index cfce28e1f4..a0d53b4a28 100644 --- a/src/SBProfile.cpp +++ b/src/SBProfile.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBSecondKick.cpp b/src/SBSecondKick.cpp index dc027e138d..1a5471ba04 100644 --- a/src/SBSecondKick.cpp +++ b/src/SBSecondKick.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBSersic.cpp b/src/SBSersic.cpp index 187ca83ff7..a8d1968253 100644 --- a/src/SBSersic.cpp +++ b/src/SBSersic.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBShapelet.cpp b/src/SBShapelet.cpp index 93217f2fea..569d5d9b28 100644 --- a/src/SBShapelet.cpp +++ b/src/SBShapelet.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBSpergel.cpp b/src/SBSpergel.cpp index d5b0e356ca..990ff2980f 100644 --- a/src/SBSpergel.cpp +++ b/src/SBSpergel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBTransform.cpp b/src/SBTransform.cpp index 23dd42e28d..ed84410151 100644 --- a/src/SBTransform.cpp +++ b/src/SBTransform.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/SBVonKarman.cpp b/src/SBVonKarman.cpp index bce0c39194..250ff010a6 100644 --- a/src/SBVonKarman.cpp +++ b/src/SBVonKarman.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Silicon.cpp b/src/Silicon.cpp index 61ac00d6cb..155fb3dfc6 100644 --- a/src/Silicon.cpp +++ b/src/Silicon.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Table.cpp b/src/Table.cpp index 0206daf32b..33000ff8bb 100644 --- a/src/Table.cpp +++ b/src/Table.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/Version.cpp b/src/Version.cpp index 2e58fdbac5..dfe56f124a 100644 --- a/src/Version.cpp +++ b/src/Version.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/WCS.cpp b/src/WCS.cpp index d4eb1c2346..e69a4261e0 100644 --- a/src/WCS.cpp +++ b/src/WCS.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/hsm/PSFCorr.cpp b/src/hsm/PSFCorr.cpp index f9ca154c86..45903d9490 100644 --- a/src/hsm/PSFCorr.cpp +++ b/src/hsm/PSFCorr.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Angle.cpp b/src/math/Angle.cpp index 228ec65ed1..e1f90aac3a 100644 --- a/src/math/Angle.cpp +++ b/src/math/Angle.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Bessel.cpp b/src/math/Bessel.cpp index 2e993fd952..6cd2963e40 100644 --- a/src/math/Bessel.cpp +++ b/src/math/Bessel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/BesselI.cpp b/src/math/BesselI.cpp index c36da0a956..9350223d96 100644 --- a/src/math/BesselI.cpp +++ b/src/math/BesselI.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/BesselJ.cpp b/src/math/BesselJ.cpp index 8be3025882..f26994c9f6 100644 --- a/src/math/BesselJ.cpp +++ b/src/math/BesselJ.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/BesselK.cpp b/src/math/BesselK.cpp index b3334225f3..86e47731a7 100644 --- a/src/math/BesselK.cpp +++ b/src/math/BesselK.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/BesselRoots.cpp b/src/math/BesselRoots.cpp index 9be711f9e6..31c46a82bf 100644 --- a/src/math/BesselRoots.cpp +++ b/src/math/BesselRoots.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/BesselY.cpp b/src/math/BesselY.cpp index 80efa0b48f..39d3995a65 100644 --- a/src/math/BesselY.cpp +++ b/src/math/BesselY.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Gamma.cpp b/src/math/Gamma.cpp index b4d5f84d7b..b4dc6402a0 100644 --- a/src/math/Gamma.cpp +++ b/src/math/Gamma.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Hankel.cpp b/src/math/Hankel.cpp index 0ed59ba4ca..676884f2a3 100644 --- a/src/math/Hankel.cpp +++ b/src/math/Hankel.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Horner.cpp b/src/math/Horner.cpp index 6a2350d52d..4497b48565 100644 --- a/src/math/Horner.cpp +++ b/src/math/Horner.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Nan.cpp b/src/math/Nan.cpp index eb54cd8c46..7cd2dca689 100644 --- a/src/math/Nan.cpp +++ b/src/math/Nan.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/src/math/Sinc.cpp b/src/math/Sinc.cpp index 3c64f009ec..6737d4f410 100644 --- a/src/math/Sinc.cpp +++ b/src/math/Sinc.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/Optics_comparison_images/generate_optics_comparison_images.py b/tests/Optics_comparison_images/generate_optics_comparison_images.py index 5a3c7b8943..982ccad511 100644 --- a/tests/Optics_comparison_images/generate_optics_comparison_images.py +++ b/tests/Optics_comparison_images/generate_optics_comparison_images.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/SBProfile_comparison_images/convert_maple_output.py b/tests/SBProfile_comparison_images/convert_maple_output.py index fd498088db..49d7e2475c 100644 --- a/tests/SBProfile_comparison_images/convert_maple_output.py +++ b/tests/SBProfile_comparison_images/convert_maple_output.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/SBProfile_comparison_images/spergel_image.py b/tests/SBProfile_comparison_images/spergel_image.py index 17ace7d30b..d21aa81595 100644 --- a/tests/SBProfile_comparison_images/spergel_image.py +++ b/tests/SBProfile_comparison_images/spergel_image.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/Test.h b/tests/Test.h index 0d4077254f..5451e156f0 100644 --- a/tests/Test.h +++ b/tests/Test.h @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/TestAll.cpp b/tests/TestAll.cpp index 56680784d6..f83e150445 100644 --- a/tests/TestAll.cpp +++ b/tests/TestAll.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/TestImage.cpp b/tests/TestImage.cpp index a4f355568a..4719d684f5 100644 --- a/tests/TestImage.cpp +++ b/tests/TestImage.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/TestInteg.cpp b/tests/TestInteg.cpp index 9f89b02a1d..d6637f9707 100644 --- a/tests/TestInteg.cpp +++ b/tests/TestInteg.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/TestVersion.cpp b/tests/TestVersion.cpp index 700805bb76..7c101032aa 100644 --- a/tests/TestVersion.cpp +++ b/tests/TestVersion.cpp @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/compare_image_integrators.py b/tests/compare_image_integrators.py index f8d5854ebf..978d644e37 100644 --- a/tests/compare_image_integrators.py +++ b/tests/compare_image_integrators.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/compare_thin.py b/tests/compare_thin.py index ffabd050d0..17eff88902 100644 --- a/tests/compare_thin.py +++ b/tests/compare_thin.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input/dict.yaml b/tests/config_input/dict.yaml index cb6a52a13a..c6563c2020 100644 --- a/tests/config_input/dict.yaml +++ b/tests/config_input/dict.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input/index_key.yaml b/tests/config_input/index_key.yaml index f7d28a0063..b55d2ca7a9 100644 --- a/tests/config_input/index_key.yaml +++ b/tests/config_input/index_key.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input/multirng.yaml b/tests/config_input/multirng.yaml index 57679c3f98..94c282d26a 100644 --- a/tests/config_input/multirng.yaml +++ b/tests/config_input/multirng.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input/sequential_seeds.yaml b/tests/config_input/sequential_seeds.yaml index 30bb586cf8..1091e588a4 100644 --- a/tests/config_input/sequential_seeds.yaml +++ b/tests/config_input/sequential_seeds.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input/sn.yaml b/tests/config_input/sn.yaml index 042454baf1..b43061a7e4 100644 --- a/tests/config_input/sn.yaml +++ b/tests/config_input/sn.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input/template.yaml b/tests/config_input/template.yaml index d45b4811e1..c2b16937e8 100644 --- a/tests/config_input/template.yaml +++ b/tests/config_input/template.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/config_input_test_modules.py b/tests/config_input_test_modules.py index 8e3a3e39ff..044eef6156 100644 --- a/tests/config_input_test_modules.py +++ b/tests/config_input_test_modules.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/conftest.py b/tests/conftest.py index 3fc11db2d0..8c5f033a8d 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,3 +1,21 @@ +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub +# https://github.com/GalSim-developers +# +# This file is part of GalSim: The modular galaxy image simulation toolkit. +# https://github.com/GalSim-developers/GalSim +# +# GalSim is free software: redistribution and use in source and binary forms, +# with or without modification, are permitted provided that the following +# conditions are met: +# +# 1. Redistributions of source code must retain the above copyright notice, this +# list of conditions, and the disclaimer given in the accompanying LICENSE +# file. +# 2. Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions, and the disclaimer given in the documentation +# and/or other materials provided with the distribution. +# + import pytest def pytest_addoption(parser): diff --git a/tests/fits_files/check_pyast_sip.py b/tests/fits_files/check_pyast_sip.py index 02272283ed..dee82663ce 100644 --- a/tests/fits_files/check_pyast_sip.py +++ b/tests/fits_files/check_pyast_sip.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/fits_files/check_pyast_tpv.py b/tests/fits_files/check_pyast_tpv.py index 6e5cfc05a0..28e169bd9f 100644 --- a/tests/fits_files/check_pyast_tpv.py +++ b/tests/fits_files/check_pyast_tpv.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/fits_files/make_interpim_hdu.py b/tests/fits_files/make_interpim_hdu.py index ca891109ee..e109bb5a6e 100644 --- a/tests/fits_files/make_interpim_hdu.py +++ b/tests/fits_files/make_interpim_hdu.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/galsim_test_helpers.py b/tests/galsim_test_helpers.py index 105a538d98..5b09773d76 100644 --- a/tests/galsim_test_helpers.py +++ b/tests/galsim_test_helpers.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/hsm_shape.py b/tests/hsm_shape.py index 1ef1bc8c26..86e8f5aeb5 100644 --- a/tests/hsm_shape.py +++ b/tests/hsm_shape.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/inclined_exponential_images/hankelcode4.c b/tests/inclined_exponential_images/hankelcode4.c index 2af1730e75..4a6fa3bb1e 100644 --- a/tests/inclined_exponential_images/hankelcode4.c +++ b/tests/inclined_exponential_images/hankelcode4.c @@ -1,5 +1,5 @@ /* -*- c++ -*- - * Copyright (c) 2012-2023 by the GalSim developers team on GitHub + * Copyright (c) 2012-2026 by the GalSim developers team on GitHub * https://github.com/GalSim-developers * * This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/input/test.yaml b/tests/input/test.yaml index 540b192204..30394d8b07 100644 --- a/tests/input/test.yaml +++ b/tests/input/test.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/lensing_reference_data/shearfield_ref.py b/tests/lensing_reference_data/shearfield_ref.py index 5ace9f3989..32d6a8d8f8 100644 --- a/tests/lensing_reference_data/shearfield_ref.py +++ b/tests/lensing_reference_data/shearfield_ref.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/real_comparison_images/make_images.py b/tests/real_comparison_images/make_images.py index 5e4319dd7b..97b31eafa1 100644 --- a/tests/real_comparison_images/make_images.py +++ b/tests/real_comparison_images/make_images.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/roman_files/gen_chris_comparison.py b/tests/roman_files/gen_chris_comparison.py index 25ba933491..7dee5a5eac 100644 --- a/tests/roman_files/gen_chris_comparison.py +++ b/tests/roman_files/gen_chris_comparison.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/roman_files/radec_to_chip.py b/tests/roman_files/radec_to_chip.py index cf6d33cd46..45d516b3dd 100644 --- a/tests/roman_files/radec_to_chip.py +++ b/tests/roman_files/radec_to_chip.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/run_examples.py b/tests/run_examples.py index 413960a49d..8d9c2eaab1 100644 --- a/tests/run_examples.py +++ b/tests/run_examples.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/template_register.py b/tests/template_register.py index 7b25936495..676b28fe12 100644 --- a/tests/template_register.py +++ b/tests/template_register.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_airy.py b/tests/test_airy.py index 60edb0208e..dc60a07c71 100644 --- a/tests/test_airy.py +++ b/tests/test_airy.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_bandpass.py b/tests/test_bandpass.py index edfcfba87b..bf4e045e14 100644 --- a/tests/test_bandpass.py +++ b/tests/test_bandpass.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_bessel.py b/tests/test_bessel.py index f86285c28c..36f3071512 100644 --- a/tests/test_bessel.py +++ b/tests/test_bessel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_box.py b/tests/test_box.py index cb602ce570..7942763713 100644 --- a/tests/test_box.py +++ b/tests/test_box.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_calc.py b/tests/test_calc.py index 655e8b683f..6d2d4b1fcd 100644 --- a/tests/test_calc.py +++ b/tests/test_calc.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_catalog.py b/tests/test_catalog.py index a2520548c5..65acb889e9 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_cdmodel.py b/tests/test_cdmodel.py index 06cc1aa432..ce6834f424 100644 --- a/tests/test_cdmodel.py +++ b/tests/test_cdmodel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_celestial.py b/tests/test_celestial.py index 193bf93ae2..530c4b73fa 100644 --- a/tests/test_celestial.py +++ b/tests/test_celestial.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_chromatic.py b/tests/test_chromatic.py index 71ac9b59b4..f4ea539e8e 100644 --- a/tests/test_chromatic.py +++ b/tests/test_chromatic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_config_gsobject.py b/tests/test_config_gsobject.py index dd848a21c3..66e0c88130 100644 --- a/tests/test_config_gsobject.py +++ b/tests/test_config_gsobject.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_config_image.py b/tests/test_config_image.py index 169f1be527..5f245f09f5 100644 --- a/tests/test_config_image.py +++ b/tests/test_config_image.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_config_input.py b/tests/test_config_input.py index 9f117d5c70..070a5ad645 100644 --- a/tests/test_config_input.py +++ b/tests/test_config_input.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_config_noise.py b/tests/test_config_noise.py index f105691db2..50c47d1636 100644 --- a/tests/test_config_noise.py +++ b/tests/test_config_noise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_config_output.py b/tests/test_config_output.py index 99b379110e..a462030c21 100644 --- a/tests/test_config_output.py +++ b/tests/test_config_output.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_config_value.py b/tests/test_config_value.py index a45c34a000..a3a3df0ba4 100644 --- a/tests/test_config_value.py +++ b/tests/test_config_value.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_convolve.py b/tests/test_convolve.py index 950ac5b137..710f98f26c 100644 --- a/tests/test_convolve.py +++ b/tests/test_convolve.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_correlatednoise.py b/tests/test_correlatednoise.py index 996d899676..e54c5f348e 100644 --- a/tests/test_correlatednoise.py +++ b/tests/test_correlatednoise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_deltafunction.py b/tests/test_deltafunction.py index 56477f6ad1..c814df5545 100644 --- a/tests/test_deltafunction.py +++ b/tests/test_deltafunction.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_deprecated.py b/tests/test_deprecated.py index 08d13a14f6..1c5696ee1f 100644 --- a/tests/test_deprecated.py +++ b/tests/test_deprecated.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_des.py b/tests/test_des.py index dc1d92b55b..f5316a2804 100644 --- a/tests/test_des.py +++ b/tests/test_des.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_detectors.py b/tests/test_detectors.py index 6543c5abc4..03f285ce4c 100644 --- a/tests/test_detectors.py +++ b/tests/test_detectors.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_download.py b/tests/test_download.py index 516d15a4c1..0998b4aec0 100644 --- a/tests/test_download.py +++ b/tests/test_download.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_draw.py b/tests/test_draw.py index b1cc8b09f4..c8bf5dee51 100644 --- a/tests/test_draw.py +++ b/tests/test_draw.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_errors.py b/tests/test_errors.py index 83eba92b25..4c1ddcfeec 100644 --- a/tests/test_errors.py +++ b/tests/test_errors.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_exponential.py b/tests/test_exponential.py index 0914a85780..52569c4131 100644 --- a/tests/test_exponential.py +++ b/tests/test_exponential.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_fitsheader.py b/tests/test_fitsheader.py index a1eaefeef7..c79f3debb0 100644 --- a/tests/test_fitsheader.py +++ b/tests/test_fitsheader.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_fouriersqrt.py b/tests/test_fouriersqrt.py index 3dbcce2fd7..94f2db6b56 100644 --- a/tests/test_fouriersqrt.py +++ b/tests/test_fouriersqrt.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_galaxy_sample.py b/tests/test_galaxy_sample.py index 7da83ceaf5..747df8567e 100644 --- a/tests/test_galaxy_sample.py +++ b/tests/test_galaxy_sample.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_gaussian.py b/tests/test_gaussian.py index 060471363b..9ad504bfa8 100644 --- a/tests/test_gaussian.py +++ b/tests/test_gaussian.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_hsm.py b/tests/test_hsm.py index 331f5997b0..89c8c6916c 100644 --- a/tests/test_hsm.py +++ b/tests/test_hsm.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_image.py b/tests/test_image.py index d52d3fb1d1..09aeee79a2 100644 --- a/tests/test_image.py +++ b/tests/test_image.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_inclined.py b/tests/test_inclined.py index c4d16b0ee0..8b0a6ba4b6 100644 --- a/tests/test_inclined.py +++ b/tests/test_inclined.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_integ.py b/tests/test_integ.py index d82a35eedc..d82df95b39 100644 --- a/tests/test_integ.py +++ b/tests/test_integ.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_interpolatedimage.py b/tests/test_interpolatedimage.py index b5e1a9704e..6d8c6dbbd4 100644 --- a/tests/test_interpolatedimage.py +++ b/tests/test_interpolatedimage.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_knots.py b/tests/test_knots.py index eab7837e53..2c0ad59c7c 100644 --- a/tests/test_knots.py +++ b/tests/test_knots.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_kolmogorov.py b/tests/test_kolmogorov.py index dd4a39f0e6..8576a9766f 100644 --- a/tests/test_kolmogorov.py +++ b/tests/test_kolmogorov.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_lensing.py b/tests/test_lensing.py index 29a771dbf2..019747c371 100644 --- a/tests/test_lensing.py +++ b/tests/test_lensing.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_main.py b/tests/test_main.py index 2b9f78dc02..c45deec0a0 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_metacal.py b/tests/test_metacal.py index 7fba7847a6..1ae8a2c6c4 100644 --- a/tests/test_metacal.py +++ b/tests/test_metacal.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_moffat.py b/tests/test_moffat.py index 31aaa64c7d..133ac7dedf 100644 --- a/tests/test_moffat.py +++ b/tests/test_moffat.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_noise.py b/tests/test_noise.py index a7cc0ade61..25d17606a6 100644 --- a/tests/test_noise.py +++ b/tests/test_noise.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_optics.py b/tests/test_optics.py index c719e51348..8f5b66ecea 100644 --- a/tests/test_optics.py +++ b/tests/test_optics.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_phase_psf.py b/tests/test_phase_psf.py index 658feb2e92..c90b70e400 100644 --- a/tests/test_phase_psf.py +++ b/tests/test_phase_psf.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_photon_array.py b/tests/test_photon_array.py index acc3eafa53..e0982d87a1 100644 --- a/tests/test_photon_array.py +++ b/tests/test_photon_array.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_pse.py b/tests/test_pse.py index f5247e81d9..6e736032d6 100644 --- a/tests/test_pse.py +++ b/tests/test_pse.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_random.py b/tests/test_random.py index 85add0768d..931c74dabd 100644 --- a/tests/test_random.py +++ b/tests/test_random.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_real.py b/tests/test_real.py index 70631051f0..67b92db407 100644 --- a/tests/test_real.py +++ b/tests/test_real.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_roman.py b/tests/test_roman.py index 96f52ada07..0d949c6729 100644 --- a/tests/test_roman.py +++ b/tests/test_roman.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_second_kick.py b/tests/test_second_kick.py index 4412e5d2d6..f4f7c92859 100644 --- a/tests/test_second_kick.py +++ b/tests/test_second_kick.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_sed.py b/tests/test_sed.py index 02c3973a76..7430fb0403 100644 --- a/tests/test_sed.py +++ b/tests/test_sed.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_sensor.py b/tests/test_sensor.py index 9dfa502a71..e37662dc8d 100644 --- a/tests/test_sensor.py +++ b/tests/test_sensor.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_sersic.py b/tests/test_sersic.py index bed1606bf2..4b96708afd 100644 --- a/tests/test_sersic.py +++ b/tests/test_sersic.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_shapelet.py b/tests/test_shapelet.py index 636874520f..076c46207a 100644 --- a/tests/test_shapelet.py +++ b/tests/test_shapelet.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_shear.py b/tests/test_shear.py index dec7a8f78a..d0d9d47c09 100644 --- a/tests/test_shear.py +++ b/tests/test_shear.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_shear_position.py b/tests/test_shear_position.py index ac799bf44a..68cd68e981 100644 --- a/tests/test_shear_position.py +++ b/tests/test_shear_position.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_spergel.py b/tests/test_spergel.py index f2b013aa15..0ee36524c9 100644 --- a/tests/test_spergel.py +++ b/tests/test_spergel.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_sum.py b/tests/test_sum.py index 8b4d9a5e84..4a766428d4 100644 --- a/tests/test_sum.py +++ b/tests/test_sum.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_table.py b/tests/test_table.py index 06c0e09a6d..0c51772094 100644 --- a/tests/test_table.py +++ b/tests/test_table.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_transforms.py b/tests/test_transforms.py index a07f55a536..b101eb187b 100644 --- a/tests/test_transforms.py +++ b/tests/test_transforms.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_utilities.py b/tests/test_utilities.py index ad18cd6166..a1b74d444f 100644 --- a/tests/test_utilities.py +++ b/tests/test_utilities.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_vonkarman.py b/tests/test_vonkarman.py index aa706a8913..9cf2d66cb8 100644 --- a/tests/test_vonkarman.py +++ b/tests/test_vonkarman.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_wcs.py b/tests/test_wcs.py index ad894c638d..a4e049e795 100644 --- a/tests/test_wcs.py +++ b/tests/test_wcs.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. diff --git a/tests/test_zernike.py b/tests/test_zernike.py index b4816c8635..c1b58cc970 100644 --- a/tests/test_zernike.py +++ b/tests/test_zernike.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012-2023 by the GalSim developers team on GitHub +# Copyright (c) 2012-2026 by the GalSim developers team on GitHub # https://github.com/GalSim-developers # # This file is part of GalSim: The modular galaxy image simulation toolkit. From aab609d0461c665b5d8b297d77823cee3bbe33de Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Wed, 28 Jan 2026 16:47:29 -0500 Subject: [PATCH 47/66] version 2.9 on main --- galsim/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/galsim/_version.py b/galsim/_version.py index 300222e36a..c9e892a739 100644 --- a/galsim/_version.py +++ b/galsim/_version.py @@ -15,5 +15,5 @@ # this list of conditions, and the disclaimer given in the documentation # and/or other materials provided with the distribution. # -__version__ = '2.7' +__version__ = '2.9' __version_info__ = tuple(map(lambda x:int(x.split('-')[0]), __version__.split('.')))[:3] From 1ed63d9ee01b6272a08206e78b5d8ad782eb24ba Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Thu, 19 Feb 2026 17:19:32 -0500 Subject: [PATCH 48/66] Add pickle test for FFTSizeError --- tests/test_errors.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_errors.py b/tests/test_errors.py index 4c1ddcfeec..ed42dd30e0 100644 --- a/tests/test_errors.py +++ b/tests/test_errors.py @@ -305,6 +305,7 @@ def test_galsim_fft_size_error(): assert err.size == 10240 np.testing.assert_almost_equal(err.mem, 2.34375) assert isinstance(err, galsim.GalSimError) + check_pickle(err) if __name__ == "__main__": From 6e37e4a3c483a539f2a59fcd2164df954b797d1a Mon Sep 17 00:00:00 2001 From: Federico Berlfein Date: Thu, 19 Feb 2026 14:59:24 -0500 Subject: [PATCH 49/66] Multiple SED in ChromaticTransformation by absolute value of determinant --- galsim/chromatic.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/galsim/chromatic.py b/galsim/chromatic.py index ac26ae0e0b..96555bde74 100644 --- a/galsim/chromatic.py +++ b/galsim/chromatic.py @@ -1903,9 +1903,9 @@ def sed(self): @np.vectorize def detjac(w): return np.linalg.det(np.asarray(self._jac(w)).reshape(2,2)) - sed *= detjac + sed *= np.abs(detjac) elif self._jac is not None: - sed *= np.linalg.det(np.asarray(self._jac).reshape(2,2)) + sed *= np.abs(np.linalg.det(np.asarray(self._jac).reshape(2,2))) return sed From 6c616881c947093e42102d1009041ec02e418d30 Mon Sep 17 00:00:00 2001 From: Federico Berlfein Date: Thu, 19 Feb 2026 17:12:35 -0500 Subject: [PATCH 50/66] Change absolute value inside function --- galsim/chromatic.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/galsim/chromatic.py b/galsim/chromatic.py index 96555bde74..581aa23bc8 100644 --- a/galsim/chromatic.py +++ b/galsim/chromatic.py @@ -1902,8 +1902,8 @@ def sed(self): if hasattr(self._jac, '__call__'): @np.vectorize def detjac(w): - return np.linalg.det(np.asarray(self._jac(w)).reshape(2,2)) - sed *= np.abs(detjac) + return np.abs(np.linalg.det(np.asarray(self._jac(w)).reshape(2,2))) + sed *= detjac elif self._jac is not None: sed *= np.abs(np.linalg.det(np.asarray(self._jac).reshape(2,2))) From 05b977e51271598e4512a50a8af8b61568c22b25 Mon Sep 17 00:00:00 2001 From: Federico Berlfein Date: Fri, 20 Feb 2026 14:06:18 -0500 Subject: [PATCH 51/66] Test flux is correct if jacobian has negative determinant --- tests/test_chromatic.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/test_chromatic.py b/tests/test_chromatic.py index f4ea539e8e..66877ad7fc 100644 --- a/tests/test_chromatic.py +++ b/tests/test_chromatic.py @@ -2844,6 +2844,11 @@ def test_chromatic_invariant(): str(chrom) repr(chrom) + chrom = galsim.Transform(gsobj, jac = (0.5, 0.5, 1, -1), flux_ratio=bulge_SED) + expected_flux = flux*bulge_SED.calculateFlux(bandpass) + chromobj_flux = chrom.calculateFlux(bandpass) + np.testing.assert_allclose(expected_flux, chromobj_flux) + # ChromaticOpticalPSF chrom_opt = galsim.ChromaticOpticalPSF(lam=500.0, diam=2.0, tip=2.0, tilt=3.0, defocus=0.2, scale_unit='arcmin') From 225421c69f8c4a452a7f93e89610c011c3c7abb3 Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Thu, 19 Feb 2026 12:39:53 -0500 Subject: [PATCH 52/66] Allow for all (non-imaging) Roman bands internally By default, we don't want to return the non-imaging bands when a user asks for it by calling galsim.roman.getBandpasses(). But, in the internal calls, it should get all the bands so that if the user asks for a non-imaging bandpass through other methods, they should be able to get them. --- galsim/roman/roman_config.py | 4 ++-- galsim/roman/roman_psfs.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/galsim/roman/roman_config.py b/galsim/roman/roman_config.py index 56ae7adf1d..2a7ed81855 100644 --- a/galsim/roman/roman_config.py +++ b/galsim/roman/roman_config.py @@ -112,7 +112,7 @@ def buildBandpass(self, config, base, logger): from ..deprecated import depr depr('W149', 2.5, 'W146', 'Note: this is to match current Roman filter naming schemes') name = 'W146' - bandpass = getBandpasses()[name] + bandpass = getBandpasses(include_all_bands=True)[name] return bandpass, safe @@ -200,7 +200,7 @@ def setup(self, config, base, image_num, obj_num, ignore, logger): def getBandpass(self, filter_name): if not hasattr(self, 'all_roman_bp'): - self.all_roman_bp = getBandpasses() + self.all_roman_bp = getBandpasses(include_all_bands=True) return self.all_roman_bp[filter_name] def addNoise(self, image, config, base, image_num, obj_num, current_var, logger): diff --git a/galsim/roman/roman_psfs.py b/galsim/roman/roman_psfs.py index 28a63ece4a..63f06b3030 100644 --- a/galsim/roman/roman_psfs.py +++ b/galsim/roman/roman_psfs.py @@ -335,7 +335,7 @@ def _get_single_PSF(SCA, bandpass, SCA_pos, pupil_bin, aper=aper, gsparams=gsparams) if n_waves is not None: # To decide the range of wavelengths to use, check the bandpass. - bp_dict = getBandpasses() + bp_dict = getBandpasses(include_all_bands=True) bp = bp_dict[bandpass] PSF = PSF.interpolate(waves=np.linspace(bp.blue_limit, bp.red_limit, n_waves), oversample_fac=1.5) From 1b7f9f0b2a8e23434a64fbd0357540c288ea51be Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sat, 21 Feb 2026 22:11:35 -0500 Subject: [PATCH 53/66] Allow to get a subset of Roman bandpasses --- galsim/roman/roman_bandpass.py | 18 +++++++++++++++--- tests/test_roman.py | 18 ++++++++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/galsim/roman/roman_bandpass.py b/galsim/roman/roman_bandpass.py index 1673ede1dc..64c455598f 100644 --- a/galsim/roman/roman_bandpass.py +++ b/galsim/roman/roman_bandpass.py @@ -26,10 +26,11 @@ import os from .. import meta_data -from ..errors import galsim_warn +from ..errors import GalSimValueError, galsim_warn from .. import Bandpass, LookupTable -def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands=False, **kwargs): +def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands=False, bandnames=None, + **kwargs): """Utility to get a dictionary containing the Roman ST bandpasses used for imaging. This routine reads in a file containing a list of wavelengths and throughput for all Roman @@ -96,6 +97,9 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= There is currently no estimate for the thermal background for these bands and they are set to zero arbitrarily. [default: False] + bandnames: Iterable of bandpass names to get. If None, it gets all the imaging + bands if ``include_all_bands`` is False, or all bands if + ``include_all_bands`` is True. **kwargs: Other kwargs are passed to either `Bandpass.thin` or `Bandpass.truncate` as appropriate. @@ -109,6 +113,14 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= data = np.genfromtxt(datafile, names=True) wave = 1000.*data['Wave'] + if bandnames is None: + bandnames = data.dtype.names[1:] + elif (invalid_bandnames := set(bandnames).difference(data.dtype.names[1:])): + raise GalSimValueError("Invalid Roman bandpasses requested;", + value=invalid_bandnames, + allowed_values=data.dtype.names[1:], + ) + # Read in and manipulate the sky background info. sky_file = os.path.join(meta_data.share_dir, "roman", "roman_sky_backgrounds.txt") sky_data = np.loadtxt(sky_file).transpose() @@ -138,7 +150,7 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= # Set up a dictionary. bandpass_dict = {} # Loop over the bands. - for index, bp_name in enumerate(data.dtype.names[1:]): + for index, bp_name in enumerate(bandnames): if include_all_bands is False and bp_name in non_imaging_bands: continue diff --git a/tests/test_roman.py b/tests/test_roman.py index 0d949c6729..3369505681 100644 --- a/tests/test_roman.py +++ b/tests/test_roman.py @@ -513,6 +513,24 @@ def test_roman_nonimaging_bandpass(): assert 'Grism_1stOrder' not in bp_imaging assert 'SNPrism' not in bp_imaging +@timer +def test_roman_bandpass_subsets(): + """Test that we can get a subset of Roman bandpasses. + """ + bandnames = ["J129", "H158"] + bp_dict = galsim.roman.getBandpasses(bandnames=bandnames) + + # Check that the imaging bandpasses are a subset of the all bandpasses + for bandname in bandnames: + assert bandname in bp_dict + bp_dict.pop(bandname) + + # Check that we have no bandpasses left + assert len(bp_dict) == 0 + + # Test that we get an error for invalid bandpasses + with assert_raises(galsim.GalSimValueError): + galsim.roman.getBandpasses(bandnames=["u", "g", "r", "i"]) @timer def test_roman_detectors(): From c3a36c85df9dc3f7cf07c07f10ee1510e3abeba8 Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sat, 21 Feb 2026 22:13:45 -0500 Subject: [PATCH 54/66] Define a convenient getBandpass function --- galsim/roman/__init__.py | 2 +- galsim/roman/roman_bandpass.py | 25 +++++++++++++++++++++++++ tests/test_roman.py | 11 +++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/galsim/roman/__init__.py b/galsim/roman/__init__.py index c754e5cb05..8d5aee8fd4 100644 --- a/galsim/roman/__init__.py +++ b/galsim/roman/__init__.py @@ -99,7 +99,7 @@ # Maxinum allowed angle from the telecope solar panels to the sun in degrees. max_sun_angle = 36. -from .roman_bandpass import getBandpasses +from .roman_bandpass import getBandpass, getBandpasses from .roman_backgrounds import getSkyLevel from .roman_psfs import getPSF from .roman_wcs import getWCS, findSCA, allowedPos, bestPA, convertCenter diff --git a/galsim/roman/roman_bandpass.py b/galsim/roman/roman_bandpass.py index 64c455598f..8c6ad66b24 100644 --- a/galsim/roman/roman_bandpass.py +++ b/galsim/roman/roman_bandpass.py @@ -179,3 +179,28 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= bandpass_dict[bp.name] = bp return bandpass_dict + +def getBandpass(bandname, AB_zeropoint=True, default_thin_trunc=True, **kwargs): + """Utility to get a single bandpass from the Roman ST bandpasses used. + + If you need to get more than one bandpass, use `getBandpasses` instead. + This function just provides a cleaner interface when only one bandpass + is needed. + + See also `getBandpasses`. + + Parameters: + bandname: Name of the bandpass to get. + AB_zeropoint: Should the routine set an AB zeropoint before returning the bandpass? + If False, then it is up to the user to set a zero point. [default: + True] + default_thin_trunc: Use the default thinning and truncation options? Users who wish to + use no thinning and truncation of bandpasses, or who want control over + the level of thinning and truncation, should have this be False. + [default: True] + **kwargs: Other kwargs are passed to either `Bandpass.thin` or + `Bandpass.truncate` as appropriate. + + @returns A Bandpass object for the specified band. + """ + return getBandpasses(AB_zeropoint=AB_zeropoint, default_thin_trunc=default_thin_trunc, include_all_bands=True, bandnames=[bandname], **kwargs)[bandname] diff --git a/tests/test_roman.py b/tests/test_roman.py index 3369505681..c62a1a1fe9 100644 --- a/tests/test_roman.py +++ b/tests/test_roman.py @@ -532,6 +532,17 @@ def test_roman_bandpass_subsets(): with assert_raises(galsim.GalSimValueError): galsim.roman.getBandpasses(bandnames=["u", "g", "r", "i"]) +@timer +def test_roman_single_bandpass(): + """Test getting a single bandpass from the Roman bandpass utility. + """ + bp = galsim.roman.getBandpass('F184') + assert bp.name == 'F184' + + # Test for a non-imaging bandpass. + bp = galsim.roman.getBandpass("SNPrism") + assert bp.name == "SNPrism" + @timer def test_roman_detectors(): """Test the Roman detector routines for consistency with standard detector routines. From a163286acb37f07e6a18bd8b6f877eee4a6f154e Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sat, 21 Feb 2026 22:14:10 -0500 Subject: [PATCH 55/66] Use getBandpass instead of getBandpasses when appropriate --- galsim/roman/roman_config.py | 4 ++-- galsim/roman/roman_psfs.py | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/galsim/roman/roman_config.py b/galsim/roman/roman_config.py index 2a7ed81855..9b1e522f50 100644 --- a/galsim/roman/roman_config.py +++ b/galsim/roman/roman_config.py @@ -20,7 +20,7 @@ from . import n_pix, exptime, dark_current, read_noise, gain from . import stray_light_fraction, thermal_backgrounds from .roman_psfs import getPSF -from .roman_bandpass import getBandpasses +from .roman_bandpass import getBandpass, getBandpasses from .roman_wcs import getWCS from .roman_backgrounds import getSkyLevel from ..config import ParseAberrations, BandpassBuilder, GetAllParams, GetRNG @@ -112,7 +112,7 @@ def buildBandpass(self, config, base, logger): from ..deprecated import depr depr('W149', 2.5, 'W146', 'Note: this is to match current Roman filter naming schemes') name = 'W146' - bandpass = getBandpasses(include_all_bands=True)[name] + bandpass = getBandpass(name) return bandpass, safe diff --git a/galsim/roman/roman_psfs.py b/galsim/roman/roman_psfs.py index 63f06b3030..2e9a71db21 100644 --- a/galsim/roman/roman_psfs.py +++ b/galsim/roman/roman_psfs.py @@ -22,7 +22,7 @@ from . import pixel_scale, n_pix, pixel_scale_mm from . import n_pix, n_sca, longwave_bands, shortwave_bands from . import diameter, obscuration -from .roman_bandpass import getBandpasses +from .roman_bandpass import getBandpass from ..utilities import LRU_Cache from ..position import PositionD @@ -335,8 +335,7 @@ def _get_single_PSF(SCA, bandpass, SCA_pos, pupil_bin, aper=aper, gsparams=gsparams) if n_waves is not None: # To decide the range of wavelengths to use, check the bandpass. - bp_dict = getBandpasses(include_all_bands=True) - bp = bp_dict[bandpass] + bp = getBandpass(bandpass) PSF = PSF.interpolate(waves=np.linspace(bp.blue_limit, bp.red_limit, n_waves), oversample_fac=1.5) else: From 79d6f8fc10711707fca6b820e1a80de975530eec Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sat, 21 Feb 2026 23:06:44 -0500 Subject: [PATCH 56/66] Look up Roman sky backgrounds by column names The index based lookup for sky backgrounds is finicky when requesting only a subset of bandpasses. This could be done by looking up the index of the bandname, but looking up by column name is more robust and has the advantage of documenting the shared data file better. --- galsim/roman/roman_bandpass.py | 8 ++++---- share/roman/roman_sky_backgrounds.txt | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/galsim/roman/roman_bandpass.py b/galsim/roman/roman_bandpass.py index 8c6ad66b24..650134f488 100644 --- a/galsim/roman/roman_bandpass.py +++ b/galsim/roman/roman_bandpass.py @@ -123,9 +123,9 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= # Read in and manipulate the sky background info. sky_file = os.path.join(meta_data.share_dir, "roman", "roman_sky_backgrounds.txt") - sky_data = np.loadtxt(sky_file).transpose() - ecliptic_lat = sky_data[0, :] - ecliptic_lon = sky_data[1, :] + sky_data = np.genfromtxt(sky_file, names=True) + ecliptic_lat = sky_data['Latitude'] + ecliptic_lon = sky_data['Longitude'] # Parse kwargs for truncation, thinning, etc., and check for nonsense. truncate_kwargs = ['blue_limit', 'red_limit', 'relative_throughput'] @@ -172,7 +172,7 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= # Store the sky level information as an attribute. bp._ecliptic_lat = ecliptic_lat bp._ecliptic_lon = ecliptic_lon - bp._sky_level = sky_data[2+index, :] + bp._sky_level = sky_data[bp_name] # Add it to the dictionary. bp.name = bp_name if bp_name != 'W149' else 'W146' diff --git a/share/roman/roman_sky_backgrounds.txt b/share/roman/roman_sky_backgrounds.txt index 4dd8431dce..9230987926 100644 --- a/share/roman/roman_sky_backgrounds.txt +++ b/share/roman/roman_sky_backgrounds.txt @@ -1,3 +1,4 @@ +# Latitude Longitude R062 Z087 Y106 J129 H158 F184 W146 K213 SNPrism Grism_1stOrder Grism_0thOrder 0.0000 0.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 1.3976 0.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 2.7960 0.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 -10.0000 From 96e34fc3a5660d4e811d609100f912eda2528b4e Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sat, 21 Feb 2026 23:24:47 -0500 Subject: [PATCH 57/66] Add a check to ensure that the defaults for getBandpass and getBandpasses stay in sync. --- tests/test_roman.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/test_roman.py b/tests/test_roman.py index c62a1a1fe9..a3eafa449e 100644 --- a/tests/test_roman.py +++ b/tests/test_roman.py @@ -539,6 +539,10 @@ def test_roman_single_bandpass(): bp = galsim.roman.getBandpass('F184') assert bp.name == 'F184' + # Check that the default values are the same for getBandpass and getBandpasses. + bp_dict = galsim.roman.getBandpasses() + assert bp == bp_dict[bp.name] + # Test for a non-imaging bandpass. bp = galsim.roman.getBandpass("SNPrism") assert bp.name == "SNPrism" From 74c4367a89212aa4156b9fe8ac8d1279f7b7e63f Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 22 Feb 2026 12:58:39 -0500 Subject: [PATCH 58/66] Update galsim/roman/roman_bandpass.py --- galsim/roman/roman_bandpass.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/galsim/roman/roman_bandpass.py b/galsim/roman/roman_bandpass.py index 650134f488..08888d9fb5 100644 --- a/galsim/roman/roman_bandpass.py +++ b/galsim/roman/roman_bandpass.py @@ -203,4 +203,5 @@ def getBandpass(bandname, AB_zeropoint=True, default_thin_trunc=True, **kwargs): @returns A Bandpass object for the specified band. """ - return getBandpasses(AB_zeropoint=AB_zeropoint, default_thin_trunc=default_thin_trunc, include_all_bands=True, bandnames=[bandname], **kwargs)[bandname] + return getBandpasses(AB_zeropoint=AB_zeropoint, default_thin_trunc=default_thin_trunc, + include_all_bands=True, bandnames=[bandname], **kwargs)[bandname] From 6211ac71d3fcc2f3182a8f4cd80dff95ff9bc7d3 Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sun, 22 Feb 2026 13:32:53 -0500 Subject: [PATCH 59/66] Add an explicit test for W --- tests/test_roman.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/test_roman.py b/tests/test_roman.py index a3eafa449e..60b5a90c74 100644 --- a/tests/test_roman.py +++ b/tests/test_roman.py @@ -543,6 +543,10 @@ def test_roman_single_bandpass(): bp_dict = galsim.roman.getBandpasses() assert bp == bp_dict[bp.name] + # Explicitly check for the W-band, since that's a special case. + bp = galsim.roman.getBandpass("W146") + assert bp == bp_dict[bp.name] + # Test for a non-imaging bandpass. bp = galsim.roman.getBandpass("SNPrism") assert bp.name == "SNPrism" From c79ed40ef26d2d9f976e36fa44bf47747418d512 Mon Sep 17 00:00:00 2001 From: Arun Kannawadi Date: Sun, 22 Feb 2026 13:33:23 -0500 Subject: [PATCH 60/66] Drop enumerate when looping over bands --- galsim/roman/roman_bandpass.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/galsim/roman/roman_bandpass.py b/galsim/roman/roman_bandpass.py index 08888d9fb5..e5956d9a40 100644 --- a/galsim/roman/roman_bandpass.py +++ b/galsim/roman/roman_bandpass.py @@ -150,7 +150,7 @@ def getBandpasses(AB_zeropoint=True, default_thin_trunc=True, include_all_bands= # Set up a dictionary. bandpass_dict = {} # Loop over the bands. - for index, bp_name in enumerate(bandnames): + for bp_name in bandnames: if include_all_bands is False and bp_name in non_imaging_bands: continue From 0e1069c296f324ff12b238a8d2057ea8a2838141 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 22 Feb 2026 16:23:52 -0500 Subject: [PATCH 61/66] Update wheels to build 3.14 and not 3.8 --- .github/workflows/wheels.yml | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 5220011c43..966a450f5e 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -16,11 +16,11 @@ jobs: - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.22.0 + uses: pypa/cibuildwheel@v3.3.1 env: CIBW_BUILD: "*manylinux*" CIBW_ARCHS: auto64 - CIBW_SKIP: cp36* cp37* pp* + CIBW_SKIP: cp36* cp37* cp38* pp* # I think yum might always work here. But leave all options available. CIBW_BEFORE_ALL: yum install -y fftw-devel || apt-get install libfftw3-dev || apk add --upgrade fftw-dev @@ -38,11 +38,11 @@ jobs: - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.22.0 + uses: pypa/cibuildwheel@v3.3.1 env: CIBW_BUILD: "*musllinux*" CIBW_ARCHS: auto64 - CIBW_SKIP: cp36* cp37* pp* + CIBW_SKIP: cp36* cp37* cp38* pp* # I think musl always uses apk, but keep all options available. CIBW_BEFORE_ALL: apk add --upgrade fftw-dev || apt-get install libfftw3-dev || yum install -y fftw-devel @@ -53,21 +53,21 @@ jobs: build_macosx_intel_wheels: name: Build wheels on MacOS Intel - runs-on: macos-13 + runs-on: macos-15-intel steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.22.0 + uses: pypa/cibuildwheel@v3.3.1 env: CIBW_BUILD: "*macosx*" CIBW_ARCHS: auto64 - CIBW_SKIP: cp36* cp37* pp* + CIBW_SKIP: cp36* cp37* cp38* pp* CIBW_BEFORE_ALL: brew install fftw || true CIBW_ENVIRONMENT: >- - MACOSX_DEPLOYMENT_TARGET=13.0 + MACOSX_DEPLOYMENT_TARGET=14.0 - uses: actions/upload-artifact@v4 with: @@ -76,27 +76,22 @@ jobs: build_macosx_arm_wheels: name: Build wheels on MacOS ARM - runs-on: macos-latest + runs-on: macos-14 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 - name: Build wheels - uses: pypa/cibuildwheel@v2.22.0 + uses: pypa/cibuildwheel@v3.3.1 env: CIBW_BUILD: "*macosx*" CIBW_ARCHS: arm64 - CIBW_SKIP: cp36* cp37* pp* - CIBW_BEFORE_ALL: brew install llvm libomp fftw eigen + CIBW_SKIP: cp36* cp37* cp38* pp* + CIBW_BEFORE_ALL: brew install fftw eigen CIBW_ENVIRONMENT: >- - CC=/opt/homebrew/opt/llvm/bin/clang - CXX=/opt/homebrew/opt/llvm/bin/clang++ - LDFLAGS="-L/opt/homebrew/opt/llvm/lib -Wl,-rpath,/opt/homebrew/opt/llvm/lib" - CPPFLAGS="-I/opt/homebrew/opt/llvm/include" - PATH="/opt/homebrew/opt/llvm/bin:$PATH" FFTW_DIR="/opt/homebrew/lib" - MACOSX_DEPLOYMENT_TARGET=14.7 + MACOSX_DEPLOYMENT_TARGET=14.0 - uses: actions/upload-artifact@v4 with: From 74662fb82db382e3775476013f3c02258a073c47 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 22 Feb 2026 16:25:37 -0500 Subject: [PATCH 62/66] Add v2.6, 2.7, 2.8 to older.rst --- docs/older.rst | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/docs/older.rst b/docs/older.rst index 0596863ba4..f8805f3323 100644 --- a/docs/older.rst +++ b/docs/older.rst @@ -5,6 +5,89 @@ listed here for brevity. See the CHANGELOG files associated with each version for a more complete list. Issue numbers related to each change are given in parentheses. +v2.8 +---- + +*Dependency Changes* + +- Removed setuptools<72 pin. (#1335) +- Updated build to use std=c++14 to allow for eigen version 5.0. (#1343) + + +*API Change* + +- Changed behavior for large FFTs to be a warning, rather than an error. (#1332, #1341) + + +*Bug Fixes* + +- Fixed a bug in `Image.calculateFWHM` that started with numpy version 2.3. (#1336, #1337) +- Fixed an error in chromatic drawing when WCS involves a reflection. (#1346, #1349) +- Fixed the Roman bandpass functions using config interface to allow non-imaging bands. (#1347) + + +v2.7 +---- + +*New Features* + +- Added `DoubleZernike.xycoef`. (#1327) +- Added a setter for the `Image.array` property. (#1272, #1329) +- Added an option ``recalc=True`` to `SiliconSensor.accumulate`. (#1328) + + +*Performance Improvements* + +- Switched to inbuilt operators on lists rather than numpy operators in a few places (#1316) +- Added ``robust=True`` option to `Zernike.__call__`. (#1326, #1327) +- Reduced memory use in the Silicon class. (#1331) + + +*Bug Fixes* + +- Fixed an error in the `Spergel` stepk calculation. (#1324, #1325) +- Fixed an error in PhotonDCR use of zenith_angle if sky_pos is also given. (#1330) + + +v2.6 +---- + +*Dependency Change* + +- Removed an accidental implicit dependency we had on scipy in `FittedSIPWCS`. (#1253, #1305) + + +*API Changes* + +- Changed the behavior of random_seed. cf. `Image Field Attributes`. (#1309) + + +*Config Updates* + +- Changed the behavior of random_seed to be less confusing and safer for most use cases. (#1309) +- Added Quantity and Unit types. (#1311) + + +*New Features* + +- Added `InterpolatedChromaticObject.from_images`. (#1294, #1296) +- Allow PosixPath instances in constructors for `Bandpass` and `SED`. (#1270, #1304) +- Added filter information for the Prism and Grism in the roman module. (#1307) +- Added options to give some unitful values as an astropy Quantity. (#1311) + + +*Bug Fixes* + +- Fixed a bug in the config-layer parsing of Position items. (#1299, #1300) +- Fixed a bug in `DoubleZernike` to handle integer arguments. (#1283, #1303) +- Fixed a bug in `ChromaticConvolution` with a simple `GSObject` and one with an inseparable SED. + (#1302, #1306) +- Fixed a build problem for some compilers when GPU offloading is enabled. (#1313, #1314) +- Fixed a bug for chromatic photon shooting if the realized flux is zero. (#1317) +- Fixed a bug that could occasionally cause singular matrix exceptions in `FittedSIPWCS`. (#1319) +- Fixed a bug in the object centering when drawing with nx, ny and center. (#1322, #1323) + + v2.5 ---- From aca44099c4c6d2453cae2dec84945ab1ff30d943 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 22 Feb 2026 16:31:41 -0500 Subject: [PATCH 63/66] Squash an irrelevant numpy warning --- galsim/catalog.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/galsim/catalog.py b/galsim/catalog.py index c7c8f5b5ed..cce04c8c99 100644 --- a/galsim/catalog.py +++ b/galsim/catalog.py @@ -23,6 +23,7 @@ import pickle import yaml import json +import warnings from .errors import GalSimValueError, GalSimKeyError, GalSimIndexError from ._utilities import lazy_property @@ -130,7 +131,10 @@ def finishReadAscii(self): # Note: we leave the data as str, rather than convert to float, so that if # we have any str fields, they don't give an error here. They'll only give an # error if one tries to convert them to float at some point. - self._data = np.loadtxt(self.file_name, comments=self.comments, dtype=bytes, ndmin=2) + with warnings.catch_warnings(): + # numpy 1.23 emits a stupid warning here about max_rows even though we're not using it. + warnings.filterwarnings("ignore", category=UserWarning) + self._data = np.loadtxt(self.file_name, comments=self.comments, dtype=bytes, ndmin=2) # Convert the bytes to str. For Py2, this is a no op. self._data = self._data.astype(str) From 8894ad840c1510f109623b1273f2b56158d34533 Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 22 Feb 2026 16:32:26 -0500 Subject: [PATCH 64/66] Update setup.py to use c++14 to allow for eigen version 5 --- setup.py | 46 +++++++++++++++++++++++++++++----------------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/setup.py b/setup.py index 7468899aa1..05d7a16a98 100644 --- a/setup.py +++ b/setup.py @@ -70,21 +70,21 @@ def all_files_from(dir, ext=''): shared_data = all_files_from('share') copt = { - 'gcc' : ['-O2','-std=c++11','-fvisibility=hidden','-fopenmp'], - 'gcc w/ GPU' : ['-O2','-std=c++11','-fvisibility=hidden','-fopenmp','-foffload=nvptx-none','-DGALSIM_USE_GPU'], - 'icc' : ['-O2','-vec-report0','-std=c++11','-openmp'], - 'clang' : ['-O2','-std=c++11', + 'gcc' : ['-O2','-std=c++14','-fvisibility=hidden','-fopenmp'], + 'gcc w/ GPU' : ['-O2','-std=c++14','-fvisibility=hidden','-fopenmp','-foffload=nvptx-none','-DGALSIM_USE_GPU'], + 'icc' : ['-O2','-vec-report0','-std=c++14','-openmp'], + 'clang' : ['-O2','-std=c++14', '-Wno-shorten-64-to-32','-fvisibility=hidden','-stdlib=libc++'], - 'clang w/ OpenMP' : ['-O2','-std=c++11','-fopenmp', + 'clang w/ OpenMP' : ['-O2','-std=c++14','-fopenmp', '-Wno-shorten-64-to-32','-fvisibility=hidden','-stdlib=libc++'], - 'clang w/ Intel OpenMP' : ['-O2','-std=c++11','-Xpreprocessor','-fopenmp', + 'clang w/ Intel OpenMP' : ['-O2','-std=c++14','-Xpreprocessor','-fopenmp', '-Wno-shorten-64-to-32','-fvisibility=hidden','-stdlib=libc++'], - 'clang w/ manual OpenMP' : ['-O2','-std=c++11','-Xpreprocessor','-fopenmp', + 'clang w/ manual OpenMP' : ['-O2','-std=c++14','-Xpreprocessor','-fopenmp', '-Wno-shorten-64-to-32','-fvisibility=hidden','-stdlib=libc++'], - 'clang w/ GPU' : ['-O2','-msse2','-std=c++11','-fopenmp','-fopenmp-targets=nvptx64-nvidia-cuda', + 'clang w/ GPU' : ['-O2','-msse2','-std=c++14','-fopenmp','-fopenmp-targets=nvptx64-nvidia-cuda', '-Wno-openmp-mapping','-Wno-unknown-cuda-version', '-Wno-shorten-64-to-32','-fvisibility=hidden', '-DGALSIM_USE_GPU'], - 'nvc++' : ['-O2','-std=c++11','-mp=gpu','-DGALSIM_USE_GPU'], + 'nvc++' : ['-O2','-std=c++14','-mp=gpu','-DGALSIM_USE_GPU'], 'unknown' : [], } lopt = { @@ -684,17 +684,29 @@ def try_cpp(compiler, cflags=[], lflags=[], prepend=None): """) return try_compile(cpp_code, compiler, cflags, lflags, prepend=prepend) -def try_cpp11(compiler, cflags=[], lflags=[], check_warning=False): - """Check if compiling c++11 code with the given compiler works properly. +def try_cpp14(compiler, cflags=[], lflags=[], check_warning=False): + """Check if compiling c++14 code with the given compiler works properly. """ from textwrap import dedent cpp_code = dedent(""" #include - #include + #include // c++11 feature #include + #include int main(void) { + // c++11 feature std::cout << std::tgamma(1.3) << std::endl; + + // c++14 feature + auto func = [](int i) { return i + 5; }; + std::cout << "Result of func(3): " << func(3) << std::endl; + + // A more sophisticated c++14 feature + std::unique_ptr ptr(new int(10)); + auto lambda = [value = std::move(ptr)]() { if (value) return *value; }; + std::cout << "Value from lambda(): " << lambda() << std::endl; + return 0; } """) @@ -822,7 +834,7 @@ def fix_compiler(compiler, njobs): extra_cflags = copt[comp_type] extra_lflags = lopt[comp_type] - success = try_cpp11(compiler, extra_cflags, extra_lflags) + success = try_cpp14(compiler, extra_cflags, extra_lflags) if not success: # In case libc++ doesn't work, try letting the system use the default stdlib try: @@ -831,16 +843,16 @@ def fix_compiler(compiler, njobs): except (AttributeError, ValueError): pass else: - success = try_cpp11(compiler, extra_cflags, extra_lflags) + success = try_cpp14(compiler, extra_cflags, extra_lflags) if not success: - print('The compiler %s with flags %s did not successfully compile C++11 code'% + print('The compiler %s with flags %s did not successfully compile C++14 code'% (cc, ' '.join(extra_cflags))) - raise OSError("Compiler is not C++-11 compatible") + raise OSError("Compiler is not C++-14 compatible") # Also see if adding -msse2 works (and doesn't give a warning) if '-msse2' not in extra_cflags: extra_cflags.append('-msse2') - if try_cpp11(compiler, extra_cflags, extra_lflags, check_warning=True): + if try_cpp14(compiler, extra_cflags, extra_lflags, check_warning=True): print('Using cflag -msse2') else: print('warning with -msse2.') From 35fc0d3eca0d0a6f8193d64e6fcbb705770f788e Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Sun, 22 Feb 2026 17:29:41 -0500 Subject: [PATCH 65/66] Don't cover linalg exception in leastsq routine --- galsim/utilities.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/galsim/utilities.py b/galsim/utilities.py index 6300b2847c..86d79acb62 100644 --- a/galsim/utilities.py +++ b/galsim/utilities.py @@ -1879,7 +1879,7 @@ def least_squares(fun, x0, args=(), kwargs={}, max_iter=1000, tol=1e-9, lambda_i A = JTJ + lambda_ * np.eye(len(JTJ)) try: delta_params = np.linalg.solve(A, JTr) - except np.linalg.LinAlgError: + except np.linalg.LinAlgError: # pragma: no cover lambda_ *= 2 continue From f9c43c1b6c291845226e342494913482cdf522bc Mon Sep 17 00:00:00 2001 From: Mike Jarvis Date: Mon, 16 Mar 2026 11:19:14 -0400 Subject: [PATCH 66/66] Old astropy rice read error has been fixed. --- tests/Image_comparison_images/read_rice.py | 11 +++++++++++ tests/test_image.py | 4 ++-- 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 tests/Image_comparison_images/read_rice.py diff --git a/tests/Image_comparison_images/read_rice.py b/tests/Image_comparison_images/read_rice.py new file mode 100644 index 0000000000..7b7e0e5a43 --- /dev/null +++ b/tests/Image_comparison_images/read_rice.py @@ -0,0 +1,11 @@ +# Script posted to demonstrate astropy error: +# https://github.com/astropy/astropy/issues/15477 +# Fails on astropy 5.3 .. 7.2 + +from astropy.io import fits + +file_name = 'testF.fits.fz' + +with fits.open(file_name, 'readonly') as hdu_list: + hdu = hdu_list[1] + hdu.data diff --git a/tests/test_image.py b/tests/test_image.py index 09aeee79a2..1152cd4f89 100644 --- a/tests/test_image.py +++ b/tests/test_image.py @@ -629,9 +629,9 @@ def test_Image_FITS_IO(run_slow): # Test rice # Avoid astropy 5.3 issue reading rice-compressed file. # cf. https://github.com/astropy/astropy/issues/15477 - # Hopefull they will fix it before 5.4 comes out... + # Fixed in version 7.3. import astropy - if astropy.__version__ >= "5.3" and astropy.__version__ < "5.4": continue + if astropy.__version__ >= "5.3" and astropy.__version__ < "7.3": continue test_file = os.path.join(datadir, "test"+tchar[i]+".fits.fz") test_image = galsim.fits.read(test_file, compression='rice') np.testing.assert_array_equal(ref_array.astype(types[i]), test_image.array,