Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Lenstool
Lenstool
Commits
835daf4c
Commit
835daf4c
authored
Jun 11, 2020
by
Johan Richard
Browse files
Corrected output and compute d_profile for double Sersic
parent
542d87fd
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/d_profil.c
View file @
835daf4c
...
...
@@ -26,11 +26,12 @@
double
d_profil
(
double
x
,
double
y
,
const
struct
galaxie
*
gal
)
{
double
xx
,
yy
,
xxx
,
yyy
;
double
res
;
double
res
,
res2
;
const
extern
struct
g_observ
O
;
const
extern
struct
g_large
L
;
res
=
0
;
res2
=
0
;
//jrichard
//Test E.b according to E.a and eps
...
...
@@ -119,6 +120,19 @@ double d_profil(double x, double y, const struct galaxie *gal)
else
res
=
0
.;
}
/* Sersic */
else
if
(
L
.
vitesse
==
6
||
gal
->
type
==
6
)
{
xx
=
((
x
-
gal
->
C
.
x
)
*
sin
(
gal
->
E
.
theta
)
-
(
y
-
gal
->
C
.
y
)
*
cos
(
gal
->
E
.
theta
))
/
gal
->
E
.
b
;
yy
=
((
y
-
gal
->
C
.
y
)
*
sin
(
gal
->
E
.
theta
)
+
(
x
-
gal
->
C
.
x
)
*
cos
(
gal
->
E
.
theta
))
/
gal
->
E
.
a
;
res
=
exp
(
pow
(
xx
*
xx
+
yy
*
yy
,
0
.
5
/
gal
->
var1
));
res
=
pow
(
10
.,
(
26
.
-
gal
->
mag
)
/
2
.
5
)
/
res
;
xx
=
((
x
-
gal
->
C
.
x
)
*
sin
(
gal
->
E2
.
theta
)
-
(
y
-
gal
->
C
.
y
)
*
cos
(
gal
->
E2
.
theta
))
/
gal
->
E2
.
b
;
yy
=
((
y
-
gal
->
C
.
y
)
*
sin
(
gal
->
E2
.
theta
)
+
(
x
-
gal
->
C
.
x
)
*
cos
(
gal
->
E2
.
theta
))
/
gal
->
E2
.
a
;
res2
=
exp
(
pow
(
xx
*
xx
+
yy
*
yy
,
0
.
5
/
gal
->
var2
));
res2
=
pow
(
10
.,
(
26
.
-
gal
->
mag2
)
/
2
.
5
)
/
res2
;
res
+=
res2
;
}
else
{
fprintf
(
stderr
,
"ERROR: source %s brightness profil type %d unknown
\n
"
,
gal
->
n
,
gal
->
type
);
...
...
src/o_print_res.c
View file @
835daf4c
...
...
@@ -288,18 +288,18 @@ void o_print_res(double chi0, double evidence)
fprintf
(
best
,
"
\t
type %d
\n
"
,
source
[
i
].
type
);
fprintf
(
best
,
"
\t
s_center_x %.6lf
\n
"
,
source
[
i
].
C
.
x
);
fprintf
(
best
,
"
\t
s_center_y %.6lf
\n
"
,
source
[
i
].
C
.
y
);
fprintf
(
best
,
"
\t
s_angle %.6lf
\n
"
,
source
[
i
].
E
.
theta
*
RTD
);
fprintf
(
best
,
"
\t
s_sigx %.6lf
\n
"
,
source
[
i
].
E
.
a
);
fprintf
(
best
,
"
\t
s_sigy %.6lf
\n
"
,
source
[
i
].
E
.
b
);
fprintf
(
best
,
"
\t
s_eps %.6lf
\n
"
,
source
[
i
].
eps
);
fprintf
(
best
,
"
\t
s_angle %.6lf
\n
"
,
source
[
i
].
E
.
theta
*
RTD
);
fprintf
(
best
,
"
\t
mag %.6lf
\n
"
,
source
[
i
].
mag
);
fprintf
(
best
,
"
\t
index %.6lf
\n
"
,
source
[
i
].
var1
);
if
(
source
[
i
].
type
==
6
)
// double Sersic
{
fprintf
(
best
,
"
\t
s_angle2 %.6lf
\n
"
,
source
[
i
].
E2
.
theta
*
RTD
);
fprintf
(
best
,
"
\t
s_sigx2 %.6lf
\n
"
,
source
[
i
].
E2
.
a
);
fprintf
(
best
,
"
\t
s_sigy2 %.6lf
\n
"
,
source
[
i
].
E2
.
b
);
fprintf
(
best
,
"
\t
s_eps2 %.6lf
\n
"
,
source
[
i
].
eps2
);
fprintf
(
best
,
"
\t
s_angle2 %.6lf
\n
"
,
source
[
i
].
E2
.
theta
*
RTD
);
fprintf
(
best
,
"
\t
mag2 %.6lf
\n
"
,
source
[
i
].
mag2
);
fprintf
(
best
,
"
\t
index2 %.6lf
\n
"
,
source
[
i
].
var2
);
}
...
...
@@ -584,18 +584,18 @@ void o_print_res(double chi0, double evidence)
fprintf
(
besto
,
"
\t
type %d
\n
"
,
source
[
i
].
type
);
fprintf
(
besto
,
"
\t
s_center_x %.6lf
\n
"
,
source
[
i
].
C
.
x
);
fprintf
(
besto
,
"
\t
s_center_y %.6lf
\n
"
,
source
[
i
].
C
.
y
);
fprintf
(
besto
,
"
\t
s_angle %.6lf
\n
"
,
source
[
i
].
E
.
theta
*
RTD
);
fprintf
(
besto
,
"
\t
s_sigx %.6lf
\n
"
,
source
[
i
].
E
.
a
);
fprintf
(
besto
,
"
\t
s_sigy %.6lf
\n
"
,
source
[
i
].
E
.
b
);
fprintf
(
besto
,
"
\t
s_eps %.6lf
\n
"
,
source
[
i
].
eps
);
fprintf
(
besto
,
"
\t
s_angle %.6lf
\n
"
,
source
[
i
].
E
.
theta
*
RTD
);
fprintf
(
besto
,
"
\t
s_mag %.6lf
\n
"
,
source
[
i
].
mag
);
fprintf
(
besto
,
"
\t
index %.6lf
\n
"
,
source
[
i
].
var1
);
if
(
source
[
i
].
type
==
6
)
//double Sersic
{
fprintf
(
besto
,
"
\t
s_angle2 %.6lf
\n
"
,
source
[
i
].
E2
.
theta
*
RTD
);
fprintf
(
besto
,
"
\t
s_sigx2 %.6lf
\n
"
,
source
[
i
].
E2
.
a
);
fprintf
(
besto
,
"
\t
s_sigy2 %.6lf
\n
"
,
source
[
i
].
E2
.
b
);
fprintf
(
besto
,
"
\t
s_eps2 %.6lf
\n
"
,
source
[
i
].
eps2
);
fprintf
(
besto
,
"
\t
s_angle2 %.6lf
\n
"
,
source
[
i
].
E2
.
theta
*
RTD
);
fprintf
(
besto
,
"
\t
s_mag2 %.6lf
\n
"
,
source
[
i
].
mag2
);
fprintf
(
besto
,
"
\t
index2 %.6lf
\n
"
,
source
[
i
].
var2
);
fprintf
(
besto
,
"
\t
end
\n
"
);
...
...
@@ -607,24 +607,24 @@ void o_print_res(double chi0, double evidence)
fprintf
(
besto
,
"
\t
s_center_x %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SCX
],
smin
[
i
].
C
.
x
,
smax
[
i
].
C
.
x
);
if
(
sblock
[
i
][
SCY
]
)
fprintf
(
besto
,
"
\t
s_center_y %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SCY
],
smin
[
i
].
C
.
y
,
smax
[
i
].
C
.
y
);
if
(
sblock
[
i
][
STHETA
]
)
fprintf
(
besto
,
"
\t
s_angle %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
STHETA
],
smin
[
i
].
E
.
theta
*
RTD
,
smax
[
i
].
E
.
theta
*
RTD
);
if
(
sblock
[
i
][
SA
]
)
fprintf
(
besto
,
"
\t
s_sigx %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SA
],
smin
[
i
].
E
.
a
,
smax
[
i
].
E
.
a
);
if
(
sblock
[
i
][
SEPS
]
)
fprintf
(
besto
,
"
\t
s_eps %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SEPS
],
smin
[
i
].
eps
,
smax
[
i
].
eps
);
if
(
sblock
[
i
][
STHETA
]
)
fprintf
(
besto
,
"
\t
s_angle %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
STHETA
],
smin
[
i
].
E
.
theta
*
RTD
,
smax
[
i
].
E
.
theta
*
RTD
);
if
(
sblock
[
i
][
SFLUX
]
)
fprintf
(
besto
,
"
\t
mag %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SFLUX
],
smin
[
i
].
mag
,
smax
[
i
].
mag
);
if
(
sblock
[
i
][
SINDEX
]
)
fprintf
(
besto
,
"
\t
index %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SINDEX
],
smin
[
i
].
var1
,
smax
[
i
].
var1
);
if
(
source
[
i
].
type
==
6
)
//double Sersic
{
if
(
sblock
[
i
][
STHETA2
]
)
fprintf
(
besto
,
"
\t
s_angle2 %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
STHETA2
],
smin
[
i
].
E2
.
theta
*
RTD
,
smax
[
i
].
E2
.
theta
*
RTD
);
if
(
sblock
[
i
][
SA2
]
)
fprintf
(
besto
,
"
\t
s_sigx2 %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SA2
],
smin
[
i
].
E2
.
a
,
smax
[
i
].
E2
.
a
);
if
(
sblock
[
i
][
SEPS2
]
)
fprintf
(
besto
,
"
\t
s_eps2 %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SEPS2
],
smin
[
i
].
eps2
,
smax
[
i
].
eps2
);
if
(
sblock
[
i
][
STHETA2
]
)
fprintf
(
besto
,
"
\t
s_angle2 %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
STHETA2
],
smin
[
i
].
E2
.
theta
*
RTD
,
smax
[
i
].
E2
.
theta
*
RTD
);
if
(
sblock
[
i
][
SFLUX2
]
)
fprintf
(
besto
,
"
\t
s_mag2 %d %.6lf %.6lf
\n
"
,
sblock
[
i
][
SFLUX2
],
smin
[
i
].
mag2
,
smax
[
i
].
mag2
);
if
(
sblock
[
i
][
SINDEX2
]
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment