henjo / pycircuit Goto Github PK
View Code? Open in Web Editor NEWCircuit analysis environment for Python
License: Other
Circuit analysis environment for Python
License: Other
The plot methods of the Waveform class should be more flexible when it comes to plot label choice. There should always be an option to use the ylabel of the Waveform object
When reading a waveform family the sweep values comes in a random order because the runs are stored in a dictionary.
Supplying an array of frequencies to Noise.solve (as can be done for AC.solve) doesn't work. These are treated as a single frequency inside Noise.solve, making the analysis fail.
Waveform operation between waveforms with different dimensions should be possible.
Example
w1 is a 3x4x5 waveform
w2 is 3x4 waveform
w1-w2 should produce a 3x4x5 result
Ellipsis indexing of Waveforms is not working properly.
Now w[...., 0] is equivalent to w[:,0]
Indexing of Waveform object does not work if the index only selects one element
It would be nice with a method that index a waveform with axis names like:
w.index(v1=[2,3], v2=2)
Opening a large (700M) transient results file loads the complete file into memory, which is slow and uses lots of memory.
Would it be possible load the trace names and other meta data on open but then only load the waveforms on demand.
This test fails for me running python 2.7 and sympy 0.7.1
The use of vars is probably a bad idea as it puts symbols into the global namespace. Some of the tests in this file rely on the symbol s being defined by earlier tests, but I'm not sure why this test is failing.
======================================================================
ERROR: pycircuit.circuit.tests.test_analysis_symbolic.test_symbolic_noise_kt_over_C
----------------------------------------------------------------------
Traceback (most recent call last):
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/data/Work/pycircuit/pycircuit/circuit/tests/test_analysis_symbolic.py", line 131, in test_symbolic_noise_kt_over_C
noise_voltage_power = simplify(integrate(svnout, (w, 0, oo)))
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/utilities/decorator.py", line 24, in threaded_func
return func(expr, *args, **kwargs)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/integrals/integrals.py", line 847, in integrate
return integral.doit(deep = False)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/integrals/integrals.py", line 364, in doit
antideriv = self._eval_integral(function, xab[0])
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/integrals/integrals.py", line 577, in _eval_integral
parts.append(coeff * ratint(g, x))
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/integrals/rationaltools.py", line 88, in ratint
R = log_to_real(h, q, x, t)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/integrals/rationaltools.py", line 254, in log_to_real
if len(R_u) != R.count_roots():
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/polys/polytools.py", line 2802, in count_roots
count = f.rep.count_real_roots(inf=inf, sup=sup)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/polys/polyclasses.py", line 743, in count_real_roots
return dup_count_real_roots(f.rep, f.dom, inf=inf, sup=sup)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/polys/rootisolation.py", line 654, in dup_count_real_roots
signs_inf = dup_sign_variations([ dup_LC(s, K)*(-1)**dup_degree(s) for s in sturm ], K)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/polys/densetools.py", line 1126, in dup_sign_variations
if coeff*prev < 0:
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/polys/polyclasses.py", line 1278, in __lt__
_, _, _, F, G = f.frac_unify(g)
File "/data/Work/pycircuit/py27/local/lib/python2.7/site-packages/sympy/polys/polyclasses.py", line 1028, in frac_unify
raise UnificationFailed("can't unify %s with %s" % (f, g))
UnificationFailed: can't unify DMF(([[]], [[1]]), ZZ) with 0
Hi all,
don't have an access to docs on pycircuit.org.
Vadim
Waveform.value should handle waveforms with one element only
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.