Hi, I am using MethodOfLines.jl for solving the beam vibration PDE.
I need to implement an initial condition that the initial velocity is zero, or Dt(u(t=0,x)) ~ 0.
I tried to put it into the bcs but failed.
The problem is in the expression Dt(u(t,x)), I could not set t to be 0.
using OrdinaryDiffEq, ModelingToolkit, MethodOfLines, DomainSets @parameters t x @variables u(..) Dt = Differential(t) Dt2 = Differential(t) Dx2 = Differential(x)^2 Dx4 = Differential(x)^4 L = 1; eq = Dt2(u(t, x)) ~ -Dx4(u(t, x)) + 1; bcs = [#u(0, x) ~ 0.0, Dt(u(0, x)) ~ 0.0, #u(t, 0) ~ 0.0, Dx2(u(t, 0)) ~ 0.0, #u(t, L) ~ 0.0, Dx2(u(t, L)) ~ 0.0, ]; domains = [t ∈ Interval(0.0, 1.0), x ∈ Interval(0.0, L)]; @named pdesys = PDESystem(eq, bcs, domains,[t, x],[u(t, x)]); dx = 0.05; order = 2; discretization = MOLFiniteDifference([x => dx],t); prob = discretize(pdesys, discretization);
ERROR: AssertionError: Boundary condition Differential(t)(u(0, x)) ~ 0.0 is not on a boundary of the domain, or is not a valid boundary condition