大気差(R)=視高度-真高度、Calculation of Atmospheric Refraction.

Equation R=R_{0}\tan{Z}+R_{1}\tan^{3}{Z} Z=90-\textup{Apparent Altitude} R_{0}=(n_{0}-1)(1-H),R_{1}=1/2(n_{0}-1)^{2}-(n_{0}-1)H,H\approx 0.00130000228Scilab 2280122802
 -->clear;
-->function Result=func()
-->    H=0.0013;
-->    Z=90-AA;
-->    n=1+n0/10000;
-->    R0=(n-1)*(1-H);
-->    R1=1/2*(n-1)^2-(n-1)*H;
-->    R=R0*tand(Z)+R1*(tand(Z))^3;
-->    R=R*180/%pi*3600;
-->    Result=R;
-->endfunction
-->for www=1:2;
-->    funcprot(0);
-->    NNN=100;
-->    equation='Result=func()';
-->    xset("window",www);clf();xgrid();
-->    /////////////////////////////////////    
-->    graphtitle='Atmospheric Refraction';
-->    if www==1 | www==2 then
-->        AA=linspace(25,80,NNN);
-->        n0=linspace(2,3,NNN);
-->        xtitle(graphtitle,'Apparent Altitude(°)','n0:n=1+n0/10000','R(″)',boxed=1);
-->        fnt='[Result]=func1(AA,n0)';
-->        deff(fnt,equation);
-->        if www==1 then 
-->            R=245;G=255;B=250;color(R,G,B);idcolor=color(R,G,B);
-->            fplot3d(AA,n0,func1,flag=[idcolor , 2 , 4]);
-->            func1(25,2)    
-->            func1(80,3)    
-->        elseif www==2 then
-->            nz=30;
-->            contour(AA,n0,func1,nz,flag=[2,2,4]);
-->            axe=gca();
-->            for iii=1:nz;
-->                cnt=axe.children(iii).children;
-->                eee=length(cnt);
-->                if eee==2 then
-->                    cnt(2).font_size=4;
-->                end
-->            end
-->        end
-->    else
-->        //////
-->    end 
-->    currentaxes=gca();
-->    currentaxes.font_size=6;
-->    currentaxes.title.font_size=6;
-->    currentaxes.x_label.font_size=6;
-->    currentaxes.y_label.font_size=6;
-->    currentaxes.z_label.font_size=6;
-->    currentaxes.tight_limits="on";
-->    currentaxes.cube_scaling="on";
-->    currentaxes.auto_clear="on";
-->    currentaxes.auto_scale="on";
-->end
 ans  =
 
    87.86403  
 ans  =
 
    10.896441  
SciNotes
clear;
function Result=func()
    H=0.0013;
    Z=90-AA;
    n=1+n0/10000;
    R0=(n-1)*(1-H);
    R1=1/2*(n-1)^2-(n-1)*H;
    R=R0*tand(Z)+R1*(tand(Z))^3;
    R=R*180/%pi*3600;
    Result=R;
endfunction
for www=1:2;
    funcprot(0);
    NNN=100;
    equation='Result=func()';
    xset("window",www);clf();xgrid();
    /////////////////////////////////////    
    graphtitle='Atmospheric Refraction';
    if www==1 | www==2 then
        AA=linspace(25,80,NNN);
        n0=linspace(2,3,NNN);
        xtitle(graphtitle,'Apparent Altitude(°)','n0:n=1+n0/10000','R(″)',boxed=1);
        fnt='[Result]=func1(AA,n0)';
        deff(fnt,equation);
        if www==1 then 
            R=245;G=255;B=250;color(R,G,B);idcolor=color(R,G,B);
            fplot3d(AA,n0,func1,flag=[idcolor , 2 , 4]);
            func1(25,2)    
            func1(80,3)    
        elseif www==2 then
            nz=30;
            contour(AA,n0,func1,nz,flag=[2,2,4]);
            axe=gca();
            for iii=1:nz;
                cnt=axe.children(iii).children;
                eee=length(cnt);
                if eee==2 then
                    cnt(2).font_size=4;
                end
            end
        end
    else
        //////
    end 
    currentaxes=gca();
    currentaxes.font_size=6;
    currentaxes.title.font_size=6;
    currentaxes.x_label.font_size=6;
    currentaxes.y_label.font_size=6;
    currentaxes.z_label.font_size=6;
    currentaxes.tight_limits="on";
    currentaxes.cube_scaling="on";
    currentaxes.auto_clear="on";
    currentaxes.auto_scale="on";
end
参考文献 国立天文台(2008).『理科年表 机上版第81冊』.丸善アプリケーション URL Scilab http://www.scilab.org/