Pre v0.3.1: Critical fixes and internal changes that are functionality invariant#69
Conversation
…ort and error handling
…th thiserror procmacro + anyhow context
Fixup bump netcdf ver to use ndarray
…alue Attribute accept clone Material and build attributes properly
|
This is dependent on this PR on lidrs @sammorrell : sammorrell/lidrs#6 |
fixup lidrs error type
|
To confirm you @sammorrell find that the changes are sensible:
|
|
I have run the testing suite on this branch and the following test have failed because the related photon collector outputs are missing:
I've looked through the configuration and code. It's not entirely clear why these are consistently absent, but I will continue to investigate... After a conversation with @crisbour today, the Fix implemented in: aetherus-wg/aetherus-tests@570b8a9 Now this is fixed, and all unit and integration tests are passing, I will check through the rest of the code. |
For the PR from @crisbour (aetherus-wg/Aetherus#69) for v0.3.1 of Aetherus, the `PhotonCollector` struct was modified so that photon packets are only collected from the 'front' of a given surface. The test cases assumed that photons could be collected from either side. So, the orientation of the offending test cases has been modified to remove this assumption - the collectors should now face the direction the incoming photon packets are expected to come from.
|
Ran with the full city-scale simulation from our recent paper (https://doi.org/10.1098/rsif.2025.0453), and this produces a lux output consistent with the outputs from that paper. Differences are on the order of 1 -- 2% different for areas with good signal (e.g. streets). Will now do final checks and we can get this released.
|
|
|
||
| #[test] | ||
| #[should_panic] | ||
| #[ignore = "This case is currently not handled correctly."] |
There was a problem hiding this comment.
@crisbour what would you like to do about this? Is this something we should consider fixing?
There was a problem hiding this comment.
@sammorrell This might be relevant to another fix I made about the ray Aabb(Cube) intersection. It seemed to fail in some scenarios, so I converted to trusted method: 096b874


This branch paves the way to the next release(v0.4.0), fixing critical issues and making changes that are desired, but which don't change the functionality of the model.
must_usecan't be described in trait methods, and it's going to result in an error in next compiler releasenetcdfbump, I needed this to use the HDF5 library available on the stable nix flake + added nix flakes for env setupobjcrate for wavefront parsing instead, in order to allow for more easily check of invalid format and useful semantics for next releasestd::error::Errortrait and autodecorate it withthiserrorproc-macro crateanyhowerrorTODO:
aetherus-testrepo