====== Transit Lichtkurve ======
//Dieser Abschnitt zeigt die grundlegenden Eigenschaften einer Lichtkurve.
Die hier eingeführten Begriffe und Größen, sind für spätere Analysen wichtig und lassen sich auch experimentell gewonnen (realen) Lichtkurven bestimmen.
//
Übersicht Tutorial: [[cas-008|CAS-008: Exoplaneten]]
===== idealisierte Lichtkurve =====
##########################################################################################################
/lib/scripts/jqplot/jquery.jqplot.js
/lib/scripts/jqplot/jquery.jqplot.css
/lib/scripts/jqplot/jquery.min.js
/lib/scripts/jqplot/jquery.jqplot.min.js
#
# jsxgraph
#
https://jsxgraph.org/distrib/jsxgraphcore.js
###https://cdn.jsdelivr.net/npm/jsxgraph/distrib/jsxgraphcore.js
##https://jsxgraph.org/distrib/jsxgraph.css
https://cdn.jsdelivr.net/npm/jsxgraph/distrib/jsxgraph.css
#
# personal
#
############################################################################################################
var a = -7.0;
var b = 0.0;
var c = 0.0;
var f;
var planet;
var brd;
///////ctrl
var onoff;
var bText = true;
var b1234 = true;
var bTc = true;
var bImpact = true;
var bDepth = true;
var bDuration = true;
//////////
function onInit() {
/////////////// BOARD
brd = JXG.JSXGraph.initBoard('jbox', {boundingbox: [-10, 10, 10, -10],
axis:false,
grid:false,
showNavigation:false,
showCopyright:false,
needsRegularUpdate:true
}),
//////////// STAR
brd.create('point',[0,5],
{face:'o',
strokeColor: '#000',
size:78,
fixed: true,
fillColor: '#FFFFE0',
fillOpacity:0.3,
// fillColor:JXG.hsv2rgb(60,1,1),
needsRegularUpdate:true,
name:''
}
);
////////////////////////
brd.create('arrow', [ [-7,5],[8.5,5]] ,{dash:2,strokeColor:'#000'});
brd.create('arrow', [ [0,-1],[0,9.5]] ,{dash:2,strokeColor:'#000'});
///////// flux time
brd.create('arrow', [ [-7,-9],[-7,-1]] ,{strokeColor:'#000'});
brd.create('arrow', [ [-7,-9],[9,-9]] ,{strokeColor:'#000'});
brd.create('text',[-8,-0.5,"Helligkeit"]);
brd.create('text',[8.5,-8,"Zeit"]);
/////////////////////////////////////////////////////////////////////////////////////
// transit b = 0 center
////////////////////////////////////////////////////////////////////////////////////
// b=0 values
var p1=-3.8;
var p2=-2.5;
var p3= 2.5;
var p4= 3.8;
// b = 1.5 values
var q1=-3.45;
var q2=-2.15;
var q3= 2.15;
var q4= 3.45;
// ingress time
brd.create('text',[2,8,"Stern (Hoststar)"],{ visible: function() {return bText;}});
function funcShow0(x){
if ( b == 0 && bText && b1234 && a > x) return true;
return false;
}
function funcShow15(x){
if ( b == 1.5 && bText && b1234 && a > x) return true;
return false;
}
/////// TC
function showTC(){
if (bText && bTc && b < 3 && a > 0) return true;
return false;
}
brd.create('line',[[0,-5],[0,-5.5]] ,{ visible: function() {return showTC();},
needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#000'});
brd.create('text',[-0.1,-5.8,"T_c"],{ visible: function() { return showTC();},needsRegularUpdate:true});
/////// Duration ////////////////////////////////////////////////
function showDuration1(x){
if (bText && bDuration && b == 0 && a > p4) return true;
return false;
}
brd.create('text',[-1.5,-1.1,"T_{tot}"],{ visible: function() { return showDuration1();},needsRegularUpdate:true});
brd.create('text',[-0.1,-2,"T"],{ visible: function() { return showDuration1();},needsRegularUpdate:true});
brd.create('text',[0.6,-2.7,"T_{full}"],{ visible: function() { return showDuration1();},needsRegularUpdate:true});
function showDuration2(x){
if (bText && bDuration && b == 1.5 && a > q4) return true;
return false;
}
brd.create('text',[-1.5,-1.1,"T_{tot}"],{ visible: function() { return showDuration2();},needsRegularUpdate:true});
brd.create('text',[-0.1,-2,"T"],{ visible: function() { return showDuration2();},needsRegularUpdate:true});
brd.create('text',[0.6,-2.7,"T_{full}"],{ visible: function() { return showDuration2();},needsRegularUpdate:true});
/////// Depth /////////////////////////////////////////////////////////////
function showDepth(){
if (bText && bDepth && b < 3 && a > 5) return true;
return false;
}
brd.create('arrow', [ [5,-4],[5,-3]] ,{visible: function() {return showDepth();},strokeColor:'#000'});
brd.create('arrow', [ [5,-4],[5,-5]] ,{visible: function() {return showDepth();},strokeColor:'#000'});
brd.create('line',[[-6,-5],[6,-5]] ,{ visible: function() {return showDepth();},
needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('text',[5.5,-4,"ΔF"],{ visible: function() { return showDepth();},needsRegularUpdate:true});
/////// Impact ////////////////////////////////////////////////////////////////
function showImpact0(){
if (bText && bImpact && b == 0) return true;
return false;
}
brd.create('text',[0.5,5.5,"b"],{ visible: function() { return showImpact0();},needsRegularUpdate:true});
brd.create('arrow', [ [0,5+0.8],[0,5]] ,{visible: function() {return showImpact0();},strokeColor:'#000'});
brd.create('arrow', [ [0,5-0.8],[0,5]] ,{visible: function() {return showImpact0();},strokeColor:'#000'});
//
function showImpact15(){
if (bText && bImpact && b == 1.5) return true;
return false;
}
brd.create('text',[0.5,4.2,"b"],{ visible: function() { return showImpact15();},needsRegularUpdate:true});
brd.create('arrow', [ [0,5-0.8],[0,5]] ,{visible: function() {return showImpact15();},strokeColor:'#000'});
brd.create('arrow', [ [0,5-0.8],[0,5-1.5]] ,{visible: function() {return showImpact15();},strokeColor:'#000'});
//
function showImpact3(){
if (bText && bImpact && b == 3.0) return true;
return false;
}
brd.create('text',[0.5,5-1.5,"b"],{ visible: function() { return showImpact3();},needsRegularUpdate:true});
brd.create('arrow', [ [0,5-0.8],[0,5]] ,{visible: function() {return showImpact3();},strokeColor:'#000'});
brd.create('arrow', [ [0,5-0.8],[0,5-3]] ,{visible: function() {return showImpact3();},strokeColor:'#000'});
//
function showImpact45(){
if (bText && bImpact && b == 4.5) return true;
return false;
}
brd.create('text',[0.5,5-2.2,"b"],{ visible: function() { return showImpact45();},needsRegularUpdate:true});
brd.create('arrow', [ [0,5-0.8],[0,5]] ,{visible: function() {return showImpact45();},strokeColor:'#000'});
brd.create('arrow', [ [0,5-0.8],[0,5-4.5]] ,{visible: function() {return showImpact45();},strokeColor:'#000'});
////////////////////////7
brd.create('text',[p1-0.1,-8,"t_1"],{ visible: function() { return funcShow0(p2);},needsRegularUpdate:true});
brd.create('text',[p2-0.1,-8,"t_2"],{ visible: function() { return funcShow0(p2);},needsRegularUpdate:true});
brd.create('text',[p3-0.1,-8,"t_3"],{ visible: function() { return funcShow0(p4);},needsRegularUpdate:true});
brd.create('text',[p4-0.1,-8,"t_4"],{ visible: function() { return funcShow0(p4);},needsRegularUpdate:true});
brd.create('arrow', [ [p1+(p2-p1)/2,-7.3],[p2,-7.3]] ,{visible: function() {return funcShow0(p2);},strokeColor:'#000'});
brd.create('arrow', [ [p1+(p2-p1)/2,-7.3],[p1,-7.3]] ,{visible: function() {return funcShow0(p2);},strokeColor:'#000'});
brd.create('text',[p1 -0.5,-7.3,"τ"],{label: {useMathJax: true}, visible: function() { return funcShow0(p2);},needsRegularUpdate:true});
//////////////////////////// b = 0
// t tot
brd.create('arrow', [ [p1+(p4-p1)/2,-1.5],[p4,-1.5]] ,{visible: function() {return showDuration1();},strokeColor:'#000'});
brd.create('arrow', [ [p1+(p4-p1)/2,-1.5],[p1,-1.5]] ,{visible: function() {return showDuration1();},strokeColor:'#000'});
// t
pl = (p2-p1)/2+p1;
pr = (p4-p3)/2+p3;
mp = p1+(p4-p1)/2;
brd.create('arrow', [ [mp,-2.3],[pl,-2.3]] ,{visible: function() {return showDuration1();},strokeColor:'#000'});
brd.create('arrow', [ [mp,-2.3],[pr,-2.3]] ,{visible: function() {return showDuration1();},strokeColor:'#000'});
// tfull
brd.create('arrow', [ [p2+(p3-p2)/2,-3.1],[p3,-3.1]] ,{visible: function() {return showDuration1();},strokeColor:'#000'});
brd.create('arrow', [ [p2+(p3-p2)/2,-3.1],[p2,-3.1]] ,{visible: function() {return showDuration1();},strokeColor:'#000'});
//////////////////////////// b = 1.5
// t tot
brd.create('arrow', [ [q1+(q4-q1)/2,-1.5],[q4,-1.5]] ,{visible: function() {return showDuration2();},strokeColor:'#000'});
brd.create('arrow', [ [q1+(q4-q1)/2,-1.5],[q1,-1.5]] ,{visible: function() {return showDuration2();},strokeColor:'#000'});
// t
ql = (q2-q1)/2+q1;
qr = (q4-q3)/2+q3;
mq = q1+(q4-q1)/2;
brd.create('arrow', [ [mq,-2.3],[ql,-2.3]] ,{visible: function() {return showDuration2();},strokeColor:'#000'});
brd.create('arrow', [ [mq,-2.3],[qr,-2.3]] ,{visible: function() {return showDuration2();},strokeColor:'#000'});
// tfull
brd.create('arrow', [ [q2+(q3-q2)/2,-3.1],[q3,-3.1]] ,{visible: function() {return showDuration2();},strokeColor:'#000'});
brd.create('arrow', [ [q2+(q3-q2)/2,-3.1],[q2,-3.1]] ,{visible: function() {return showDuration2();},strokeColor:'#000'});
brd.create('line',[[p1,5],[p1,-7.5]] ,{ visible: function() {return funcShow0(p2);},
needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[-3.15,5],[-3.15,-6.5]] ,{visible: function() {return funcShow0(p2);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[p2,5],[p2,-7.5]] ,{visible: function() {return funcShow0(p2);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
// egress time
brd.create('line',[[p4,5],[p4,-7.5]] ,{visible: function() {return funcShow0(p4);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[3.15,5],[3.15,-6.5]] ,{visible: function() {return funcShow0(p4);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[p3,5],[p3,-7.5]] ,{visible: function() {return funcShow0(p4);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
////////////
brd.create('text',[q1-0.1,-8,"t_1"],{ visible: function() { return funcShow15(q2);},needsRegularUpdate:true});
brd.create('text',[q2-0.1,-8,"t_2"],{ visible: function() { return funcShow15(q2);},needsRegularUpdate:true});
brd.create('text',[q3-0.1,-8,"t_3"],{ visible: function() { return funcShow15(q4);},needsRegularUpdate:true});
brd.create('text',[q4-0.1,-8,"t_4"],{ visible: function() { return funcShow15(q4);},needsRegularUpdate:true});
brd.create('arrow', [ [q1+(q2-q1)/2,-7.3],[q2,-7.3]] ,{visible: function() {return funcShow15(q2);},strokeColor:'#000'});
brd.create('arrow', [ [q1+(q2-q1)/2,-7.3],[q1,-7.3]] ,{visible: function() {return funcShow15(q2);},strokeColor:'#000'});
brd.create('text',[q1 -0.5,-7.3,"τ"],{label: {useMathJax: true}, visible: function() { return funcShow15(q2);},needsRegularUpdate:true});
brd.create('line',[[q1,3.5],[q1,-7.5]] ,{ visible: function() {return funcShow15(q2);},
needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[-2.8,3.5],[-2.8,-6.5]] ,{visible: function() {return funcShow15(q2);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[q2,3.5],[q2,-7.5]] ,{visible: function() {return funcShow15(q2);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
// egress time
brd.create('line',[[q4,3.5],[q4,-7.5]] ,{visible: function() {return funcShow15(q4);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[2.8,3.5],[2.8,-6.5]] ,{visible: function() {return funcShow15(q4);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
brd.create('line',[[q3,3.5],[q3,-7.5]] ,{visible: function() {return funcShow15(q4);},needsRegularUpdate:true,strokeWidth:1,straightFirst:false, straightLast:false,strokeColor:'#D3D3D3'});
/////////////////////////////////////
function transit_0(x) {
return -2.0/(p4-p3)*x -8.8461538461538;
}
// line
brd.create('line',[[-7,-3],[ function(){
if (b != 0) return;
if( a < p1) { return a }
else{ return p1}
} ,-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// down
brd.create('line',[[p1,-3],[ function(){
if (b != 0) return;
if( a > p1 && a < p2) { return a }
else { if (a > p2) {return p2 }}
},function(){
if (b != 0) return;
if( a >p1 && a < p2) { return transit_0(a); }
else { if (a >= p2) {return -5 }}
}
]], {straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// line
brd.create('line',[[p2,-5],[ function(){
if (b != 0) return;
if( a >p2 && a < p3) { return a }
else { if (a > p3) {return p3 }}
} ,-5]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// up
brd.create('line',[[p3,-5],[ function(){
if (b != 0) return;
if( a > p3 && a <= p4) { return a; }
else { if (a > p4) {return p4; }}
} , function(){
if (b != 0) return;
if( a > p3 && a < p4) { return transit_0(-a); }
else { if (a >= p4) {return -3; }}
}]], {straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// line
brd.create('line',[[p4,-3],[ function(){
if (b != 0) return;
if( a > p4 && a <= 7) { return a; }
} ,-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
///////////////////////////////////////////////////////////////////////////////////////
// transit b = 1.5
///////////////////////////////////////////////////////////////////////////////////////
function transit_15(x) {
return -2.0/(q4-q3)*x -8.307692307692307;
}
// line
brd.create('line',[[-7,-3],[ function(){
if (b != 1.5) return;
if( a < q1) { return a }
else{ return q1}
} ,
-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// down
brd.create('line',[[q1,-3],[ function(){
if (b != 1.5) return;
if( a >q1 && a < q2) { return a }
else { if (a > q2) {return q2 }}
},function(){
if (b != 1.5) return;
if( a >q1 && a < q2) { return transit_15(a); }
else { if (a >= q2) {return -5 }}
}
]], {straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// line
brd.create('line',[[q2,-5],[ function(){
if (b != 1.5) return;
if( a >q2 && a < q3) { return a }
else { if (a > q3) {return q3 }}
} ,-5]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// up
brd.create('line',[[q3,-5],[ function(){
if (b != 1.5) return;
if( a >q3 && a <= q4) { return a; }
else { if (a > q4) {return q4; }}
} , function(){
if (b != 1.5) return;
if( a > q3 && a < q4) { return transit_15(-a); }
else { if (a >= q4) {return -3; }}
}]], {straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// line
brd.create('line',[[q4,-3],[ function(){
if (b != 1.5) return;
if( a <= 7 && a > q4) { return a; }
} ,-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
///////////////////////////////
// gracing trantic b=3
//
var qq1 = -2.38;
var qq2 = 2.38;
// line
brd.create('line',[[-7,-3],[ function(){
if (b != 3 ) return;
if( a < qq1 ) { return a ;}
else{ return qq1;}
} ,-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
//
function gracing(x) {
return -1.0/2.38*x -4;
}
// down
brd.create('line',[[qq1,-3],[ function(){
if (b != 3) return;
if( a > qq1 && a < 0) { return a; }
else { if (a >= 0) {return 0 }}
} , function(){
if (b != 3) return;
if( a > qq1 && a < 0) { return gracing(a); }
else { if (a >= 0) {return -4 }}
}
]], {straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// up
brd.create('line',[[0,-4],[ function(){
if (b != 3) return;
if( a >0 && a < qq2) { return a; }
else { if (a >= qq2) {return qq2 }}
} , function(){
if (b != 3) return;
if( a > 0 && a < qq2) { return gracing(-a); }
else { if (a >= qq2) {return -3 }}
} ]], {straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
// line
brd.create('line',[[qq2,-3],[ function(){
if (b != 3 ) return;
if( a <= 7 && a >qq2) { return a; }
} ,-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
//
// no transit b = 4.5
//
brd.create('line',[[-7,-3],[ function(){
if (b != 4.5) return;
if( a < 7) { return a; }
else{ return 7;}
} ,-3]],
{straightFirst:false, straightLast:false, strokeWidth:4, needsRegularUpdate:true});
//
// planet line
//
function fpos(x) {
return 5-x;
}
brd.create('line',[[-7, function(){ return fpos(b)}],[ 7,function(){ return fpos(b)}]],
{straightFirst:false, strokeColor: '#808080',straightLast:false, strokeWidth:1,dash:2, needsRegularUpdate:true});
//////////////////////////////////////////////////////
planet = brd.create('point',[function(){ return a}, function() { return 5-b}],
{face:'o',
size:14,
strokeColor: '#000',
fillColor: '#000',
// fillColor:JXG.hsv2rgb(0,0,0),
needsRegularUpdate:true,
name: ''
}
);
$("#betaOut").text(a.toFixed(2));
}
function beschriftungChanged(value) {
if (value.checked ){
bText = true;
}else { bText = false ;}
brd.fullUpdate();
}
function onoffChanged(source) {
checkboxes = document.getElementsByName('foo');
for(var i=0, n=checkboxes.length;i
Idealisierte Lichtkurve. Ein Transit ist nur zu beobachten, wenn der Impaktparameter b nicht zu groß ist,. Einstellungen
Impaktparameter b:
Zeit:
++++ Details |
Der Impaktparameter bestimmt ob ein Transit stattfinden kann. Während b=0 bedeutet, dass der Transit durch die Mitte des Sterns verläuft, verringert sich die Transitzeiten wenn b größer wird. Ein Randtransit (engl. gracing Transit) erzeugt nur noch eine V-Kurve. Noch größeres b erzeugt keinen Transit mehr. Der Impaktparameter ist mit weiteren wichtigen Parametern z.B. die sogenannte Inklination $i$ verknüpft, auf die wie später zurückkommen.
Diese Größe ist experimentell zu bestimmen und liefert wichtige physikalische Parameter, z.B. ergibt sich unmittelbar aus $\Delta F$ das verhältnis der Radien von Stern und Planet.
Die vier Zeiten $t_1,t_2,t_3,t_4$ beschreiben das Eintauchen (engl. ingress) und Auftauchen (engl. egress) in den Transit
$\tau_{ing}=t_2-t1$
$\tau_{egr}=t_4-t3$
$\tau = \tau_{ing} = \tau_{egr}$ Die Annahme, dass die Ingress-/Egresszeiten gleich lang sind, gilt für exzentrische Bahnen im allgemeinen nicht, der hierdurch entstehende Fehler ist aber in der Regel sehr klein.
$T_{tot}=t_4-t_1$ totale Transitdauer
$T_{full}=t_3-t_2$ volle Transitdauer
$T=T_{tot}-\tau$ Zeispanne zwischen den Kontaktlienien (halbe Ingrees/Egress Positon)r