romanodev / deltapv Goto Github PK
View Code? Open in Web Editor NEWA photovoltaic simulator with automatic differentiation
License: MIT License
A photovoltaic simulator with automatic differentiation
License: MIT License
Suspected typo in setup.py,
install_requires=[ "numpy", "jax", "jaxlib", "daclasses","matplotlib", "pandas", "pyyaml", "scipy"
daclasses misspelled, should be dataclasses
Hi,
I am struggling with solver instability issues for small lifetimes. In simple stacks, such as a typical GaAs pn junction, one could go up to 1e-15s. But for more complex (or should I say realistic) stacks, this can happen already at 5e-12s.
I can only guess about hitting the floating point precision somehow due to strong recombination. I checked that JAX can only do 64bits and does not support np.longdouble. But that's just me without deeper insights into many choices that were made in the code. Would you agree with this assessment for a start or there is something else that could be turned over?
Thanks a lot for your help in advance!
Kind regards,
Shakeeb
Hello, I installed deltapv using pip, but when I tried to run the code in your example, I encountered:
File "/home/zch/code/dpv/test.py", line 1, in
import deltapv as dpv
File "/home/zch/anaconda3/lib/python3.11/site-packages/deltapv/init.py", line 16, in
from deltapv import (simulator, materials, plotting,
File "/home/zch/anaconda3/lib/python3.11/site-packages/deltapv/simulator.py", line 1, in
from deltapv import (objects, scales, optical, sun, solver,
File "/home/zch/anaconda3/lib/python3.11/site-packages/deltapv/objects.py", line 74, in
@dataclasses.dataclass
^^^^^^^^^^^^^^^^^^^^^
File "/home/zch/anaconda3/lib/python3.11/site-packages/deltapv/dataclasses_dpv.py", line 7, in dataclass
data_clz = dataclasses.dataclass(frozen=True)(clz)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/zch/anaconda3/lib/python3.11/dataclasses.py", line 1220, in wrap
return _process_class(cls, init, repr, eq, order, unsafe_hash,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/zch/anaconda3/lib/python3.11/dataclasses.py", line 958, in _process_class
cls_fields.append(_get_field(cls, name, type, kw_only))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/zch/anaconda3/lib/python3.11/dataclasses.py", line 815, in _get_field
raise ValueError(f'mutable default {type(f.default)} for field '
ValueError: mutable default <class 'jaxlib.xla_extension.ArrayImpl'> for field Lambda is not allowed: use default_factory
I encountered this issue on both Ubuntu and Windows systems. I searched for some relevant information online, but I'm unsure how to resolve the issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.