Comments (5)
This sounds wonderful! With regards to interpolation, the method I'm most familiar with is trilinear interpolation (e.g., Haynes & Parnell, 2007). I suspect that some of the interpolation routines in SciPy would do pretty much what we need them to do (e.g., RegularGridInterpolator).
Another thought related to interpolation is that we should allow for flexibility in terms of the interpolation method which we'll eventually need. If we want to push test particles in a spectral or spectral element simulation, the most accurate way to interpolate would be to use the basis functions of the solution directly. However, we do not need to do this yet.
A simple test would be to match against analytical results for a particle orbit in a uniform magnetic field. Another possibility for a test would be to match particle drifts in simple configurations.
Thank you!
from plasmapy.
... so this was implemented in scipy all along?
Well.
I really do need to read the full docs of that, scipy keeps positively surprising me.
Thank you very much for the heads up, this will definitely come in handy!
I'll try to make the interpolation easy to swap out.
Uniform mag fields are definitely one of the tests I'm considering; another would be a harmonic potential. The drifts are a neat idea. Thanks!
from plasmapy.
Okay, a minor point of confusion. I started doing some minor work on porting my code, and I'm noticing that we don't actually have an electric field defined in the plasma class. I know, quasineutrality, everything runs on magnetic in MHD scenarios, but in this case this means I'm kind of at a loss on how to proceed for now. I can't really interpolate a non-existant electric field.
I had the idea of interpolating not the fields, but the actual momentum - scale that to the particle mass and we get a velocity for the particle. But that seems like a hack, like something you would implement in a video game where you don't actually care about the physics involved.
from plasmapy.
Hm...some options would be to have the electric field either inputted directly, or calculated from an Ohm's law. @SolarDrew, do you have thoughts on how to address this?
from plasmapy.
Hey, just wanted to give a heads up that I still intend to get this done, but other commitments are kind of getting in the way right now. I hope I can get back to this soon.
from plasmapy.
Related Issues (20)
- Switch to an `src` layout with a separate `tests` directory? HOT 4
- Add weekly GitHub Action to build docs whilst re-executing the pre-executed notebooks
- Update testing guide to reflect that repeat runs of tox are only a few seconds slower than pytest
- Decide on preferred set of `mypy` rules to adopt HOT 5
- Improve Thomson module
- Different return types for `is_category` method of `ParticleList` than `Particle` & `CustomParticle` HOT 3
- Make it so that mypy thinks that `ParticleLike` has the same attributes as `Particle`
- Store downloaded data in `$XDG_DATA_HOME` if that environment variable exists HOT 1
- Multiple density values in `formulary.radiation.thermal_bremsstrahlung` returns `ValueError`
- `thomson_fitting` error with `lmfit==1.3.0` HOT 3
- Make it so that `plasmapy.__version__` uses current date in editable installs
- Verify that files are included or not included in source distributions and wheels
- Show correct version in title of `latest` docs
- Enable weekly tests with the JIT compiler to be added in Python 3.13
- CI codecov bug HOT 2
- Allow ParticleTracker to accept analytical fields (as functions) or lists of currents/charges
- Add helper functionality to plot quantities against temperature with axes labeled in both K and eV HOT 2
- Add `latex_str` attribute to `Particle`
- Add Jupyter notebook that plots reconnection phase diagram
- what is the unit of temperature defined in the Spitzer resistivity HOT 1
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 plasmapy.