スプレッドシートのSERIESSUM関数の使い方|べき級数の和

スポンサーリンク

「多項式やべき級数の計算をスプレッドシートでやりたいけど、POWER関数を何個も並べるのは面倒だな……」。そんな場面に出くわしたことはありませんか?

項数が増えるほど数式が長くなり、どこかの係数を間違えてもなかなか気づけません。もっとスマートにべき級数を計算できたら便利ですよね。

そんなときに使うのがスプレッドシートのSERIESSUM関数です。この記事では4つの引数の意味から多項式の計算、テイラー展開の近似計算まで解説します。

SERIESSUM関数とは?スプレッドシートでべき級数の和を求める関数

SERIESSUM関数(読み方: シリーズサム)は、べき級数の和を返す関数です。「SERIESSUM」は「Series(級数)+ Sum(合計)」の略です。

べき級数とは、ある数 x のべき乗に係数を掛けたものを足し合わせた式のことです。数学で書くと次のような形になります。

a1 × x^n + a2 × x^(n+m) + a3 × x^(n+2m) + ...

ちょっとむずかしく見えますが、やっていることはシンプルです。「x を何乗かして、係数を掛けて、全部足す」だけですよ。

SERIESSUM関数にできることをまとめると、次のとおりです。

  • べき級数の和をワンステップで計算する
  • 多項式(ax^2 + bx + c など)の値を求める
  • テイラー展開で三角関数や指数関数の近似値を計算する
  • POWER関数を何個も並べる手間を省く

NOTE

SERIESSUM関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、動作は同じです。

SERIESSUM関数の書き方(構文と引数)

基本構文

=SERIESSUM(x, n, m, 係数)

4つの引数すべてが必須です。

引数の説明

引数必須/任意説明
x必須べき級数の底(入力値)
n必須最初の項のべき指数
m必須べき指数の増分(項が進むごとに指数がm ずつ増える)
係数必須各項の係数を並べた配列またはセル範囲

べき級数と引数の対応関係

4つの引数がべき級数のどこに対応するか、表で整理するとわかりやすいです。

項番数式べき指数係数
第1項a1 × x^nna1(係数配列の1番目)
第2項a2 × x^(n+m)n + ma2(係数配列の2番目)
第3項a3 × x^(n+2m)n + 2ma3(係数配列の3番目)

TIP

係数の配列は低次の項から順番に並べるのがポイントです。たとえば 3x^2 + 2x + 5 なら、定数項の 5 から並べて {5, 2, 3} と指定しますよ。

SERIESSUM関数の基本的な使い方

シンプルな多項式を計算する

多項式 3x^2 + 2x + 5 に x = 2 を代入した値を求めてみましょう。

=SERIESSUM(2, 0, 1, {5, 2, 3})

引数の意味を分解すると、次のとおりです。

引数意味
x2xに2を代入
n0最初の項は x^0(= 定数項)
m1べき指数は1ずつ増える(0, 1, 2, …)
係数{5, 2, 3}x^0の係数5、x^1の係数2、x^2の係数3

展開すると 5 × 2^0 + 2 × 2^1 + 3 × 2^2 = 5 + 4 + 12 = 21 です。

手計算でも 3(4) + 2(2) + 5 = 12 + 4 + 5 = 21 なので、結果が一致しますね。

係数をセル範囲で指定する

係数が多い場合は、セルに入力しておくと管理がラクです。

A1からA4に係数が入っているとします。

 A列(係数)
1行目1
2行目-3
3行目2
4行目5
=SERIESSUM(3, 0, 1, A1:A4)

これは 1 × 3^0 + (-3) × 3^1 + 2 × 3^2 + 5 × 3^3 = 1 – 9 + 18 + 135 = 145 を返します。

係数をセルで管理すると、値を変えるだけで結果が自動更新されるので便利ですよ。

SERIESSUM関数の活用例

テイラー展開でsin(x)を近似計算する

テイラー展開を使えば、三角関数の値をSERIESSUM関数で近似計算できます。sin(x) のテイラー展開は次の式です。

sin(x) ≈ x - x^3/3! + x^5/5! - x^7/7!

これをSERIESSUM関数で表すと、次のようになります。

=SERIESSUM(PI()/6, 1, 2, {1, -1/6, 1/120, -1/5040})
引数意味
xPI()/630度(ラジアン)
n1最初の項は x^1
m2べき指数は2ずつ増える(1, 3, 5, 7)
係数{1, -1/6, 1/120, -1/5040}各項の係数(1/1!, -1/3!, 1/5!, -1/7!)

結果は約 0.5 です。sin(30度) = 0.5 なので、4項でほぼ正確な近似値が得られます。

TIP

項数を増やすほど精度が上がります。SIN関数の結果と比べて誤差を確認してみてください。

e^xを近似計算する

指数関数 e^x のテイラー展開も同じ要領です。

e^x ≈ 1 + x + x^2/2! + x^3/3! + x^4/4!
=SERIESSUM(1, 0, 1, {1, 1, 1/2, 1/6, 1/24})
引数意味
x1e^1を計算
n0最初の項は x^0
m1べき指数は1ずつ増える
係数{1, 1, 1/2, 1/6, 1/24}1/0!, 1/1!, 1/2!, 1/3!, 1/4!

結果は約 2.708 です。EXP関数=EXP(1) を計算すると約 2.718 なので、5項でもかなり近い値が出ます。項数を増やせばさらに精度が上がりますよ。

POWER関数・SUMSQ関数との違い

べき乗や二乗の合計を扱う関数は他にもあります。使い分けを整理しておきましょう。

関数用途特徴
SERIESSUMべき級数の和係数・初期指数・増分を指定して一括計算
POWER1つのべき乗計算x^n を1つだけ返す。複数項の合計は手動
SUMSQ平方和各値の2乗の合計。べき指数は2固定
SUMPRODUCT配列の積の合計対応する要素の積を合計する。べき乗なし

SERIESSUM関数は「べき乗 + 係数 + 合計」を1つの関数でまとめて処理できるのが強みです。POWER関数を何個も並べて足し算する手間がなくなりますよ。

よくあるエラーと対処法

#N/Aエラー

引数が不足していると発生します。SERIESSUM関数は4つの引数すべてが必須です。

=SERIESSUM(2, 0, 1)       → #N/Aエラー(係数が未指定)
=SERIESSUM(2, 0, 1, {3})  → 正常(結果: 3)

4つの引数がそろっているか確認してみてください。

#VALUE!エラー

引数に数値以外の値を指定すると発生します。

=SERIESSUM("abc", 0, 1, {1, 2})  → #VALUE!エラー
=SERIESSUM(2, 0, 1, {1, 2})       → 正常(結果: 5)

x, n, m には数値を、係数には数値の配列を指定しましょう。

結果が想定と違う

係数の並び順を間違えているケースが多いです。SERIESSUM関数の係数は低次の項から並べます。

たとえば 3x^2 + 2x + 5 の場合、次のようになります。

× 間違い: =SERIESSUM(2, 0, 1, {3, 2, 5})  → 3×1 + 2×2 + 5×4 = 27
○ 正しい: =SERIESSUM(2, 0, 1, {5, 2, 3})  → 5×1 + 2×2 + 3×4 = 21

係数の順番を確認してみてください。

まとめ

SERIESSUM関数は、べき級数の和を1つの関数で計算できる関数です。

この記事のポイント

  • 構文は =SERIESSUM(x, n, m, 係数) で、4つの引数すべてが必須
  • べき級数とは「x のべき乗に係数を掛けて足し合わせた式」のこと
  • 係数は低次の項から順に並べる(定数項 → 1次 → 2次 → …)
  • 多項式の値をワンステップで計算できる
  • テイラー展開を使えばsin(x)やe^xの近似計算もできる
  • POWER関数を何個も並べる代わりに使うと数式がスッキリする

関連する数学関数

SERIESSUM関数の使い方がわかったら、以下の関数もあわせてチェックしてみてください。数学系の計算の幅が広がりますよ。

タイトルとURLをコピーしました