Open killah-t-cell opened 3 years ago
@killah-t-cell since the solution is split into intervals: x domains = {[x0, x1], ... [xi,xi+1], ..., x9,xend]}.
so the initial condition is known only at x0, and at the x_i, it is unknown. The bcs_bound
function uses the result of the prediction from the last domain as an initial condition for the next sub domain - [xi,xi+1]
There is need two functions for two predicted variable.
function create_bcs(t_domain_,f_bound,E_bound)
t_0, t_e = t_domain_.left, t_domain_.right
if t_0 == 0.0
bcs = [f(t_0,x,v) ~ 1/(v_th * sqrt(2π)) * exp(-v^2/(2*v_th^2)),
E(t_0,x) ~ e*n_0/ε_0 * (Dt(f(0,x,v)) - 1)]
return bcs
end
bcs = [f(t_0,x,v) ~ f_bound(t_0,x,v),
E(t_0,x) ~ E_bound(t_0,y),
bcs
end
This might be a user error (I am still learning how to use the neural adapter), but I keep getting
LoadError: MethodError: no method matching zero(::Type{Vector{Float64}})
in lineres_ = GalacticOptim.solve(prob_, BFGS();cb=cb, maxiters=2000)
when I try to train a system of (heterogeneous) PDEs.So I wanted to ask
phi_bound()
in the code?I will keep trying to debug this so I might comment the solution here and close the issue if I find something. I think there is something wrong with how I build the losses
If we figure it out, I might turn this into an example for the documentation if Kirill thinks it is a good idea.
Here is the full code for reference: