PlanetaryAtmospheres: calcvars.m

File calcvars.m, 2.7 KB (added by Jonathan, 9 years ago)
Line 
1format compact
2clear
3
4% Specify constants
5
6MJ=1.898e30;
7MS=1.99e33;
8G=6.6731e-8;
9au=1.496e13;
10RS=6.955e10;
11RJ=7.1492e9;
12yr=31556926;
13amu=1.66053892e-24;
14mH=1.00794*amu;
15Boltzmann=1.3806488e-16;
16
17% Specify euler similarity scales
18Mscale=MS;
19lscale=.1*au; %/(20^(2/3));
20rhoscale=1e-8;
21
22% Derived scales for converting dimensionless velocities and magnetic fields
23velscale=sqrt(G*Mscale/lscale);
24Bscale=sqrt(4*pi*rhoscale*velscale^2);
25
26% Dimensionless parameters
27xi_H=.2;
28xi_bow=.25;
29xi_p=.005;
30xi_Mp=.01;
31xi_s=.2;
32chi_bow=1;
33sigma_p=.1;
34sigma_s=.1;
35
36% Solving for intermediate dimensionless parameters
37q=xi_H^3/3;
38lambda_p=2*xi_Mp/xi_p;
39
40rhs=q*chi_bow*xi_s/xi_p/lambda_p*(1+sigma_p)/(1+sigma_s)*(1+mypsi(xi_bow/xi_p, lambda_p));
41lhs=@(x) (1+mypsi((1-xi_bow)/xi_s,x))/x - rhs;
42lambda_s=double(fzero(lhs ,[1e-5,18]));
43xi_Ms=lambda_s*xi_s/2;
44chi=chi_bow*phi((1-xi_bow)/xi_s,lambda_s)/phi(xi_bow/xi_p, lambda_p);
45
46cs2_s=1/xi_s/lambda_s;
47cs2_p=q/xi_p/lambda_p;
48
49%solve for dimensionless pressure at bow shock to check that they are equal
50psi_s=mypsi((1-xi_bow)/xi_s,lambda_s);
51psi_p=mypsi(xi_bow/xi_p,lambda_p);
52rho_s=phi((1-xi_bow)/xi_s,lambda_s);
53rho_p=chi*phi((xi_bow)/xi_p,lambda_p);
54Bram_p=rho_p*cs2_p*(1+psi_p)*sigma_p;
55Bram_s=rho_s*cs2_s*(1+psi_s)*sigma_s;
56ram_p=rho_p*cs2_p*(1+psi_p)+Bram_p;
57ram_s=rho_s*cs2_s*(1+psi_s)+Bram_s;
58fprintf('Ratio of pressures at bow shock ~ should = 1: %f \n', ram_p/ram_s)
59
60% Print out dimensionless params in table format for wiki
61fprintf('|| $\\xi_p$ || %f ||\n', xi_p)
62fprintf('|| $\\xi_s$ || %f ||\n', xi_s)
63fprintf('|| $\\xi_H$ || %f ||\n', xi_H)
64fprintf('|| $\\xi_{bow}$ || %f ||\n', xi_bow)
65fprintf('|| $\\xi_{Mp}$ || %f ||\n', xi_Mp)
66fprintf('|| $\\chi_{bow}$ || %f ||\n', chi_bow)
67fprintf('|| $\\sigma_p$ || %f ||\n', sigma_p)
68fprintf('|| $\\sigma_s$ || %f ||\n', sigma_s)
69
70% Print out physical params in table format for wiki
71fprintf('|| Orbital separation || %f AU ||\n', lscale/au)
72fprintf('|| Mass of Star || %f solar masses || \n',Mscale*(1-q)/MS)
73fprintf('|| Mass of Planet || %f Jupiter masses || \n', Mscale*q/MJ)
74fprintf('|| Radius of Star || %f solar radii || \n', lscale*xi_s/RS)
75fprintf('|| Radius of Planet || %f Jupiter radii || \n', lscale*xi_p/RJ)
76fprintf('|| Temperature of Star || %f Kelvin || \n', G*Mscale*(1-q)/xi_s/lscale/lambda_s*mH/Boltzmann)
77fprintf('|| Temperature of Planet || %f Kelvin || \n', G*Mscale*(q)/xi_p/lscale/lambda_p*mH/Boltzmann)
78fprintf('|| Density of Star || %e || \n', rhoscale/chi)
79fprintf('|| Density of Planet || %e || \n', rhoscale)
80fprintf('|| Orbital period || %f years || \n', 2*pi/sqrt(G*Mscale/lscale^3)/yr)
81fprintf('|| Magnetic field of Star || %f Gauss || \n',sqrt(Bram_s*(1-xi_bow)^6/xi_s^6)/Bscale)
82fprintf('|| Magnetic field of Planet || %f Gauss || \n',sqrt(Bram_p*(xi_bow)^6/xi_p^6)/Bscale)