मैं जूलिया प्रोग्रामिंग के लिए नया हूं मैं कुछ 1 ऑर्डर डीडीई (देरी विभेदक समीकरण) और ओडीई को हल करने में कामयाब रहा। अब मुझे दूसरे क्रम के विलंब अंतर समीकरण को हल करने की आवश्यकता है, लेकिन मैं इसके बारे में दस्तावेज़ीकरण खोजने का प्रबंधन नहीं करता (मैंने पहले डिफरेंशियल इक्वेशन का उपयोग किया था)।

समीकरण (जहां एफ एक फ़ंक्शन है और देरी):

Image of the equation

मैं यह कैसे कर सकता हूँ?


यहां दी गई जानकारी का उपयोग करके मेरा कोड है, ऐसा लगता है कि सिस्टम आराम से रहता है जो गलत है। मैंने शायद कुछ गलत किया है।

function bc_model(du,u,h,p,t)
 
    # [ u'(t), u''(t) ] = [ u[1], -u[1] + F(ud[0],u[0]) ] // off by one in julia A[0] -> A[1]
    γ,σ,Q = p
    ud = h(p, t-σ)[1]
    du = [u[2], + Q^2*(γ/Q*tanh(ud)-u[1]) - u[2]]
 
end
 
 u0 = [0.1, 0]
 h(p, t) = u0
 
 lags = [σ,0]
 tspan = (0.0,σ*100.0)
 alg = MethodOfSteps(Tsit5())
 
p = (γ,σ,Q,ω0)
prob = DDEProblem(bc_model,u0,h,tspan,p; constant_lags=lags)
sol = solve(prob,alg)
plot(sol)

---

कोड वास्तव में काम कर रहा है! ऐसा लगता है कि यह मेरा सामान्यीकरण स्थिरांक है जो सुसंगत नहीं है। धन्यवाद !

2
Brian Sinquin 12 अक्टूबर 2020, 20:47

1 उत्तर

सबसे बढ़िया उत्तर

आपको आयाम 2 का एक राज्य स्थान मिलता है, जिसमें u = [u(t),u'(t)] होता है। नतीजतन, दाईं ओर के फ़ंक्शन का रिटर्न वेक्टर [u'(t),u''(t)] है। फिर यदि ud विलंबित अवस्था है [u(t-τ),u'(t-τ)] तो दायीं ओर का फलन इस प्रकार तैयार किया जा सकता है

[ u'(t), u''(t) ] = [ u[1], -u[1] + F(ud[0],u[0]) ]
2
Lutz Lehmann 12 अक्टूबर 2020, 21:21