Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F96641602
e_unmag.c
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sun, Dec 29, 09:39
Size
1 KB
Mime Type
text/x-c
Expires
Tue, Dec 31, 09:39 (2 d)
Engine
blob
Format
Raw Data
Handle
23218560
Attached To
R1448 Lenstool-HPC
e_unmag.c
View Options
#include<stdio.h>
#include<math.h>
#include<fonction.h>
#include<constant.h>
#include<dimension.h>
#include<structure.h>
/****************************************************************/
/* nom: unmag */
/* auteur: Jean-Paul Kneib */
/* date: 10/02/92 */
/* place: Toulouse
*****************************************************************
* Return an ellipse that contains the eigenvalues of the amplification
* matrix [ a=(1-k+gamma), b=(1-k-gamma) ] and the orientation of the proper
* magnification axis.
*
* Used to convert image to source plane (using the lens equation)
*
* You have to multiply those eigenvalues by c2/2/DOL to get the true
* eigenvalues.
*
* Here :
* k = 0.5 * DLS/DS * ( d2Phixx + d2Phiyy )
* gamma = DLS/DS * SQRT ( 0.25 * (d2Phiyy - d2Phixx)^2 + (d2Phixy)^2 )
*
* Parameters :
* - position is the point where the amplification matrix is computed
* - dl0s is distcosmo2 between lens[0] and zs
* - dos is the normalised distance to the source
* - zs is the redshift of the source
*
* Global variables used :
* - in e_grad2() : G, lens, lens_table
*/
struct ellipse e_unmag(const struct point *position, double dl0s, double dos, double zs)
{
struct ellipse ampli;
double A, B, C;
struct matrix M;
M = e_grad2(position, dl0s, zs);
M.a /= dos;
M.b /= dos;
M.c /= dos;
A = 1. - M.a; // 1 - DLS/DS * d2phixx
B = -M.b; // - DLS/DS * d2phixy
C = 1. - M.c; // 1 - DLS/DS * d2phiyy
ampli = formeli(A, B, C);
return(ampli);
}
struct ellipse e_unmag_gal(struct galaxie *image)
{
struct ellipse ampli;
double A, B, C;
struct matrix M;
M = e_grad2_gal(image, NULL);
M.a /= image->dos;
M.b /= image->dos;
M.c /= image->dos;
A = 1. - M.a;
B = -M.b;
C = 1. - M.c;
ampli = formeli(A, B, C);
return(ampli);
}
Event Timeline
Log In to Comment