Comments (6)
This is more like FEM where you don't necessarily have the boundaries on the ends. If you write it out in operator form it's clear. v
is the interior, which is [0,0.5) union (0.5,1.0]
. So then u = Q*v
gives the full space, and you can work out what Q
is from the BCs. The other 0.0
and 1.0
are just like before. For the point at 0.5
you get two linear relations and a two constraints. To first order, you put them together to get u[mid] - u[mid-1] = u[mid] - u[mid+1]
or u[mid] = 0.5*(u[mid-1] + u[mid+1])
, and so Q
is I
along with those three BC calculations. Then the operators are well defined on [0,0.5] -> (0,0.5)
and [0.5,1.0] -> (0.5,1.0)
and when you piece that back together you get v_t
.
from diffeqoperators.jl.
OK. Lets keep this example in our minds down the road when we think about automatically expanding the domains when we compose operators.
For example, if L_1 is defined above (and we associate the domain [0, 0.5] witth it, and L_2 with [0.5, 1] then it seems like the notation for a typical composition of the operators
L = L_1 + L_2
should be possible . When we do the discretizaiton of the operator, I imagine there would simply be 0's in the interior of (0.5, 1]
for L_1
and [0, 0.5)
for L_2
.
The boundary values could be done manually, as always, for now.
from diffeqoperators.jl.
The boundary values could be done manually, as always, for now.
Yeah, we'll need to find a good way to relate the (Q,R)
to a mesh and things like that, but what we can do here is make the generation of the A
stencils easy, and do the standard (Q,R)
operators.
from diffeqoperators.jl.
Yes. It also tells me that we need to be able to associate the domain with individual operators so that we can stitch together the union of them for the domain when we lazily compose.
from diffeqoperators.jl.
Well technically this operator still acts on the whole interior, it's just with a constant of zero some places.
But wait a second, why do you need mu_1
and mu_2
? If it's dependent on x
, isn't this just one spatially-dependent coefficient?
from diffeqoperators.jl.
Yes, the operator acts on the whole space, but we need the domain to know which ones we should zero out
This was intended as a MWE. You are right that in this case we could just have a mu(x)
on its own, but there might be much more complicated dynamics (and even different stochastic processes) in different regions.
from diffeqoperators.jl.
Related Issues (20)
- Performance issues with nonlinear_diffusion! HOT 4
- Fix symbolic arrays test to allow MTK v5.21.0 HOT 7
- UndefVarError: dereference not defined when precompiling DiffEqOperators (Win10, julia 1.6.1-2) HOT 7
- Version Compatibility? HOT 1
- Error defining second-order differential HOT 8
- The latest versions of LoopVectorization (0.12.80-81) are not compatible and cause errors HOT 1
- Noob Help: Simple, Linear, Inhomogenous PDE HOT 3
- concretization of High Dimension PDE HOT 2
- LoopVectorization break HOT 5
- Unexpected concretization of Laplace operator HOT 3
- v4.35.0 failed to release HOT 2
- Feature request: Support Summation-By-Parts operators HOT 4
- Support Unitful HOT 6
- Incorrect boundary padded vector with composed PeriodicBC on 2d data HOT 6
- Implementing Drift-Diffusion model in higher dimensions HOT 3
- Uninitialized field `opnorm` in JacVecOperator HOT 4
- SplitODEProblem broken for MatrixFreeOperator HOT 3
- ERROR: LoadError: Some tests did not pass: 30 passed, 0 failed, 4 errored, 4 broken. HOT 18
- Warning related to "LoopVectorization.check_args"
- Lots of precompilation errors and noise HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from diffeqoperators.jl.