Commit e23322b4 authored by Emmanuel Bertin's avatar Emmanuel Bertin
Browse files

Fixed positional offsets of large galaxy models on MODELS and -MODELS check-ima\

ges.
Pushed version number to 2.19.4.
parent d397d721
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for sextractor 2.19.3. # Generated by GNU Autoconf 2.69 for sextractor 2.19.4.
# #
# Report bugs to <bertin@iap.fr>. # Report bugs to <bertin@iap.fr>.
# #
...@@ -590,8 +590,8 @@ MAKEFLAGS= ...@@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='sextractor' PACKAGE_NAME='sextractor'
PACKAGE_TARNAME='sextractor' PACKAGE_TARNAME='sextractor'
PACKAGE_VERSION='2.19.3' PACKAGE_VERSION='2.19.4'
PACKAGE_STRING='sextractor 2.19.3' PACKAGE_STRING='sextractor 2.19.4'
PACKAGE_BUGREPORT='bertin@iap.fr' PACKAGE_BUGREPORT='bertin@iap.fr'
PACKAGE_URL='' PACKAGE_URL=''
...@@ -1345,7 +1345,7 @@ if test "$ac_init_help" = "long"; then ...@@ -1345,7 +1345,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures sextractor 2.19.3 to adapt to many kinds of systems. \`configure' configures sextractor 2.19.4 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
...@@ -1415,7 +1415,7 @@ fi ...@@ -1415,7 +1415,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of sextractor 2.19.3:";; short | recursive ) echo "Configuration of sextractor 2.19.4:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
...@@ -1548,7 +1548,7 @@ fi ...@@ -1548,7 +1548,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
sextractor configure 2.19.3 sextractor configure 2.19.4
generated by GNU Autoconf 2.69 generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc. Copyright (C) 2012 Free Software Foundation, Inc.
...@@ -1971,7 +1971,7 @@ cat >config.log <<_ACEOF ...@@ -1971,7 +1971,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by sextractor $as_me 2.19.3, which was It was created by sextractor $as_me 2.19.4, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
...@@ -2785,7 +2785,7 @@ fi ...@@ -2785,7 +2785,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='sextractor' PACKAGE='sextractor'
VERSION='2.19.3' VERSION='2.19.4'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
...@@ -15697,7 +15697,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ...@@ -15697,7 +15697,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by sextractor $as_me 2.19.3, which was This file was extended by sextractor $as_me 2.19.4, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
...@@ -15763,7 +15763,7 @@ _ACEOF ...@@ -15763,7 +15763,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ ac_cs_version="\\
sextractor config.status 2.19.3 sextractor config.status 2.19.4
configured by $0, generated by GNU Autoconf 2.69, configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with SExtractor. If not, see <http://www.gnu.org/licenses/>. # along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
# #
# Last modified: 12/09/2013 # Last modified: 24/09/2013
# #
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% #%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...@@ -31,7 +31,7 @@ define([AC_CACHE_LOAD],) ...@@ -31,7 +31,7 @@ define([AC_CACHE_LOAD],)
define([AC_CACHE_SAVE],) define([AC_CACHE_SAVE],)
# This is your standard Bertin source code... # This is your standard Bertin source code...
AC_INIT(sextractor, 2.19.3, [bertin@iap.fr]) AC_INIT(sextractor, 2.19.4, [bertin@iap.fr])
AC_CONFIG_SRCDIR(src/makeit.c) AC_CONFIG_SRCDIR(src/makeit.c)
AC_CONFIG_AUX_DIR(autoconf) AC_CONFIG_AUX_DIR(autoconf)
AC_CONFIG_HEADERS(config.h) AC_CONFIG_HEADERS(config.h)
......
.TH SEXTRACTOR "1" "September 2013" "SExtractor 2.19.3" "User Commands" .TH SEXTRACTOR "1" "September 2013" "SExtractor 2.19.4" "User Commands"
.SH NAME .SH NAME
sex \- extract a source catalogue from an astronomical FITS image sex \- extract a source catalogue from an astronomical FITS image
.SH SYNOPSIS .SH SYNOPSIS
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>. * along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
* *
* Last modified: 05/07/2013 * Last modified: 23/09/2013
* *
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
...@@ -102,66 +102,61 @@ INPUT Pointer to the check-image, ...@@ -102,66 +102,61 @@ INPUT Pointer to the check-image,
thumbnail height, thumbnail height,
thumbnail center x coordinate, thumbnail center x coordinate,
thumbnail center y coordinate, thumbnail center y coordinate,
zoom factor, inverse zoom factor,
flux scaling factor. flux scaling factor.
OUTPUT -. OUTPUT -.
NOTES Outside boundaries are taken into account. NOTES Outside boundaries are taken into account.
AUTHOR E. Bertin (IAP) AUTHOR E. Bertin (IAP)
VERSION 26/02/2013 VERSION 23/09/2013
***/ ***/
void addcheck_resample(checkstruct *check, float *thumb, int w, int h, void addcheck_resample(checkstruct *check, float *thumb, int w, int h,
int ix, int iy, float step2, float amplitude) int ix, int iy, float step1, float amplitude)
{ {
float interpm[CHECKINTERPW*CHECKINTERPW], float interpm[CHECKINTERPW*CHECKINTERPW],
*pix2, *mask,*maskt,*pix12, *pixin,*pixin0, *pixout,*pixout0, *pix2, *mask,*maskt,*pix12, *pixin,*pixin0, *pixout,*pixout0,
xc1,xc2,yc1,yc2, xs1,ys1, x1,y1, x,y, dxm,dym, val, norm, dx,dy; xs1,ys1, x1,y1, x,y, dxm,dym, val, norm, step2;
int i,j,k,n,t, *start,*startt, *nmask,*nmaskt, int i,j,k,n,t, *start,*startt, *nmask,*nmaskt,
ixs2,iys2, ix2,iy2, dix2,diy2, nx2,ny2, iys1a, ny1, hmw,hmh, ixs2,iys2, ix2,iy2, dix2,diy2, nx2,ny2, iys1a, ny1, hmw,hmh,
ixs,iys, ix1,iy1, w2,h2; ixs,iys, ix1,iy1, w2,h2;
step2 = 1.0/step1;
pix2 = check->pix; pix2 = check->pix;
w2 = check->width; w2 = check->width;
h2 = check->height; h2 = check->height;
dx = 0.5*(1.0 - step2);
dy = 0.5*(1.0 - step2);
xc1 = (float)(w/2); /* Im1 center x-coord*/
xc2 = (float)ix; /* Im2 center x-coord*/
xs1 = xc1 + dx - xc2*step2; /* Im1 start x-coord */
xs1 = -0.5 - ((float)ix - (int)(w*step1)/2 - 0.5)*step2; /* Im1 start coord */
if ((int)xs1 >= w) if ((int)xs1 >= w)
return; return;
ixs2 = 0; /* Int part of Im2 start x-coord */ ixs2 = 0; /* Int part of Im2 start x-coord */
if (xs1<0.0) if (xs1<0.0)
{ {
dix2 = (int)(1-xs1/step2); dix2 = (int)(1-xs1*step1);
/*-- Simply leave here if the images do not overlap in x */ /*-- Simply leave here if the images do not overlap in x */
if (dix2 >= w2) if (dix2 >= w2)
return; return;
ixs2 += dix2; ixs2 += dix2;
xs1 += dix2*step2; xs1 += dix2*step2;
} }
nx2 = (int)((w-1-xs1)/step2+1);/* nb of interpolated Im2 pixels along x */ nx2 = (int)((w-1-xs1)*step1+1);/* nb of interpolated Im2 pixels along x */
if (nx2>(ix2=w2-ixs2)) if (nx2>(ix2=w2-ixs2))
nx2 = ix2; nx2 = ix2;
if (nx2<=0) if (nx2<=0)
return; return;
yc1 = (float)(h/2); /* Im1 center y-coord */
yc2 = (float)iy; /* Im2 center y-coord */ ys1 = -0.5 - ((float)iy - (int)(h*step1)/2 - 0.5)*step2; /* Im1 start coord */
ys1 = yc1 + dy - yc2*step2; /* Im1 start y-coord */
if ((int)ys1 >= h) if ((int)ys1 >= h)
return; return;
iys2 = 0; /* Int part of Im2 start y-coord */ iys2 = 0; /* Int part of Im2 start y-coord */
if (ys1<0.0) if (ys1<0.0)
{ {
diy2 = (int)(1-ys1/step2); diy2 = (int)(1-ys1*step1);
/*-- Simply leave here if the images do not overlap in y */ /*-- Simply leave here if the images do not overlap in y */
if (diy2 >= h2) if (diy2 >= h2)
return; return;
iys2 += diy2; iys2 += diy2;
ys1 += diy2*step2; ys1 += diy2*step2;
} }
ny2 = (int)((h-1-ys1)/step2+1);/* nb of interpolated Im2 pixels along y */ ny2 = (int)((h-1-ys1)*step1+1);/* nb of interpolated Im2 pixels along y */
if (ny2>(iy2=h2-iys2)) if (ny2>(iy2=h2-iys2))
ny2 = iy2; ny2 = iy2;
if (ny2<=0) if (ny2<=0)
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>. * along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
* *
* Last modified: 17/07/2013 * Last modified: 23/09/2013
* *
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
...@@ -168,7 +168,7 @@ OUTPUT Pointer to an allocated fit structure (containing details about the ...@@ -168,7 +168,7 @@ OUTPUT Pointer to an allocated fit structure (containing details about the
fit). fit).
NOTES It is a modified version of the lm_minimize() of lmfit. NOTES It is a modified version of the lm_minimize() of lmfit.
AUTHOR E. Bertin (IAP) AUTHOR E. Bertin (IAP)
VERSION 05/07/2013 VERSION 23/09/2013
***/ ***/
void profit_fit(profitstruct *profit, void profit_fit(profitstruct *profit,
picstruct *field, picstruct *wfield, picstruct *field, picstruct *wfield,
...@@ -365,7 +365,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER); ...@@ -365,7 +365,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER);
if (profit->subsamp>1.0) if (profit->subsamp>1.0)
addcheck_resample(check, profit->lmodpix, addcheck_resample(check, profit->lmodpix,
profit->objnaxisn[0],profit->objnaxisn[1], profit->objnaxisn[0],profit->objnaxisn[1],
profit->ix,profit->iy, 1.0/profit->subsamp, profit->ix,profit->iy, profit->subsamp,
1.0/(profit->subsamp*profit->subsamp)); 1.0/(profit->subsamp*profit->subsamp));
else else
addcheck(check, profit->lmodpix, addcheck(check, profit->lmodpix,
...@@ -379,7 +379,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER); ...@@ -379,7 +379,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER);
if (profit->subsamp>1.0) if (profit->subsamp>1.0)
addcheck_resample(check, profit->lmodpix, addcheck_resample(check, profit->lmodpix,
profit->objnaxisn[0],profit->objnaxisn[1], profit->objnaxisn[0],profit->objnaxisn[1],
profit->ix,profit->iy, 1.0/profit->subsamp, profit->ix,profit->iy, profit->subsamp,
-1.0/(profit->subsamp*profit->subsamp)); -1.0/(profit->subsamp*profit->subsamp));
else else
addcheck(check, profit->lmodpix, addcheck(check, profit->lmodpix,
...@@ -400,7 +400,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER); ...@@ -400,7 +400,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER);
if (profit->subsamp>1.0) if (profit->subsamp>1.0)
addcheck_resample(check, profit->lmodpix, addcheck_resample(check, profit->lmodpix,
profit->objnaxisn[0],profit->objnaxisn[1], profit->objnaxisn[0],profit->objnaxisn[1],
profit->ix,profit->iy, 1.0/profit->subsamp, profit->ix,profit->iy, profit->subsamp,
1.0/(profit->subsamp*profit->subsamp)); 1.0/(profit->subsamp*profit->subsamp));
else else
addcheck(check, profit->lmodpix, addcheck(check, profit->lmodpix,
...@@ -421,7 +421,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER); ...@@ -421,7 +421,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER);
if (profit->subsamp>1.0) if (profit->subsamp>1.0)
addcheck_resample(check, profit->lmodpix, addcheck_resample(check, profit->lmodpix,
profit->objnaxisn[0],profit->objnaxisn[1], profit->objnaxisn[0],profit->objnaxisn[1],
profit->ix,profit->iy, 1.0/profit->subsamp, profit->ix,profit->iy, profit->subsamp,
-1.0/(profit->subsamp*profit->subsamp)); -1.0/(profit->subsamp*profit->subsamp));
else else
addcheck(check, profit->lmodpix, addcheck(check, profit->lmodpix,
...@@ -442,7 +442,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER); ...@@ -442,7 +442,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER);
if (profit->subsamp>1.0) if (profit->subsamp>1.0)
addcheck_resample(check, profit->lmodpix, addcheck_resample(check, profit->lmodpix,
profit->objnaxisn[0],profit->objnaxisn[1], profit->objnaxisn[0],profit->objnaxisn[1],
profit->ix,profit->iy, 1.0/profit->subsamp, profit->ix,profit->iy, profit->subsamp,
1.0/(profit->subsamp*profit->subsamp)); 1.0/(profit->subsamp*profit->subsamp));
else else
addcheck(check, profit->lmodpix, addcheck(check, profit->lmodpix,
...@@ -463,7 +463,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER); ...@@ -463,7 +463,7 @@ profit->niter = profit_minimize(profit, PROFIT_MAXITER);
if (profit->subsamp>1.0) if (profit->subsamp>1.0)
addcheck_resample(check, profit->lmodpix, addcheck_resample(check, profit->lmodpix,
profit->objnaxisn[0],profit->objnaxisn[1], profit->objnaxisn[0],profit->objnaxisn[1],
profit->ix,profit->iy, 1.0/profit->subsamp, profit->ix,profit->iy, profit->subsamp,
-1.0/(profit->subsamp*profit->subsamp)); -1.0/(profit->subsamp*profit->subsamp));
else else
addcheck(check, profit->lmodpix, addcheck(check, profit->lmodpix,
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment