# How to split initial conditions across multiple timesteps

**URL:** https://discourse.julialang.org/t/how-to-split-initial-conditions-across-multiple-timesteps/103199
**Category:** General Usage
**Tags:** differentialequation
**Created:** [August 25, 2023, 6:35pm UTC](https://discourse.julialang.org/t/how-to-split-initial-conditions-across-multiple-timesteps/103199 "2023-08-25T18:35:33Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Lilith](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lilith/32/27492_2.png) [@Lilith](https://discourse.julialang.org/u/Lilith)
#### Post date: [August 25, 2023, 6:35pm UTC](https://discourse.julialang.org/t/how-to-split-initial-conditions-across-multiple-timesteps/103199/1 "2023-08-25T18:35:33Z")

</div>

I have a differential equation `ddf = f/x^2 - df/x - k*f^2/x` and I’d know `f(0) = 0` and `df(1) = 1`. How can I tell DifferentialEquations.jl about those initial conditions?

---

<div class="post-metadata">

### Author: ![contradict](https://avatars.discourse-cdn.com/v4/letter/c/ac91a4/32.png) [@contradict](https://discourse.julialang.org/u/contradict)
#### Post date: [August 25, 2023, 7:07pm UTC](https://discourse.julialang.org/t/how-to-split-initial-conditions-across-multiple-timesteps/103199/2 "2023-08-25T19:07:06Z")

</div>

I think you want a [boundary value problem](https://docs.sciml.ai/DiffEqDocs/stable/tutorials/bvp_example/), but that first condition looks problematic since `ddf` is undefined at `x=0`. Here is an example solved on `(1.0, 2.0)` with `f(1)=0` and `df(2)=1`:

```julia
using DifferentialEquations

function f!(du, u, p, t)
    du[1] = u[2]
    du[2] = u[1]/t^2 - u[2]/t - p*u[1]^2/t
    nothing
end

function bc!(residual, u, p, t)
    residual[1] = u[1][1] # f(start of tspan) = 0
    residual[2] = u[end][2] - 1 # df(end of tspan) = 1
    nothing
end

bvp = BVProblem(f!, bc!, [0.0, 0.0], (1.0, 2.0), 1.0)

sol = solve(bvp, GeneralMIRK4(), dt=0.05)

```
