Comments (6)
Tricky thing is, how do you map the port names to the subcircuit port order. Here too a model needs to be able to specify its spice representation. Exposing this as a textfield is horrible UX but might work, but need a better system.
from mosaic.
Key thing I need to refactor: allow setting and changing the loaded schematic.
from mosaic.
Schematic can now be dynamically changed.
from mosaic.
Big question is, how do I want to structure subcircuits?
On the one hand I want the flexibility of Cadence/VHDL-like entity -> implementation abstraction, where different schematics can implement the same entity, and be swapped out when configuring a simulation.
On the other hand the common case is probably just one implementation per entity, and I want to have the simple UX of just being able to "drill down" in a schematic, and run a simulation without having to specify every single component.
Maybe it'd work to just build the UI for the single-implementation case, and leave it up to the simulator to do substitutions. So like, you can just simulate the schematic as drawn, or you can provide a configuration which will override subcircuits and parameters.
from mosaic.
Pffffew... It's starting to come together. You can now specify the background and port layout, and select an image URL on top of that.
There is a bug that causes the image to be dragged https://stackoverflow.com/questions/69178308/how-to-prevent-dragging-of-an-image-element-inside-a-svg
And spice generation needs a complete overhaul. To begin I need to refactor the code that gets the element ports and matches them to wires, potentially using the index I described above. Then I actually need to add code to print the x
elements and the .subckt
elements.
from mosaic.
Ok, bug fixed, edit links added for peak drill-down performance.
Spice export still bust. Broken version up at http://wishfulcoding.nl/mosaic
from mosaic.
Related Issues (20)
- Allow for the possibility to see simulation results without rerunning the entire simulation HOT 1
- Copy paste between schematics does not work HOT 1
- Add "open" link to library manager
- Add an update manager to Mosaic HOT 2
- GND net is not named GND in plot legend HOT 3
- Maybe add a home screen/dashboard?
- Probe currents and power HOT 2
- Allow for post processing of simulated data HOT 1
- Error reporting from couchdb connections and such
- Make it easy to add wire labels
- Race condition while dragging wires that intersec themselves
- Add implicit bulk port to mosfets
- Add easy way to set properties of many devices
- Copy-paste gives weird device names
- Subcircuit parameters
- getting started instructions for Linux doesn't work that well HOT 5
- silocon resistor with implicit bulk connection
- Add debounce to all text fields
- no empty states HOT 1
- gdsfactory integration 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 mosaic.