# BifurcationKit: Duffing Equation: Time-Harmonic: Single Harmonic

**URL:** <https://discourse.julialang.org/t/bifurcationkit-duffing-equation-time-harmonic-single-harmonic/123937>\
**Category:** Modelling & Simulations\
**Created:** [December 17, 2024, 9:13pm UTC](https://discourse.julialang.org/t/bifurcationkit-duffing-equation-time-harmonic-single-harmonic/123937 "2024-12-17T21:13:20Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Domenico\_Lahaye](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/domenico_lahaye/32/203728_2.png) [@Domenico\_Lahaye](https://discourse.julialang.org/u/Domenico_Lahaye)\
**Post date:** [December 17, 2024, 9:13pm UTC](https://discourse.julialang.org/t/bifurcationkit-duffing-equation-time-harmonic-single-harmonic/123937/1 "2024-12-17T21:13:20Z")

</div>

Amazing how easy this was!

Apologies for the rusty documentation (in progress).

```julia
"""
input: x: x[1] and x[2] amplitude of cos and sin mode of single harmonic anzats 
input: p: angular frequency of the driving excitation 
ouput: mismatchvec: residual vector of equations determining x[1] and x[2] 
"""
function duffing_hb_singlemode(x,p)
    A, B = x 
    omd = p 
    m=1; freq = .5; om0=2*π*freq; ga=0.1; stiffnlin=10.; F0 = 1.; 
    mismathvec = zeros(eltype(x),2)
    mismathvec[1] = m*(om0^2-omd^2)*A + ga*omd*B + stiffnlin*.75*(A^3 + A*B^2) 
    mismathvec[2] = -ga*omd*A + m*(om0^2-omd^2)*B + stiffnlin*.75*(B^3 + A^2*B) - F0 
    return mismathvec 
end 

prob = BifurcationProblem(duffing_hb_singlemode, [0.,0.], 0., 1; record_from_solution = (x,p; k...) -> norm(x))

br = continuation(prob, PALC(), ContinuationPar(p_min = 0., p_max = 10.))

plot(br, xlabel="driving frequency", ylabel="single mode amplidude")

```

 ![Screenshot 2024-12-17 at 22.11.30](https://global.discourse-cdn.com/julialang/original/3X/0/8/080ac1f3ad9c3bba32d501499cb39a650fe0738b.png)

---

<div class="post-metadata">

**Author:** ![rafael.guerra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafael.guerra/32/216610_2.png) [@rafael.guerra](https://discourse.julialang.org/u/rafael.guerra)\
**Post date:** [December 17, 2024, 10:53pm UTC](https://discourse.julialang.org/t/bifurcationkit-duffing-equation-time-harmonic-single-harmonic/123937/2 "2024-12-17T22:53:05Z")

</div>

> [@Domenico\_Lahaye](#):
>
> Apologies for the rusty documentation (in progress).

Some [further reading here](https://en.wikipedia.org/wiki/Duffing_equation).
