gridap / Tutorials

Start solving PDEs in Julia with Gridap.jl
MIT License
124 stars 37 forks source link

Broken Tutorial 17 #181

Open alex-fu27 opened 1 month ago

alex-fu27 commented 1 month ago

In Gridap 0.18, Tutorial 17 (transient equations) is broken in multiple ways:

Most importantly,

u₀ = interpolate_everywhere(0.0,U(0.0))
t₀ = 0.0
T = 10.0
uₕₜ = solve(ode_solver,op,u₀,t₀,T)

yields

MethodError: no method matching solve(::ThetaMethod, ::Gridap.ODEs.TransientFEOpFromWeakForm, ::Gridap.FESpaces.SingleFieldFEFunction{Gridap.CellData.GenericCellField{ReferenceDomain}}, ::Float64, ::Float64)

Closest candidates are:
  solve(::Gridap.ODEs.ODESolver, ::TransientFEOperator, !Matched::Real, ::Real, !Matched::CellField)
   @ Gridap ~/.julia/packages/Gridap/Ort08/src/ODEs/TransientFESolutions.jl:130
  solve(::Gridap.ODEs.ODESolver, ::TransientFEOperator, !Matched::Real, ::Real, !Matched::Tuple{Vararg{CellField}})
   @ Gridap ~/.julia/packages/Gridap/Ort08/src/ODEs/TransientFESolutions.jl:123
  solve(::Gridap.ODEs.ODESolver, !Matched::Gridap.ODEs.ODEOperator, !Matched::Real, ::Real, !Matched::AbstractVector)
   @ Gridap ~/.julia/packages/Gridap/Ort08/src/ODEs/ODESolutions.jl:142
  ...

I will attach the Jupyter Notebook of the example, showing the error message t017_poisson_transient.ipynb.txt but Github does not allow uploads with the .ipynb filename extension, so you need to remove the .txt.

Also, from the alternative FEOperator constructors, TransientConstantMatrixFEOperator seems to be missing:

UndefVarError: `TransientConstantMatrixFEOperator` not defined
alex-fu27 commented 1 month ago

Ah I found this very handy pull request #178 :+1: