[H8-ML(2356)] Re: アークサインの求め方
From: AOKI Shigeru <saoki@xxxxxxxxxxxx>
Date: 2002年11月18日(月)10時41分41秒
青木@東京大学です。

        Sun, 17 Nov 2002 09:22:48 +0900 の
        [H8-ML(2353)] アークサインの求め方 について。
        

>AKI−H8/3048用のCコンパイラには、asin(x)(アークサイン)が
>無いので
>作りました。数学の本にあった級数展開式です。
マクローリン展開は原点から離れると精度落ちますからね。

>他の関数(sin,cos、exp、log、powなど)は、精度良くできたので残
>念でありません。
どのくらいの精度が必要なのでしょう?
あまり「コンピュータ的」精度ではないですが、気賀康夫著「電卓に強くなる」
(ブルーバックス,1977)を参考にこんなコードを書いてみました。
参考まで。

#define M_PI 3.14159265358979
double sqrt(double x);
double sin(double x);
double cos(double x);


double acos(double x){
    return sqrt( 6.740327 - sqrt( 18.258 + 27.174 * x ));
}

double asin(double x){
    return (M_PI/2.0) - acos(x);
}

int main(){
    double x;
    int i;
    
    for(i=0;i<=10;i++){
        x = i * 0.1;
        printf("x:%lf ", x);
        printf("acos(x):%lf (%lf) " , acos(x),x-cos(acos(x)) );
        printf("asin(x):%lf (%lf)\n", asin(x),x-sin(asin(x)) );
    }
}


------------------------------------------------------------
東京大学大学院工学系研究科 / (有)ナセ工企  青木 茂
            mailto:saoki@xxxxxxxxxxxx
            mailto:aoki@xxxxxxxxxxxxxxxxxxxxxx
            mailto:shig@xxxxxxxxxxxxxxx
スレッド概略
[2353(R)](起点)
 └[表示中]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]