Why will an ideal double integrator oscillator only oscillate at one frequency?

V

VeryItchy

I am trying to learn about RF oscillators.

Example 8.6 in the oscillator chapterof RF Microelectronics 2nd edition by Razavi asks to solve for the frequency and amplitude of the oscillation of an ideal double integrator oscillator.

He approached the problem by converting the transfer function into a differential equation and then solved it.

Upto this point I can still understand him, but then he wrote this:

Why does the circuit not oscillate at frequencies below ω1 = K? It appears that the loop has enough gain and a phase shift of 180 degrees at these frequencies. As mentioned earlier, oscillation build-up occurs with a loop gain of greator than unity only if the closed-loop system contains poles in the right-half plane. This is not the case for the two-integrator loop: Y/X can have only poles on the imaginary axis, failing to produce oscillation if s = jω != jK. (K being the constant nominator of the integrator's transfer function K/s)

To make the question clearer and to avoid copyright issues, I have redrawn the circuit and its loop gain myself. Example 8.6 is on page 506, if you happens to have the book.

enter image description here

Why won't the circuit oscillate at frequencies below ω1? They have more than enough loop gain and a phase shift of exactly 180 degrees. I think all the frequencies below ω1 should be able to oscillate, it is just that their amplitudes will be growing with time indefinitely rather than being stable like that of the frequency ω1. I wanted to verify my idea by assuming the solution to y(t) to take the form of a more general complex expression e^(st) and solve for the same diffential equation. I found that to satisfy the equation, the complex number s has to be purely imaginary, which left me more confused. I failed to see why the lack of right hand plane poles prevents frequency components below ω1 from oscillating despite the fact that they satisfy the Barkhausen's criteria.

Can you really find a negative feedback system that has a loop gain of greater than unity while having a phase shift of 180 degrees at that same frequency which also has a closed-loop transfer function with only left hand plane poles? The two conditions seem contradictory. A negative feedback system that has negative phase margin should be unstable, meanwhile a closed-loop transfer function with only LHP poles implies the system to be stable. Am I right? If I am right, is there a more formal proof to that statement?
 

Unreplied Threads

How can I start a remote lsp server and specify a specific host and port to connect to with eglot?

I am developing directly on a development container in a container on a (remote) Kubernetes cluster. The container has an ssh-server which means that eglot can start the remote lsp-server through ssh.

Additionally I've set up port-forwarding to forward a port on the local machine to the lsp-server port on the container. In this way eglot can connect to the lsp-server through a port on my localhost.

However I am not able to find the correct commands to automatically make eglot start the lsp-server remotely and subsequently connect to the server on a local port.

With the following command added tot the eglot-server-programs I can get eglot to start the remote lsp-server (by running M-x eglot). (PS I run this command after I have opened a file on the remote container through tramp, eglot seems to find out automatically that the command to start the lsp-server should be run on the remote host).

Code:
  (add-to-list 'eglot-server-programs '((python-mode python-ts-mode) "pylsp" "--tcp" "--host=0.0.0.0" "--port" "5007"))

When subsequently I add the following to the eglot-server-programs and run M-x eglot again:

Code:
  (add-to-list 'eglot-server-programs '((python-mode python-ts-mode) "localhost" 5007))

Then eglot seems to connect to the server and things seem to work fine.

But again, I cannot get eglot to perform the two steps above automatically. Is there a way to make eglot preform both steps above by adding only a single entry to the 'eglot-server-programs list?

Or maybe there are two seperate commands that I can run to first start the remote-lsp server and subsequently to connect to the server though the local port?

Vertices connect to Mesh

  • Evert Gelders
  • Technology
  • Replies: 0
enter image description here

I want to connect these vertices to make a mesh, but I have no idea how to do it efficiently. I tried to do it manually but it cost a lot of time and I was probaby doing it wrong.

Separate Object into equal chunks by a grid

I have an terrain object that I want to divide into chunks of the same size. I already created a grid (black lines) with that I could slice the mesh. I want every chunk to be a separate object. Any ideas?

enter image description here

Decrypting base2i encryption?

We all know base64, which can be easily decoded, but there's also base2i encryption. Yes, the base is a complex number. I can only find very limited resources online about this. I'm wondering how can a plaintext be encrypted using base2i and then decrypted?

I've got this base2i encrypted ciphertext: 3030101000000000201030203010100030200020100030301030303030201000001000100000202020103010202030001010001000201010003020003020200020203000101000202010203030202020203030000030200000203000303030200030101020300010300030101020102010303020302020202010003010001

I tried to treat this as one large number and convert it to base10, but in base10 I got a complex number which doesn't make sense. Maybe I should decrypt this in chunks? Not sure how this works.

Login To add answer/comment

shapez2 - Why do the shape/fluid loaders have three levels?

  • ordago
  • Social
  • Replies: 0
I don't understand why the shape and fluid loaders have three levels, it looks like they only use one of the levels to load items. When the bottom level is overloaded, it doesn't load items in the middle level, and if a new shape or fluid is added, the bottom level is replaced with the new item instead of adding the new items to the middle level.

Problem is depicted on this gif:
Left most loader switches between red and green fluid, and the other two loaders can only load items on the bottom level insted of using the rest of the levels.

So I don't understand the point of having this three levels. Is it for storing more of the same item? or is it to have three different items stored? How can I take advantage of these three levels?

Delete only faces in whole scene

  • gilles tarnus
  • Technology
  • Replies: 0
I m trying to script that delete all faces in my scene, but not the edges and loose edges. I try many but still no good results. With GUI it works like that :

  • Select object
  • Go to edit mode
  • Select all
  • Hit delete
  • In context menu choose faces. That s it. Any hunt to script this ? Best regards, Gilles

Problemas con mi editor VSCode (Creo que es el scriptcs pero no encuentro solucion)

hace un tiempo he venido programando en VisualCode pero cuando intento correr el codigo en mi editor me da un error en la pestaña Output, el error es el siguiente: [Running] scriptcs "c:\Users\juand\Desktop\C#\Program.cs" "scriptcs" no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.

[Done] exited with code=1 in 2.002 seconds

tengo la carpeta de scriptcs en la misma carpeta donde estoy haciendo mi proyecto y ya he intentado solucionarlo agregandola al path y una infinidad de cosas diferentes pero nada me ayuda co eso, si alguien podria ayudarme se lo agradeceria mucho.
Top