Comments (1)
Hi diepala,
I would suggest having a read of this review of bond graph modelling. The TLDR is that effort and flow sources like a controlled current source or voltage source are in the standard library as 'Se' and 'Sf' components respectively.
Amplifiers, such as what you have described about are un-physical because the require infinite effort or flow.
If you look at your constitutive relations for the effort amp, you must have $0 >= P_0 + P_1 =e_0f_0 +e_1f_1 = e_1(ae*f_0 - f_1)$. If we have equality, then you have re-created a transformer. If we have inequality, we have a transformer and a resistor of some variety.
In practice, amplifiers are made up of nonlinear components such as transistors, which satisfy K.C.L and K.V.L and hence dissipate or store energy, not create it.
Feel free to implement op-amps if you require them, but for the time being we'd like to keep all energy-injecting components in the base libraries as sources such as 'Sf' and 'Se' components.
Closing for now, but happy to revisit this later if there is enough interest.
from bondgraphtools.
Related Issues (20)
- Exceptions for empty models
- Error connecting exception needs better feedback
- Add error checking to constitutive relaiton generation
- Tutorial: Port Hamiltonians
- Contributors wiki
- Connecting to ports that do not exist incorrectly create new ports
- Export to matlab
- Installation and Readme
- Change ordered set impelementation
- Algebra Rework Take 1
- Reorganise API docs
- migrate to pyjulia v0.2 and diffeqpy v1.0 HOT 1
- Cannot create port following second tutorial. HOT 1
- Make Julia dependency optional with a pure Python simulator? HOT 4
- Simple example raise "Key Error" exception HOT 1
- Simple example raise "NameError" exception HOT 2
- Unable to connect components with multiple port (like GY of TF) HOT 2
- The function simulate take a ndarray as an input for x0 but not for dx0 HOT 3
- following tutorial 1, I got an error report HOT 4
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 bondgraphtools.