From Wikipedia article :  Spectral lines are the result of interaction between a quantum system (usually atoms, but sometimes molecules or atomic nuclei) and a single photon. When a photon has about the right amount of energy (which is connected to its frequency) to allow a change in the energy state of the system (in the case of an atom this is usually an electron changing orbitals), the photon is absorbed. Then it will be spontaneously re-emitted, either in the same frequency as the original or in a cascade, where the sum of the energies of the photons emitted will be equal to the energy of the one absorbed (assuming the system returns to its original state).   A spectral line extends over a range of frequencies, not a single frequency (i.e., it has a nonzero linewidth).   The lifetime of excited states results in natural broadening, also known as lifetime broadening. The uncertainty principle relates the lifetime of an excited state (...) with the uncertainty of its energy.  Can you provide proof for the last statement? (Maybe without using QED, if possible)
Consider the atomic spectrum (absorption) of hydrogen.     The Bohr's model postulates that there are only certain fixed orbits allowed in the atom. An atom will only be excited to a higher orbit, if it is supplied with light that precisely matches the difference in energies between the two orbits.   But how precise does 'precisely' mean. Of course, if we need energy $E$ to excite the electron to a higher energy level, and I supply a photon with just $E/2$ I would expect nothing to happen (since the electron cannot occupy an orbit between the allowed ones). But what if I supplied a photon with energy $0.99E$, or $1.0001E$ or some such number. What will happen then?  I think that the electron should still undergo excitation precisely because the lines we observe in the line spectrum have some thickness. Which means that for a given transition, the atom absorbs frequencies in a certain range.   Is my reasoning correct? If not, why? How does Bohr's model explain this? How about modern theory?   If I'm right, what is the range of values that an atom can 'accept' for a given transition?
When building console applications that take parameters, you can use the arguments passed to Main(string[] args).   In the past I've simply indexed/looped that array and done a few regular expressions to extract the values. However, when the commands get more complicated, the parsing can get pretty ugly.    So I'm interested in:   Libraries that you use Patterns that you use   Assume the commands always adhere to common standards such as . Hiding sublayer with toggle button using LayerActions? I have a toggle map (like ) with sublayers. I want all the sublayers to be visible when you open the map, but I would like to hide some sublayers when the toggle buttons are clicked. I've tried adding a hide sublayer code into the LayerActions section of my code, but it's not hiding the sublayers (the button does the same function no matter whether the 'layer.getSubLayer(1).hide()' is there or not). This is the code I'm using:  var LayerActions = {  all: function(){   layer.getSubLayer(1).hide();   sublayers[0].setSQL("SELECT * FROM spreadsheet");   return true;  },  2011: function(){   layer.getSubLayer(1).hide();   sublayers[0].setSQL("SELECT * FROM spreadsheet WHERE year IN ('2011') AND year IS NOT NULL");   return true;  },  2012: function(){   layer.getSubLayer(1).hide();   sublayers[0].setSQL("SELECT * FROM spreadsheet WHERE year IN ('2012', '2012/2013') AND year IS NOT NULL");   return true;  } }   $('.button').click(function() {  $('.button').removeClass('selected');  $(this).addClass('selected');  LayerActions[$(this).attr('id')](); });   Could someone point me to where I'm messing up with my code? Or is it not possible to hide a sublayer using the LayerActions?    I'm now loading my layers differently, and this is my new code:   cartodb.createLayer(map, url1)     .addTo(map, 0)     .done(function (layer) {         console.log('added url1 ',url1);         cartodb.createLayer(map, url2)         .addTo(map, 1)         .done(function (layer) {             console.log('added url2 ',url2);         })         .error(function (){             console.log('problem adding 2nd layer');         });     })     .error(function () {         console.log('There is something wrong with requested data!');     });   So if I wanted to hide the first layer that's loaded (url1) and select only certain points from the second layer (url2), how would I code that in my LayerActions section? I've tried the following, but nothing changes when I click the buttons:  var LayerActions = { all: function(){   layer.getLayer(0).hide;   layer[1].setSQL("SELECT * FROM spreadsheet");   return true; }, 2011: function(){   layer.getLayer(0).hide;   layer[1].setSQL("SELECT * FROM spreadsheet WHERE year IN ('2011') AND year IS NOT NULL");   return true; }, ... Is a bivariate function that is a polynomial function with respect to each variable necessarily a bivariate polynomial? I just installed Ubuntu 14.04 on a Dell laptop with 1.7Ghz Pentium M and 1Gbyte memory.  Graphics are Intel® 852GM/855GM x86/MMX/SSE2, OS type is 32bit.  The whole system is VERY slow. When I launch the applications manager, for example, I need to wait in order to see the letters I typed appear!  It is as if the CPU was overloaded and no memory available, but I only have Firefox running.  How can I make the system run smoother? It used to have Windows XP installed and it worked fine. I am trying to really understand why the gradient of a function gives the direction of steepest ascent intuitively.  Assuming that the function is differentiable at the point in question, a) I had a look at a few resources online and also looked at this   , a popular question on this stackexchange site. The accepted answer basically says that we multiply the gradient with an arbitrary vector and then say that the product is maximum when the vector points in the same direction as the gradient? This to me really does not answer the question, but it has 31 upvotes so can someone please point out what I am obviously missing?  b) Does the gradient of a function tell us a way to reach the maxima or minima? if yes, then how and which one - maxima or minima or both? Edit: I read the gradient descent algorithm and that answers this part of my question.  c) Since gradient is a feature of the function at some particular point - am I right in assuming that it can only point to the local maxima or minima? Projecting sp objects in R I have a number of shapefiles in different CRSs (mostly WGS84 lat/lon) that I'd like to transform into a common projection (likely Albers Equal Area Conic, but I may ask for help on choosing in another question once my problem gets better-defined).  I spent a few months doing spatial stats stuff in R, but it was 5 years ago.  For the life of me, I cannot remember how to transform an sp object (e.g. SpatialPolygonsDataFrame) from one projection to another.  Example code:  P4S.latlon &lt;- CRS("+proj=longlat +datum=WGS84") hrr.shp &lt;- readShapePoly("HRR_Bdry"), verbose=TRUE, proj4string=P4S.latlon)  # Shapefile available at  #   http://www.dartmouthatlas.org/downloads/geography/hrr_bdry.zip  #   but you must rename all the filenames to have the same  #   capitalization for it to work in R   Now I have a SpatialPolygonsDataFrame with appropriate projection information, but I'd like to transform it to the desired projection.  I recall there being a somewhat unintuitively-named function for this, but I can't remember what it is.  Note that I do not want just to change the CRS but to change the coordinates to match ("reproject", "transform", etc.).  Edit  Excluding AK/HI which are annoyingly placed in Mexico for this shapefile:  library(taRifx.geo) hrr.shp &lt;-    subset(hrr.shp, !(grepl( "AK-" , hrr.shp@data$HRRCITY ) |                                      grepl( "HI-" , hrr.shp@data$HRRCITY )) ) proj4string(hrr.shp) &lt;- P4S.latlon Rejecting a PhD offer after having accepted it. Advice? I have accepted a PhD offer from a very good university to do a project very close to my interests. I have told the project supervisor I accept it. In the meanwhile I have managed to secure a PhD offer from another 2 universities much better in world rankings and with better research groups and better faculty. Additionally these 2 universities do research exactly on what I want to devote my PhD research.  My only commitment to the first university is a mail confirming I accept. Nothing else. I understand declining the offer after already having accepted it is quite dishonest but it is a huge decision that will affect my future in a very significant level.   I would like your opinion and I would also like to ask for possible consequences of such an action. As far a postdocs concerned, in the first university there is no chance I ever get a postdoc since they do not actually do research on my area (except for the prospective supervisor and even he not as much).  UPDATE I have decided to do as I was afraid to. I have decided to choose a different university than the first one that I have already accepted the offer. My offer acceptance included:    An online "I accept" statement. An e-mail I sent stating "I accept the scholarship and this University is my first option"   I do not have any legal commitments since I have not signed anything. The supervisor of the first university though is really nice to me and continuously was sending me mails. How do I very nicely tell her I will not be joining in the end? Additionally the place I will go in the end will be for research in Mathematics and not Physics. Can I use this as a part of a sensical excuse?  WHAT I HAVE CHOSEN AND WHAT THE CONSEQUENCES WERE  I think that I should let people, especially other beginning grad students know what happened with my case. I have chosen to nicely tell the first university I got accepted that I will not be attending and will not be pursuing a PhD there since I decided I have different research interests (which is true). I had applied there in the first place since I was not sure what I wanted to do and because it was a nice program. Despite that, I got an offer from a World top university to work on 100% my research interests. I explained this to them, the first uni, and they happily let me go and wished me good luck, especially the supervisor who faught a lot secure me funding. I was lucky. How to get rights of admin after I disabled all admin accounts in my computer I accidentally disabled my admin account.  After I login to another account I found I can not get admin rights, because all admin accounts on my computer are disabled.  I clicked on 'run as administrator' but only see a smart card choice (all the admin accounts are disabled so no choice provided)    I don't want to re-install my OS, help!    Details:  I have account A on my computer.    I got a new computer so I want to give the old one to my mother.    Creating a new user account B for her and disable account A.    Logout and restart.    Successfully login B, now I found I could not get admin rights because no account choice is provided.    More informations about my machine:  OS is Windows 10 and my admin account is a Microsoft Account.  I have an arch-linux installed on my computer and dual-boot it using GRUB, so maybe I can not use safe mode. Where to place my local website starting with the 2.4.7 version of apache2? Is particle superposition reflected in the particle's gravitational footprint? How do you compile OpenSSL for x64? After following the instructions in INSTALL.W64 I have two problems:   The code is still written to the "out32" folder. I need to be able to link to both 32-bit and 64-bit versions of the library on my workstation, so I don't want the 64-bit versions to clobber the 32-bit libs. The output is still 32-bit! This means that I get "unresolved external symbol" errors when trying to link to the libraries from an x64 app. So I defeated a Team Valor gym earlier today using my highest cp Pidgeot. It turned grey, so I went to claim it with that Pidgeot, except it wouldn't let me. What determines which pokemon you are allowed to place at a gym? Is it just those who have participated in a battle can't? Is there a time period for it? What about training at a friendly gym? Does this impact anything? These HDDs will be used mostly for backups and data-storage (pictures, movies) which aren't often read. The price difference is 1.5 Euros in the case of these two:   HDD Western Digital Caviar Green Power 500GB, 7200rpm, 32MB, SATA2 HDD Western Digital Caviar SE16 500GB, 7200rpm, 16MB, SATA2   The only difference is the buffer size (16MB vs. 32MB). Is the larger buffer size worth the extra money? Currently in my last year of high school, and I have always been told that  does not exist by my physics teachers. Today my girlfriend in the year below asked me what centrifugal force was, I told her it didn't exist, and then she told me her textbook said it did, and defined it as "The apparent force experienced towards the outside of a circle is the centrifugal force and is due to the mass of the object resisting the inward centripetal acceleration that the object is experiencing". I was pretty shocked to hear this after a few years of being told that it does not exist.  I did some reading and found out all sorts of things about pseudo forces and reference frames. I was wondering if someone could please explain to me what is going on? Is it wrong to say that centrifugal force does not exist?   This has always nagged me a bit as I often wonder that if every force has a reaction force then a centripetal force must have a reaction centrifugal force, but when I asked my teachers about this they told me that centrifugal force does not exist. "This product is good value" vs "This product is of good value" in a sentence 1.This product is good value. 2.This product is of good value.    Are there any difference in meaning between "good value" and "of good value"? How do I type Arabic text in Photoshop? I want to type Arabic text in Photoshop, but the text appears disjointed and the letters do not connect at all. For example محمد appears as م ح م د.   I'm using Photoshop CS6 on OSX Mountain Lion. How does Router know where to forward packet If several computers with local addresses (192.168.0.#) are connected to a router and each computer opens a web browser and requests a page over HTTP, when these TCP:80 packets are sent out, the router switches the local address with the static IP of the router (i.e. Provider given IP) so the server can reply to the appropriate address.   But how does the router know to which computer to forward the HTTP reply, since the TCP header does not contain the local IP address (does it?), and all computers are using port 80?  Does this have anything to do with the MAC addresses?   How exactly does this work? How to check if installing a package will require a reboot? I often install packages and updates for them, although sometimes it is not convenient to do a reboot if one of the packages needs it, so is there any way of telling BEFORE installing the package/update whether or not it will require you to do a reboot? I have already looked  and the solutions there don't solve my problem, nor the more or less same one described there. Can I get back my saved data? I don't understand this and I'm now worried as I have donated to a lot of servers and I don't want to lose this account. On the launcher it says my new username but when I log on it says "Account not Authenticated with minecraft.net" and "Non-Valid Username".  How can I regain the ability to use my account online?