- TI nspire
[TI-Nspire] 기본 기능을 이용한 라플라스 변환
한국어로 번역한 문서 https://allcalc.org/50260 를 TI-Nspire 용으로 추가 가공한 문서입니다.

소개
TI 계산기에는 라플라스 변환과 역변환을 계산하기 위한 미리 프로그래밍된 함수가 없습니다.
하지만 여러 웹사이트에서 이를 제공합니다 :
역자 주) TI-nspire 용으로 컨버팅 해당 문서는 https://allcalc.org/5003 입니다.
여기서 우리가 제안하는 것은, "TI의 기본 함수만을 사용하여도 충분히 잘 해낼 수 있다는 것을 보여주는 것"입니다.
라플라스 변환
먼저 라플라스 변환은 매개변수 s의 특정 값에 대해 수렴하는 이상적분임을 주목해야 합니다:
$ f\left( t\right) \leftrightarrow F\left( s\right) \equiv \int _{0}^{\infty }f\left( t\right) \cdot e^{-s\cdot t}dt $

TI는 s에 대한 도메인이 지정되지 않으면 정의할 수 없습니다. (그림 1).∫(e^(−s*t),t,0,∞)|s>0
라플라스 변환을 함수로 정의할 수 있습니다.

하지만 TI-89와 달리 제약연산자(|) 를 한꺼번에 넣어서 정의하면 조각함수(piecewise function) 로 바뀌면서 오류가 발생합니다.
따라서 TI-nspire에서는 제약연산자 부분을 함수정의와 분리하고, 다시 함수와 결합해 사용해야 하는 불편함이 있습니다.
TI-89 에서는 위의 la(f,t,s) 함수의 수렴이 느려서 Lim 함수를 결합한 lala(f,t,s) 함수라는 대안을 찾았지만,
TI-nspire 에서는 속도가 충분히 빨라졌기 때문에 속도 때문에 대안을 찾을 필요는 없고,
다만 TI-89 에서 찾은 대안을 Nspire에서 사용하면 제약 연산자를 재결합해서 사용하지 않아도 되기 때문에
TI-nspire 에서도 유용한 대안이 됩니다.
* 여기서는 lala(f,t,s) 대신 lapl(f,t,s) 라는 함수명을 사용하겠습니다.

ㄴ lapl(f,t,s) := −lim(∫(f*e^(−s*t),t),t,0,1)
무한대에서의 값이 0이 됨을 이용하여 부적절한 적분(undef)을 피할 수 있습니다.
실제로, 라플라스 변환을 계산하는 함수들은 지수 차수입니다. 이는 s를 충분히 크게 선택하면
$ \lim _{t\rightarrow \infty }f\left( t\right) \cdot e^{-s\cdot t}=0 $ 을 얻게 된다는 것을 의미합니다.
부정적분 을 계산한 후에는 (f가 모든 곳에서 연속이고 TI가 적분 상수를 추가하지 않는다고 가정하면)
$ \int f\left( t\right) \cdot e^{-st}dt $ 라고 하면 됩니다.
극한은 t = 0에서의 평가가 0의 오른쪽에서 계산되어야 한다는 사실에서 비롯됩니다.
이제 훨씬 더 심각한 문제인 역변환을 다루겠습니다.
역 라플라스 변환
$ F\left( s\right) =\dfrac{1}{\left( s-2\right) ^{2}\cdot \left( s^{2}+6s+13\right) } $
의 역변환 계산을 고려해 봅시다.
여기서는 제곱 완성을 수행해야 합니다: 부분 분수 전개 전에 이를 수행하는 것이 좋습니다(그림 3).

변환 표에서 다음과 같은 대응관계를 알아야 합니다:
$ \dfrac{s+a}{\left( s+a\right) ^{2}+b^{2}}\leftrightarrow e^{-at}\cos bt,\dfrac{b}{\left( s+a\right) ^{2}+b^{2}}\leftrightarrow e^{-at}\sin bt $
$ \dfrac{1}{s+a}\leftrightarrow e^{-at}\text{ and }\dfrac{1}{\left( s+a\right) ^{2}}\leftrightarrow t\cdot e^{-at} $
따라서 답은
$ f\left( t\right) =\dfrac{10e^{-3t}\cos 2t}{841}+\dfrac{21e^{-3t}\sin 2t}{1682}-\dfrac{10e^{2t}}{841} +\dfrac{t \cdot e^{2t}}{29} $
입니다.
컨볼루션으로도 진행할 수 있습니다:
컨볼루션 속성에 따르면 F(s) = X(s) H(s)인 경우,
$ \text{with } F\left( s\right) \leftrightarrow f\left( t\right), X\left( s\right) \leftrightarrow x\left( t\right) \text{ and } H\left( s\right) \leftrightarrow h\left( t\right), $
$ \text{then } f\left( t\right) = x\left( t\right) \ast h\left( t\right) \equiv \int _{0}^{t}x\left( \tau \right) h\left( t-\tau \right) d\tau $
입니다.
여기서 우리는 다음 식을 얻습니다. :
$ F\left( s\right) =\dfrac{1}{\left( s-2\right) ^{2}\cdot \left( s^{2}+6s+13\right) } $
$ =\left( \dfrac{1}{\left( s-2\right) ^{2}}\right) \left( \dfrac{1}{\left( s+3\right) ^{2}+4}\right) \leftrightarrow t\cdot e^{2t}\ast \dfrac{1}{2}e^{-3t}\sin 2t $
그리고 TI는 컨볼루션 적분을 처리합니다(그림 4 a 참조).

그림 4 b와 4 c는 결과의 단순화를 보여줍니다.
복소수를 사용하여 부분 분수로 전개할 수도 있습니다.
TI에서 선언되지 않은 변수는 실수로 간주되지만, 이 변수에 밑줄 "_" 기호를 추가하면 복소수로 간주됩니다.
실제로 s가 실수인지 복소수인지에 따라 TI가 $ \dfrac{1}{s+i} $ 를 어떻게 단순화하는지 보세요(그림 5).

이 단계에서 대응관계 $ \dfrac{1}{s+a} \leftrightarrow e^{at} [ Re\left( s\right) > -a] $ 와
오일러 공식 $e^{it} =\cos(t) + i \sin(t) , \left( t\in R\right) $ 을 사용하면 복소 부분 분수가 수행된 후 역 라플라스 변환을 계산할 수 있습니다.
여기서 g(s)라고 부를 $ F\left( s\right) =\dfrac{1}{\left( s-2\right) ^{2}\cdot \left( s^{2}+6s+13\right) } $ 의 예를 다시 살펴봅시다.
부분 분수로 전개하기 전에 복소수로 인수분해하는 것이 중요합니다(그림 6 a);

이 작업은 s가 복소수라는 제약 하에 수행됩니다(그림 6 b 및 6 c).
그런 다음 복소 근이 켤레 쌍으로 나타난다는 사실을 이용하여
$ ze^{\left( 3+2i\right) t}+\overline{z}e^{\left( 3-2i\right) t}-\dfrac{10}{841}e^{2t}+\dfrac{1}{29}te^{2t}$ 라고 쓰면 됩니다.
여기서 z는 숫자 $ z = \dfrac{5}{841} + \dfrac{21}{3364}i $ 로 정의되었습니다.
TI는 "conj"를 사용하여 복소수를 켤레복소수로 만듭니다(그림 7).

미분방정식 시스템과 라플라스 변환
TI는 라플라스 변환을 사용하여 미분방정식 시스템을 해결하는 데 매우 유용할 수 있습니다.
계산기가 길고 지루한 계산을 처리하므로 사용자는 해결할 방정식만 지정하면 됩니다.
다음 시스템을 고려해 봅시다:
$ \begin{cases}\dfrac{dx}{dt}-3x-6y=27t^{2},,x\left( 0\right) =5\\ \dfrac{dx}{dt}+\dfrac{dy}{dt}-3y=5e^{t},y\left( 0\right) =-1\end{cases} $
s 도메인으로 변환하면 다음을 얻습니다:
$ \begin{cases}sX-5-3X-6Y=\dfrac{54}{s^{3}}\\ sX-5+sY+1-3Y=\dfrac{5}{s-1}\end{cases} $
여기서 X와 Y는 각각 x와 y의 라플라스 변환을 나타냅니다. 마지막으로, 우리 시스템을 행렬 형태로 다시 쓰면 다음을 해결해야 합니다:
$ \begin{bmatrix} s-3 & -6 \\ s & s-3 \end{bmatrix}\begin{bmatrix} X \\ Y \end{bmatrix}=\begin{bmatrix} \dfrac{54}{s^{3}}+5 \\ \dfrac{5}{s-1}+4 \end{bmatrix} $
TI가 개입하고 우리는 행렬을 정의합니다(그림 8).

계수 행렬을 m이라고 부르고 오른쪽 행렬을 b라고 부르기로 합니다.
좋은 옛날 크라머 방법은 이제 쓸모없어졌습니다!
실제로 TI의 "simult" 함수를 사용하면 정사각형 선형 시스템을 해결할 수 있습니다(그림 9).
지루한 행렬식의 몫을 계산할 필요가 없습니다(또는 를 입력해도 결과는 같았을 것입니다).
이제 부분 분수로 전개하기만 하면 됩니다.
"expand" 명령은 리스트와 행렬에서도 작동합니다. "expand"의 구문은 expand(exp [, var])입니다. (그림 10).

라플라스 변환 표를 사용하여 다음과 같이 쓸 수 있습니다:
$ x\left( t\right) =3e^{t}+2+6t-9t^{2} $
$ y\left( t\right) =-e^{t}-6t $
세상의모든계산기 님의 최근 댓글
- claude AI는 l-c*r^2 을 1-c*r^2 으로 잘못 읽고 표시하고 있습니다. - TI-nspire CAS 계산기에 l-c*r^2 ≥0 을 조건에 추가해 계산해 보아도 결과는 바뀌지 않습니다. 2026 07.20 ⚠️ 경고가 바로 두 번째 방법이 "성공"한 이유와 정확히 연결되어 있습니다. 경고의 의미 "Domain of the result might be larger than the domain of the input"는 CAS가 절댓값(모듈러스)을 계산하는 과정에서 원래 식보다 정의역이 더 넓은 형태로 단순화했다는 뜻입니다. 구체적으로 이 계산은 내부적으로 대략 이런 과정을 거칩니다. $$\left|\frac{er}{e\cdot r}\right| = \sqrt{\left(\frac{er}{e\cdot r}\right)\cdot\overline{\left(\frac{er}{e\cdot r}\right)}}$$ 즉 원래 식(복소수)과 그 켤레복소수를 곱해서 실수부·허수부 제곱합을 만들고, 거기에 다시 제곱근을 씌우는 과정입니다. 이 과정에서 √(x²) → x 또는 √a·√b → √(ab) 같은 규칙들이 쓰이는데, 이런 규칙들은 x가 실수이고 0 이상일 때만 엄밀하게 성립합니다. CAS는 이 조건들을 일일이 다 추적하지 않고 넘어가면서, 원래는 (e≠0, r+l·ω·i ≠ 0 등) 복소수 특유의 좁은 정의역을 가진 식을, r, l, ω가 어떤 실수여도(부호 무관하게) 정의되는 1/√(r²+l²·ω²)라는 더 넓은 정의역의 식으로 바꿔버린 것입니다. CAS는 이 손실을 감지하고 경고를 띄운 것입니다. 이게 왜 조건 대입 성공과 연결되는가 정리하면, 이 경고는 사실상 이런 뜻입니다. "나는 이 결과를 만들면서 원래 식이 가지고 있던 정의역 제약 정보(부호 조건, i 관련 조건 등)를 이미 버렸다." 바로 이 "정의역 정보를 버린" 상태가 이후 con_1 대입을 매끄럽게 만드는 원인입니다. 첫 번째 시도에서는 i가 살아있는 원래 식에 조건을 대입했기 때문에, CAS가 √(1-c·r²)이 실수인지(정의역 조건: 1-c·r² ≥ 0) 계속 추적하려고 했고, 그 정보가 con에 없어서 더 이상 정리를 못 하고 멈췄습니다. 두 번째 시도에서는 절댓값 계산 단계에서 이미 그런 세밀한 정의역 추적을 CAS 스스로 포기(단순화)했기 때문에, 이후 ω에 무리식을 대입해도 "이게 실수가 맞나?" 하는 검증 절차 없이 그냥 대수적으로 치환·정리해 버립니다. 그래서 깔끔하게 √c/√l이 나온 겁니다. 한 줄 요약 절댓값 계산 시 뜬 "정의역이 넓어졌을 수 있다"는 경고는, CAS가 그 순간에 원래 식의 엄밀한 조건(정의역)을 놓쳤다는 신호이고, 바로 그 "조건을 놓친 상태"이기 때문에 뒤에 이어지는 조건식 대입이 막힘없이 진행된 것입니다. 다만 그 대가로, 결과인 1/√(r²+l²·ω²)이나 최종 √c/√l이 원래 회로 조건(i≠0이 되는 경계, 분모가 0이 되는 경우 등)에서는 엄밀히 성립하지 않을 수 있다는 점은 감안하셔야 합니다. 실제 물리적으로는 r, l, c > 0이고 결과도 물리적으로 타당한 형태라 문제없어 보이지만, 수학적 엄밀성 측면에서는 "정의역이 넓어진 근사적 결과"라는 꼬리표가 붙어있는 셈입니다. 2026 07.20 Claude AI 답변 TI-Nspire CAS의 | (such that / 조건대입) 연산자는 대입 시점의 수식 형태를 그대로 두고 기호만 치환하는 연산입니다. 대입 후에 처음부터 다시 "실수부/허수부 분리, 유리화" 같은 재간소화를 자동으로 수행하지 않습니다. 이 차이가 지금 보신 결과 차이의 핵심입니다. 첫 번째 경우 (|er/(e·r)| | con_1 and con → 실패) 이 시점의 식은 아직 r + l·ω·i 형태의 복소수 그대로입니다 (i가 살아있음). 여기에 con_1: ω = √(1-c·r²)/(√c·l)을 대입하면, 분모 안에 i · √(1-c·r²) 라는 항이 새로 생깁니다. 문제는 CAS가 √(1-c·r²)이 실수인지(즉 1-c·r² ≥ 0인지) 판단할 근거가 없다는 겁니다. 저장해 두신 con 조건은 c>0, l>0, r>0뿐이고, 1-c·r²≥0이라는 조건은 포함되어 있지 않습니다. 그래서 CAS는 i와 이 무리식을 더 정리(유리화, 실수부·허수부 재결합)하지 못하고 있는 그대로 남겨둡니다. 결과에 여전히 i가 보이는 이유입니다. 두 번째 경우 (결과값 1/√(r²+l²·ω²)에 대입 → 성공) |er/(e·r)| (절댓값/모듈러스) 연산은 그 자체로 이미 "복소수 → 실수" 변환을 완료한 결과입니다. 즉 1/√(r²+l²·ω²)에는 더 이상 i가 없고, 순수하게 r, l, ω로만 이루어진 실수식입니다. 이 식에 ω = con_1을 대입하는 것은 그냥 실수 대수식에 실수 대입하는 것이므로, i와 무리식이 뒤엉키는 문제 자체가 발생하지 않습니다. 그래서 바로 깔끔하게 √c/√l로 정리됩니다. 정리하면 절댓값(모듈러스) 계산은 "이 값들이 실수다"라는 가정을 이미 내부적으로 써서 i를 제거하는 연산입니다. 그 연산을 조건 대입 이전에 해두면, 이후 대입은 단순 실수 대입이라 문제없이 정리됩니다. 반대로 i가 남아있는 식에 무리식을 포함한 조건을 먼저 대입하면, 그 무리식의 실수성/부호에 대한 가정이 없어서 CAS가 i를 소거하는 재간소화를 못 하고 멈춰버립니다. 실용적 팁: 복소식에 조건을 대입해야 할 때는 가능하면 절댓값·실수화(유리화) 등을 먼저 끝내서 i를 없앤 뒤 조건을 대입하거나, 대입 후 결과에 다시 simplify/expand/combine 같은 명령을 한 번 더 걸어주면 (필요한 도메인 조건과 함께) 정리가 되는 경우가 많습니다. 2026 07.19 저도 어림잡아 추측할 뿐이지 정확한 이유를 알지는 못합니다. 질문하신 사진을 그대로 (Gemini 3.5 Flash / ChatGPT / Claude Sonnet 5) AI에 넣어 보니 claude AI 가 제일 합리적인 답변을 주어서 이를 붙여 넣습니다. 2026 07.19 아 그렇네요. 감사합니다. ^^ 2026 04.28