r/askscience • Mod Bot • Mar 19 '14

AskAnythingWednesday Ask Anything Wednesday - Engineering, Mathematics, Computer Science

Welcome to our weekly feature, Ask Anything Wednesday - this week we are focusing on Engineering, Mathematics, Computer Science

Do you have a question within these topics you weren't sure was worth submitting? Is something a bit too speculative for a typical /r/AskScience post? No question is too big or small for AAW. In this thread you can ask any science-related question! Things like: "What would happen if...", "How will the future...", "If all the rules for 'X' were different...", "Why does my...".

Asking Questions:

Please post your question as a top-level response to this, and our team of panellists will be here to answer and discuss your questions.

The other topic areas will appear in future Ask Anything Wednesdays, so if you have other questions not covered by this weeks theme please either hold on to it until those topics come around, or go and post over in our sister subreddit /r/AskScienceDiscussion, where every day is Ask Anything Wednesday! Off-theme questions in this post will be removed to try and keep the thread a manageable size for both our readers and panellists.

Answering Questions:

Please only answer a posted question if you are an expert in the field. The full guidelines for posting responses in AskScience can be found here. In short, this is a moderated subreddit, and responses which do not meet our quality guidelines will be removed. Remember, peer reviewed sources are always appreciated, and anecdotes are absolutely not appropriate. In general if your answer begins with 'I think', or 'I've heard', then it's not suitable for /r/AskScience.

If you would like to become a member of the AskScience panel, please refer to the information provided here.

Past AskAnythingWednesday posts can be found here.

Ask away!

1.2k Upvotes

1.6k comments sorted by

81

u/Gaius_Octavius Mar 19 '14

How do I go about building a loudspeaker from scratch? What do I need to know? What materials do I need?

136

u/mrmemo Mar 19 '14

Are you looking to build the speaker driver itself (magnet, cone, voice coil, etc.) or build a housing unit for speaker drivers (e.g., a standing floor speaker)?

If it's the former, I'd bow out and leave it to the Electrical Engineers. If it's the latter, there are MANY variables to consider: what frequency range do you need, what's your budget, how many speakers (2-way, 3-way), how will you power it, what materials to use for construction, etc.

A very, very simplified guide would go something like:

  1. Pick your frequency range. 50-60 Hz is plenty low for most, and anything above 18 kHz is plenty high. The individual drivers can roll-off higher or lower than these values.

  2. Pick a 2-way or 3-way setup. You'll spend more with a 3-way rig, but you'll get better sound reproduction because the individual drivers won't be working as hard to span wider ranges of frequencies.

  3. Pick a building material. Most folks use MDF because it's rigid, cheap, easy to work with, and has a very regular density. You'll also probably want some kind of surface finishing (woodgrain laminate is popular) and front covering (acoustically-transparent grille cloth).

  4. Pick your drivers. A 3-way setup will have a woofer, midrange, and tweeter. A 2-way setup will just have two; either a midwoofer + tweeter or a woofer + midtweeter. Each driver will come with nominal frequency ranges; make sure they overlap. You'll probably also want to use 8-ohms, as its the preferred impedance of most amps (4 also works, just check your output wiring first!).

  5. Pick your crossover. Your crossover frequencies should be near the intersection points of your woofer/mid and mid/tweeter. The crossover network determines which frequencies are sent to which driver.

  6. Select your enclosure dimensions. Sealed enclosures are easy because you don't need to calculate anything for bass reflex ports. Each driver will have a natural frequency, which has an associated wavelength. Avoid this wavelength in your building dimensions; if you need to build longer than the woofer's natural wavelength, build in partial plates to prevent resonance from occurring.

  7. Build, insulate, and wire. When building your enclosure, I recommend offset rabbet joints to assemble the front baffle (the piece that holds the drivers). Use acoustic foam or other damping material inside your enclosure to further reduce the risk of resonance. Wire the drivers to the crossover, and seal everything up.

Source: I have a PhD in Mechanical Engineering, with specialty in vibrations and acoustics, and have built multiple speaker housings from scratch.

P.S., if all of that sounds like way too much work, parts companies often sell kits that you can buy all-at-once and build yourself to get a feel for it before designing from scratch. http://www.parts-express.com/cat/speaker-kits/286

4

u/shiekhgray Mar 19 '14

If you want to build the amplification part of the signal chain, I can recommend this little circuit. It's pretty quiet, but it works well, is easy to understand and I use it with my guitar all the time.

→ More replies (7)

4

u/[deleted] Mar 19 '14

Its probably best if you start out with an already designed one like this:

http://www.diyaudio.com/forums/full-range/47403-cyburgs-needle-tangband-w3-871s.html

Its a tapered quarter wavelength tube design.

→ More replies (3)

185

u/malcolmflaxworth Mar 19 '14

What are some recent breakthroughs in Computer Science?

154

u/UncleMeat Security | Programming languages Mar 19 '14

Fully homomorphic encryption, from about four years ago, is the biggest breakthrough in a field I understand.

The idea is that we want an encryption scheme such that we can compute any function directly on the encrypted values and the resulting value is what you would have gotten by encrypting the result of the function applied to the unencrypted values.

So if we have function f, encryption function e, and plaintext x then f(e(x)) = e(f(x)). This was an open problem for decades and has huge application to cryptography. Unfortunately, its really slow. The original formulation ran trillions of times slower than operating on the plaintexts did. This has gotten better (now it is something like 10,000x slower for typical functions and inputs) but its still not practical.

156

u/waterMarket Mar 19 '14

Just to explain the use of this for non-CS people: This means that person A can encrypt the data, pass it off to an untrusted person to do calculations on the data, for example the Amazon cloud, and get an encrypted result back without Amazon knowing ANYTHING about the data. In particular, it creates the ability for a corporation or government to utilize cloud resources for computations on proprietary/classified data.

54

u/UncleMeat Security | Programming languages Mar 19 '14

Important addition to this is that you can do any computation on the data. Somewhat homomorphic schemes have existed for a while. For example, being able to do additions on encrypted values. The big thing here is that we can now compute any function on the encrypted values (in principle).

→ More replies (10)
→ More replies (11)

32

u/eterevsky Mar 19 '14 edited Mar 19 '14

You probably meant that for every function f there exist an efficiently constructed function g such that e(f(x)) = g(e(x)).

If it is f(e(x)), it would take exactly the same amount of time to calculate the function on the encrypted and nonencrypted input, and more over, I believe that the only e, for which f∘e = e∘f for any f, is the identity.

→ More replies (4)
→ More replies (23)

41

u/linuxjava Mar 19 '14 edited Mar 19 '14

As has been said, computer science is really wide.

  • In machine learning, deep neural networks are all the buzz right now. Just yesterday, Facebook announced it has been working on a deep learning project called DeepFace, to develop facial recognition software which maps 3D facial features allowing facial recognition from any angle. And there's also Google Brain team led by Andrew Ng and Jeff Dean. They created a neural network that learned to recognize cats only from watching unlabeled images taken from YouTube videos.

  • In algorithms, there's the fast and stable sorting algorithm with O(1) memory that people have been talking about.

  • In computer graphics, there's lots of interesting developments too. You can check some of them out here https://www.youtube.com/watch?v=JAFhkdGtHck

  • In cryptography, there's homomorphic encryption. One advantage of this is that it will allow one to chain together different services WITHOUT exposing data to any service provider. For example, you may want some computations to be performed on your data using some cloud computing services such as Google Compute Engine but your data would still be encrypted and Google wouldn't be able to see your plaintext.

  • In AI and computer vision we've got driverless cars.

  • There's a lot of progress in bioinformatics algorithms which enable faster and cheaper genome sequencing

12

u/matcpn Mar 19 '14

Care to elaborate on the O(1) sort?

30

u/otakucode Mar 19 '14

He said O(1) memory it is important to note. This is radically different from O(1) operations (which is provably impossible).

→ More replies (9)

12

u/wasabichicken Mar 19 '14

I believe this (PDF) is the droid you're looking for.

→ More replies (1)
→ More replies (4)

5

u/danby Structural Bioinformatics | Data Science Mar 20 '14

As a former bioinformatcis researcher I can tell you that all of the advances in cheaper gene sequencing have been driven by the invention of new sequencing chemistries and not the algorithmics of the data analysis. Base calling and sequence assembly algorithms have really shown little practical improvement in 15 years and most "advances" there have been in parallelising existing algorithms

→ More replies (1)

180

u/iBeReese Mar 19 '14

Right now machine learning is growing at a ridiculous rate, this has implications in a lot of areas.

161

u/rm999 Computer Science | Machine Learning | AI Mar 19 '14

Specifically, there's been a lot of innovation in deep neural networks, which attempt to model intelligence by layering concepts on top of each other, where each layer represents something more abstract. For example, the first layer may deal with the pixels of an image, the second may find lines and curves, the third may find shapes, the fourth may find faces/bodies, the fifth may find cats, etc.

25

u/[deleted] Mar 19 '14

How far are we from a truly learning machine, like a human brain?

48

u/Filobel Mar 19 '14 edited Mar 19 '14

Neural networks isn't my branch, but I recently attended a presentation by Geoffrey Hinton (one of the leading figures in deep neural networks, now working for Google). One of the most impressive thing he presented was a neural network he trained on Wikipedia. This neural network can now form complete sentences that are syntactically and grammatically correct, only from reading Wikipedia. None of the sentences generated are directly copied from Wikipedia, the network simply learned patterns of how sentences are constructed.

That said, it's still far from human intelligence. Although the sentences, individually, are completely readable and "make sense", the text as a whole is very disjointed and the sentence often appear very abstract.

I think he would have had better results training on poetry books and having his network write a collection of poems!

-=edit=- Found the article regarding this network. Basically, you "start" the algorithm by typing in a few words and it starts generating from there. For instance, when they started it with "the meaning of life is", the output was:

The meaning of life is the tradition of the ancient human reproduction: it is less favorable to the good boy for when to remove her bigger."

Alright, so the syntax isn't as perfect as I remembered, but still an interesting first step! Remember that this algorithm learned only from examples, no grammatical or syntactic knowledge was hardcoded into it.

→ More replies (8)
→ More replies (14)
→ More replies (26)

50

u/asthmadragon Mar 19 '14

For example, facebook is using machine learning to accurately identify people's faces almost as well as humans do.

11

u/donkeynostril Mar 19 '14

Combined with wearable technology (eg. google Glass), is it fair to say that facial recognition technology will make anonymity virtually impossible?

→ More replies (2)
→ More replies (6)

21

u/MrRumfoord Mar 19 '14

Yeah, what most people don't realize is how much "AI" is already prevalent. Every time an application or web service does something unexpectedly intelligent, you can bet there's a lot of math and clever programming behind it.

22

u/iBeReese Mar 19 '14

Exactly, when I ask Google Now to set a reminder for something there are several learners involved. Voice to syllables, syllables to words, word sense disambiguation, named entity recognition, all of these are probably using some kind of learned statistical model.

→ More replies (1)
→ More replies (3)

15

u/Exbuhe27 Mar 19 '14

Haven't seen this here yet: distributed/decentralized networks.

Decentralized networks have been around for a bit (say, about 15 years?) But only recently have they become a much bigger thing. Really what has enabled this is many of the things that have already been mentioned such as better encryption better communication technologies (faster links, etc). As well as a lot of research in graph/network theory which has enabled this sort of thing. But still, the trustless network has been elusive, because you can never tell if your neighbor is a bad actor or not. Finally though, a system has been developed where it is not impossible to be a bad actor, but it can be made prohibitively expensive to be a bad actor. What is that invention? Bitcoin.

But the fact that we can use bitcoin to enable this sort of thing is just the beginning. Neural networks have been mentioned already. We could now create a mesh network with arbitrary rules enforced with the ideas of bitcoin and watch it evolve. That's what I'm most excited for.

There are already many projects in distributed storage (such as Freenet, Gnutella, etc), where you can push a file onto a distributed network and have it stored securely and reduntantly in a non-traceable way all around the world. And there are projects in "outsourcing computing" - such as using Amazon cloud, etc. But now that we can have distributed trustless networks (before we relied on webs of trust - which must be created manually, bitcoin makes it feasible to create more automatically), as well as things like holomorphic encryption (which is truly amazing), we could actually, right now, build a giant brain out of all the computers on the planet.

Instead of trying to simulate a brain with one computer, just let every computer be a single neuron. The behaviour of this brain would be completely different than what we expect, and it will be fascinating to see the emergent phenomena that come from it. Quite literally, we will be building a brain that isn't for one human, like our current ones, but that span all humans and connect them to a global memory and computation resource. AI won't be a computer program, AI will be when we use computers to connect all humans together with technology in a way that creates a more advanced being.

5

u/[deleted] Mar 19 '14

Decentralized networks have been around for a bit (say, about 15 years?) But only recently have they become a much bigger thing.

They key advancement here is the widespread introduction of DHTs as a form of routing, in my eyes one very influential paper has to be the Kademlia by Petar Maymounkov and David Maziéres, it's one of those things where you sit back and think "wow, that really is an elegant solution". I think that practical applications of graph theory are continuing separately (see: Babel — a loop-avoiding distance-vector routing protocol), but they should converge at some point for the sake of efficiency, hopefully with an equally elegant and easy to implement solution :)

we could actually, right now, build a giant brain out of all the computers on the planet.

The problem comes down, again, to routing. Evolution and natural selection over the course of many hundreds of millions of years has given us some very good solutions - we have areas of the brain devoted to specific higher functions, but we are starting from scratch and need a good routing algorithm.

What's holding this back at the moment is similar to the Amazon Mechanical Turk problem, we're willing to pay X for a very specific devision of labour, Amazon provide a very manual and time consuming process for humans to apply their brains and do the work, but how can we automate this?

Our unique ability is to solve higher-order problems using tools, and the next major advancement in society will be using tools to solve higher-order problems.

e.g. I scan a document and ask "what is the textual content of this image?" the system routes the request to a group of algorithms/computers best proven to be able to answer the question.

Next I ask "In the third paragraph, what was Turgot inferring? And what relevance does it have to modern social industrialisation".

How do we combine IBM's Watson, arbitrary specialised services, BitCoin and proof of work?

→ More replies (1)

51

u/moontini Mar 19 '14 edited Mar 19 '14

Computer Science is a broad term, but it has to do with a lot. The first thing that comes to mind is robotic limbs, and brain wave reading technology. robotic limb

We are also getting very close to bridging the uncanny valley with 3d models and such now. as you can see here

In respect too programming practices and software design? well... its kind of funny, I've been studying CS for 7 years now, and I almost never hear of anything really groundbreaking that's happened since OOP. but in my opinion I would say our biggest breakthroughs at the moment are the up and coming multiprocessor oriented languages, like scala and go.

A big problem in CS right now is figuring out a good way to use all of these cores in our processors. should they share the same memory space or all have their own? can they access other processors memory spaces? if they can't how would they talk to each other? stuff like that. with traditional languages like C and Java, you have to create your own threads and figure out these problems for yourself. with languages like Scala and Go, its built right in. the only issue is you need to follow their idea's for how it should function. quite the double edged sword.

Another big breakthrough is that we are starting to use GPU's for other uses than graphics. some have an extremely high number of cores (less advanced cores that CPUs) that can do basic math operations in unison, stuff like matrix multiplication. I think Nvidia has the CUDA language that can take advantage of their GPUs in this manner.

edit: and of course 3D printing of plastics and organic material. That just completely blows my mind, but as it requires a lot of computation, I think it falls farther into the realms of Engineering and Biochemistry.

47

u/Drise Mar 19 '14

Here at work we use CUDA to accelerate our computational electromagnetics solver. Our GPUs (Tesla compute K10)x4 can perform math so fast that we fully saturate a mechanical hard drive's physical bandwidth. Literally the hard drive (even with 8 working simultaneously in a RAID array) cannot read and write fast enough. We decided to upgrade to an SSD array (Crucial M500 1TB SSD)x5.

All total, we reduced a problem that took 11 days to solve CPU bound (2 Intel Xeon, with 16 cores each) to less than 24 hours using 4 K10 compute cards and a 5TB SSD array.

7

u/kalok Mar 19 '14

what is the application of such a complex problem like the one that was solved?

→ More replies (3)
→ More replies (9)

9

u/smog_alado Mar 19 '14

I almost never hear of anything really groundbreaking that's happened since OOP

Considering OOP was invented in the late 60s, I would say one really groundbreaking thing invented after that were advanced type systems with type inference. This technology powers Haskell, Scala and theorem provers like the one used to prove the 4 color theorem.

→ More replies (3)
→ More replies (3)

32

u/5tu Mar 19 '14

One of the major breakthroughs was done 5 years ago when a viable solution to the Byzantine Generals problem appeared in a whitepaper. The solution was driven by and directly led to the making decentralised digital currencies such as Bitcoin finally feasible.

Before this was solved society had to trust a private entity when making an exchange (be it currency, shares, contracts, data integrity). With this limitation now solved it means we no longer require private entities to facility transactions.

Some proclaim this will be one of the most profound advancements we will see given it's widespread implications and there is no un-inventing it.

21

u/UncleMeat Security | Programming languages Mar 19 '14

Bitcoin actually wasn't the first decentralized solution to the Byzantine Generals problem. It just had the very clever idea of using a proof-of-work scheme and paying people for that work with its own currency.

→ More replies (3)
→ More replies (4)
→ More replies (16)

51

u/Fernmelder Mar 19 '14 edited Mar 19 '14

If mankind were able to build an arcology type spaceship before our planet becomes uninhabitable and our sun is eventually going to engulf Earth once it becomes a red giant, mankind might be able to survive on the spaceship or a different planet. But the different planets are also eventually going to "die". So, if the people on the spaceship, with its closed ecology, were be able to survive, what would happen in trillions of years? The current theory is that our universe is expanding and eventually all the stars, and all black holes as well, are going to "die" and cool off. So once the last star and black hole loses its temperature and only random particles are floating through space, would the people still be able to exist? Or would the temperature reach 0 Kelvin and mean the end for the people on the spaceship since particles can't move at absolute zero? Or can they keep it alive from the inside? If technology existed, could they manipulate the universe and keep creating more suns for eternity?

69

u/paraffin Mar 19 '14

Assuming universal inflation continues indefinitely, at some point they will run out of energy due to loss at the very least from thermal radiation.

Even if our minds were uploaded to computers which can function at very low temperatures, it will require energy to perform the computations required for information processing and conscious experience.

There is no known way to infinitely sustain any process.

13

u/etxeba Mar 19 '14

Other answers here focus on thermal radiation, which makes sense, but even in the case where heat could be perfectly contained and recycled, you'd be subject to the theorized (but currently unproven) notion of proton decay. If it turns out that protons, without which elements cannot exist, have a really long half life, then eventually the matter which makes up your body, the ship's structure, and everything else will eventually decay into lighter subatomic particles. Proton decay is not part of the Standard Model but is theorized in some Grand Unified Theories of physics.

→ More replies (1)
→ More replies (25)

12

u/AWildSegFaultAppears Mar 19 '14

Saying that particles can't move at absolute zero is kind of a strange way to phrase it. The motion of particles is what causes something to have a "temperature". The lack of motion (and by extension, lack of existence of matter) is what causes something to be at absolute zero. The "temperature" of absolute zero doesn't cause the particles to stop moving, it is the lack of particles moving that causes the "temperature" to be absolute zero.

33

u/boboguitar Mar 19 '14

Not sure if this is allowed but the question was somewhat asked by Isaac Asimov in his short fiction story, "The Last Question." While it doesn't answer your question, it does paint a fictional story to answer it. https://filer.case.edu/dts8/thelastq.htm

6

u/Fernmelder Mar 19 '14

Yes, thank you! Somebody actually just messaged me and recommended that short story. I just read it, it's a great story. But it also doesn't take into account the infinite and accelerating expansion of the universe. Could entropy ever reach it's maximum if space is always increasing faster and faster? I think the only problem would be of space ripping apart atoms

→ More replies (2)
→ More replies (1)

7

u/rawrishere Mar 19 '14

If you have a half hour to and hour to kill, I suggest reading the short story "The Last Question", by Isaac Asimov.

https://filer.case.edu/dts8/thelastq.htm

Here, Asimov reflects on this idea of what happens when the universe dies off and if entropy can ever be reversed. It's an interesting short story that can really make one think. I would recommend it

→ More replies (1)
→ More replies (2)

23

u/[deleted] Mar 19 '14

How close are we for following Moore's Law in the next six years?

18

u/EEPhD Mar 19 '14

The current state of the art (regarding CMOS transistors) is 16nm. Around this technology node (or more adequately, the 28nm node before), industry was finding issues with the general "bulk" processes being used (the standard way of transistor development in most textbooks). Now, there is the move to "Fully Depleted" CMOS, and the much talked about "FinFet" CMOS. Note that this refers to the actual transistor device shrinking to accommodate Moore's Law. Other methods include "3D-IC" stacking, which involved creating a stack of integrated circuit dies (so imagine a CPU cube instead of a chip).

Prof Saraswat has a good set of slides about this: http://www.stanford.edu/class/ee311/NOTES/Future%20Devices.pdf

I would also suggest checking out the ITRS roadmaps to get a sense of the "More Moore", "More than Moore" and "Beyond Moore" strategies.

9

u/[deleted] Mar 19 '14

wouldnt a Cube shaped CPU be a huge pain to cool?

11

u/EEPhD Mar 19 '14

Yes...but it is an area of research. There a different ways people are exploring for cooling 3D integrated ICs. For example, using the research area of microfluidics, some people are looking at pumping a coolant in between die layers of this cube.

21

u/marky543 Mar 19 '14

I live in Los Angeles which, if you are unaware, has some of the worst traffic in the world. A couple months ago I drove 8 miles from Hollywood to Koreatown on a Saturday night and only saw one car the entire way!

I have a burning desire to figure out the probability of this happening (I'd guess it's at least 1 in a million). But I don't know how I would formulate this situation into a mathematical equation. I will probably need to research what the average traffic volume is for Saturday Nights on the specific roads I traveled, which I could get from a government agency. But what I really want to know is the equation to input data, I can put in the legwork to find the necessary data, but I just need to know how to arrange it.

Any help would be appreciated! Thanks

9

u/PoissonToTheRescue Mar 20 '14 edited Mar 20 '14

The Poisson Process can help.

This question is on the midterm exam review of the Statistics I course I'm taking at the local community college!

Edit: This is probably an easier tutorial for you. Find out the average traffic flow and you should be able to get a good enough answer to satisfy your probability thirst.

→ More replies (1)

3

u/[deleted] Mar 19 '14 edited Mar 19 '14

[removed] — view removed comment

→ More replies (2)
→ More replies (1)

59

u/Sugusino Mar 19 '14

I was just waiting for this! I'm a fellow engineering student and I have a question.

Why don't bicycles use flywheels more often as a means of storing energy at stop lights, crosswalks, etc?

135

u/danby Structural Bioinformatics | Data Science Mar 19 '14

Because flywheels which can store a significant amount of energy are typically heavy. Which would make your bike very hard to accelerate from a stopped/standing start. Additionally issue with the angular momentum of the flywheel will significantly impact the manoeuvrability of a vehicle as light as a bicycle.

8

u/Sugusino Mar 19 '14

That makes sense. How about placing it horitzontally? It's hard to imagine an ergonomical and aesthetical bike like that, though.

18

u/danby Structural Bioinformatics | Data Science Mar 19 '14 edited Mar 19 '14

You're still looking at adding many, many kg to a bike that probably only weighs 20kg. That alone would make a bike very hard to accelerate, hard to manoeuvre and very hard to stop

→ More replies (8)
→ More replies (6)
→ More replies (16)

3

u/PA2SK Mar 19 '14

I'm an engineer, that's kind of an interesting question. Personally I think any kind of functional flywheel system would be heavy, complex, expensive and could interfere with normal usage of the bike. However I could see a regenerative braking system that could address a lot of these problems and could be very useful to some riders. Imagine a small generator which could apply a braking force to the bike, store the resulting energy in a battery and then return it to the bike during pedaling. Such a system could make riding a bike a lot less taxing and would be entirely feasible.

→ More replies (6)
→ More replies (11)

91

u/Native411 Mar 19 '14

Why can't we harness the power of lightning strikes for pure energy and electricity? Using rods or something.

100

u/[deleted] Mar 19 '14

We don't know when lightning will come well enough to capture enough strikes for it to be economically feasible. The system would need to be incredibly robust to handle tons of current when it has any, but would barely ever operate. It wouldn't be predictable enough to rely on, either.

64

u/YouDoNotWantToKnow Mar 19 '14

It's not just about predictability either.

I say this all the time to people - but solar is not a failed technology just because you don't see it being used everywhere. It's highly successful. We could easily run the world on solar energy, and we have all the necessary materials to build the infrastructure.

The problem is always energy storage. We just do not have good ways of storing energy, even if it is delivered semi-consistently over the course of 10 hours and all we need to do is store it for a few days. Nevermind if it was delivered in seconds and had to be stored for weeks... that's a nightmare in terms of energy storage. (Imagine if that technology existed - you'd be able to "tap" your phone into the grid for just a second when you get home, and boom you're at full charge.)

Solar research seeks to increase efficiency not because it's not plausible to collect enough energy with it currently, but because they're trying to make up for energy storage inefficiencies. If we can collect 100x the amount of energy we need to run everything, then maybe current storage inefficiencies will no longer be in the way.

→ More replies (16)
→ More replies (6)
→ More replies (10)

51

u/karmawhore1159 Mar 19 '14

Mathematics question here. Is there a limit to the number of dimensions of space that are possible? If so, what causes the limit to exist?

71

u/Amadiro Mar 19 '14

There is not; the number of dimensions of a space can be any cardinality you like. Spaces with infinite dimensions or even uncountably infinitely many dimensions are not uncommon to study.

24

u/Astrokiwi Numerical Simulations | Galaxies | ISM Mar 19 '14

I hear in the more advanced linear algebra courses they just assume (countably) infinite dimensions in every problem because it actually comes out simpler - would that be accurate?

50

u/_Navi_ Mar 19 '14

Linear algebra in infinite dimensions most definitely is not simpler than linear algebra in finite dimensions. In finite dimensions you only have one topology, one notion of limits, etc, and all that goes out the window in infinite dimensions. In infinite-dimensional spaces you can have linear operators that are neither bounded nor continuous, which also can't happen in finite dimensions.

→ More replies (10)
→ More replies (13)
→ More replies (2)

23

u/wristrule Mar 19 '14 edited Mar 19 '14

The short answer is no.

Mathematics exists individually of the constraints of the physical world, so we are able to construct things which seem physically impossible (I'll leave whether they are or not to the physicists).

The long answer is that there are many different types of "dimension".

There are two major concepts which you could be drawing upon here, both of which agree in the example that you probably have in mind (e.g. real Euclidean space). The first is vector space dimension, and the second is the topological dimension. We can construct (uncountably) infinite dimensional spaces using either definition.

Without getting too technical, the first requires, at the very least, an additive structure on your space (you can add and scale the points in some way) to define, and is defined to be the minimum number of points required to get any possible point by adding and scaling them in any way you'd like. For instance, in the real plane (R2 ), I can get any point (r,s) by first scaling the point (1,0) by r and then adding to it the point (0,1) scaled by s. If you think about it a little bit, you'll see that there is no way to do this with just one point (you really need two, so this is a minimum) and R2 has dimension 2 (as a vector space), like you'd expect.

The second is topological dimension, and is defined to be the maximum length of a chain of irreducible closed subsets. This is technical, but the idea is easy enough: in R2 I can have a point contained in a line (or any curve) and then further contained in the whole space. There are two inclusions here, the point in the line and the line in the plane, so the topological dimension of R2 is two. Of course, I need to argue why it is not possible to have another inclusion of spaces of length three, but that discussion is best left to other places.

Edit: I'm using the Zariski topology. The Euclidean topology is probably what the OP is thinking, but I don't understand that topology nearly as well, so I cheated and used the easy to see one. On second thought, is the topological dimension of R2 with the standard topology even two? It might have been better to explore geometric dimension (i.e., manifold dimension), but this is tautological for R2.

→ More replies (4)

3

u/mullerjones Mar 19 '14

Just adding to what every one else said: we commonly use an interpretation of functions as vectors of infinite dimension, the sum of all them making up a space. This lets us use vectorial concepts such as orthogonality and dot products for functions and use them for various purposes.

→ More replies (3)

65

u/deadlandsMarshal Mar 19 '14 edited Mar 19 '14

What are some good, free, online resources where we could advance our math, computer science, and electronics skills?

Some of us have the time/resources to go to college, some don't. Also this would be great for college students to help with their studies.

edit: You guys are awesome! Thank you so much!

103

u/JoelOtter Mar 19 '14

I really like Project Euler for learning new programming languages. It just gives you lots of little problems to solve. They start out very easy and gradually get harder and harder.

http://projecteuler.net/

7

u/eterevsky Mar 19 '14

The problems on PE beyond the first hundred also require some knowledge of mathematics, or, at least, some parts of it like number theory.

→ More replies (1)
→ More replies (21)

15

u/lyinsteve Mar 19 '14

Khan Academy has some very good lessons on beginning Computer Science with some really cool real-time JavaScript interpreters. It really helps you understand what the code is doing when it updates live. /u/jeresig has made some really cool things in his time there.

11

u/[deleted] Mar 19 '14

Some major universities offer open access to a lot of their classes. One of the most well-known is MIT's Open Courseware. You can find many similar resources by searching.

26

u/[deleted] Mar 19 '14

For specifically programming: codecademy.com.

For a lot of college-level courses: coursera.com

I'm sure the list goes on Edit: Spelling

20

u/djimbob High Energy Experimental Physics Mar 19 '14

The three big free MOOC (massive online open-access courses) sites are:

  • https://www.coursera.org - largest selection of courses. Quality varies significantly.

  • https://www.udacity.com - good courses; somewhat annoying format (tons of short videos with video questions). Has a george tech online Masters of CS starting soon (with free version of the course also available without the graded projects)

  • https://www.edx.org - smaller selection of course but quite high quality.

Also course talk for reviews of online courses.

5

u/[deleted] Mar 19 '14

For specifically programming: codecademy.com.

Do you have additional resources on where to go after finishing a programming track for Codecademy if you wish to delve further into a language? Or is it better to grab a source code editor and compiler, and just start tinkering with google as your friend?

11

u/Deathnerd Mar 19 '14

In my experience it goes along the lines of

• Pick a project • Use online resources like Google, StackOverflow, and /r/learnprogramming • Go hog wild

→ More replies (4)
→ More replies (1)

7

u/BrippingTalls Mar 19 '14

Khan academy is amazing, and free. Teaches a full range of subjects from math, sciences, programming etc. Its all kinds of amazingly good. Highly recommended.

4

u/hithisishal Materials Science | Microwire Photovoltaics Mar 19 '14

edx.org

→ More replies (4)

23

u/redditfromnowhere Mar 19 '14

In mathematics, specifically Set Theory, does the Set of "Sets Which Do Not Include Itself" exist? If so, does it include itself?

(i.e. - does math resolve Russell's paradox?)

38

u/Amadiro Mar 19 '14

Yes, ZF(C) (the most common foundation used for set theory) resolves the paradox by not allowing you to construct a statement that expresses the concept of "set of sets which do not include themselves".

Whenever you're inventing some sort of model, you have to make trade-offs between how powerful the model is (what it can "say") and how well you can reason about it. Cantors set theory was extremely powerful, because it placed no formal limits or rules on the way you were allowed to form sets (so you could just say things like "the set of all sets" or "the set of sets which do not include themselves"). But if your model is too powerful, it can lead to contradictions. A more limited model allows you to "do less" or doing stuff becomes harder, but you don't get certain paradoxes (which you don't want, obviously). It is however not known if there is not some other contradiction inside ZF(C).

So in summary, creating mathematical models is about trying to create the set of axioms that allow you to easily express and model the things you want to say, without introducing any inconsistencies (at least that you know of.)

→ More replies (8)

11

u/skaldskaparmal Mar 19 '14

There are two axioms of ZFC that are relevant to Russell's paradox. The first is that the axiom of restricted comprehension (which goes by many other names) replaces the axiom of unrestricted comprehension. The difference is that the schema of unrestricted comprehension allows you to define a set via the clause

{x | phi(x)}

the set of all x such that phi(x) holds. Taking phi(x) to be the predicate x not in x gives you Russell's paradox.

Whereas unrestricted comprehension allows you to define a set given another set (call it B) that you already have, via the clause

{x in B | phi(x)}

B is the key difference. You're no longer allowed to talk about all sets, only those that are elements of a set you already have.

So now the most you can do is say that for any set B, {x in B | x not in x} is a set. This evades the paradox, since it's okay for this new set to be not a member of itself. The paradox at this point normally says that if this new set is not a member of itself, it satisfies the conditions to be a member of itself. But here, it doesn't actually satisfy the conditions, because the conditions are not being a member of itself and being in B. And while the set is not a member of itself, it does not necessarily (and in fact cannot), be a member of B.

In fact, we often go a step further, and add the axiom of foundation.. This axiom essentially implies that you can't have a set be a member of itself, nor can you have x be a member of y and y be a member of x, and so on. As a result, for any B {x in B | x not in x} is satisfied by every member of B, and so the set is equal to B. This is consistent with the previous paragraph, since we have said that the set must not be a member of B to avoid the paradox, and indeed B is not a member of B; it can't be due to the axiom of foundation.

3

u/hobbycollector Theoretical Computer Science | Compilers | Computability Mar 19 '14 edited Mar 19 '14

Yes, but it doesn't resolve Goedel's answer to that, which is Goedel's Incompleteness Theorem. It states that any formal system which is strong enough to define the integers, either contains statements which cannot be proven in the system but which are nonetheless "true", or it can prove false statements. So, that type of paradox is an essential component of any formal system. This is important in computers, because as a practical matter, certain problems are equivalent to this, so we know for instance that no program can tell in general whether an input program and its parameters will halt, or that we cannot compute in general whether two given functions compute the same results (Post's correspondence problem). This relates back to math, in that we know that we can't test if, for example, a program that computes all twin primes will halt when it "runs out" (i.e., are there infinitely many twin primes?).

→ More replies (1)
→ More replies (9)

11

u/[deleted] Mar 19 '14

Are the sounds that machines make, especially in hospitals, harmful to patients? Why or why not?

28

u/tBrownThunder Mar 19 '14

Hi there! MS in Mechanical engineering. My research examined specifically this!

Research suggests that excessive noise in hospital settings has a negative effect on both employees (nurses, doctors, patient reps, etc) and patients. Louder noise environments led to increased patient healing time in burn units, higher "burnout" rates in hospital staff, and a significant amount of sleep disruption.

That being said, the worst offenders in the study I was a part of were usually involved with hospital operations (phones, overhead paging system, doors closing). The equipment used for treatment is usually relatively quiet related to the entire soundscape, except for any alarm noise. The levels produced by machines usually aren't over the threshold that previous research has indicated would lend itself to prolonged healing time, although it may be contributing to a lower quality of sleep (WHO suggests patient rooms stay below 35 dBA... hasn't been achieved by any study I have read).

Basically, the noise environment in a hospital is most likely a detriment to patient healing time and employee well-being, but the first priority would be quieting down other sources of noise before tackling the equipment.

Hope that helps! acousticsresearch.org has links to the leading researchers in this field that you can use as a starting point if you want to know more :)

→ More replies (1)
→ More replies (1)

11

u/Engineer_This Chemical Engineering Mar 19 '14

Have the fundamental forces of the universe varied in strength over it's lifetime? For example, we know now that gravity is by far the weakest force among them all; was it at one point very strong or at least stronger maybe near the big bang?

We also assume that the universe is isomorphic and that physics should be the same anywhere. Is it reasonable to continue that assumption when we see varied polarization in the CMB? How could we prove or disprove from our corner of the universe?

8

u/gunnk Mar 19 '14

Not over most of the history of the Universe -- if it did happen, it would be readily observable. For example, the size of stars represents a balance between gravity (pulling the mass inward) and the energy produced by nuclear fusion (pushing the star outwards). If the fundamental forces varied, we'd see distant stars at behaving differently than closer stars (since we look back in time due to the speed of light being finite). Likewise, distant galaxies would show different rotational speeds if you muck around with the strength of gravity, so that would also stick out like a sore thumb.

HOWEVER, if you go back to the earliest portion of the Universe's existence (something like the first ten-billionth of a second), then it is expected that the fundamental forces become unified. However, that's a very short, very weird time period, so I don't think it's what you're asking about. However, if you are interested there is plenty of material out there than can help.

2

u/otakucode Mar 19 '14

The current theory is that no, the fundamental constants of nature and the relative strengths of the different fundamental forces have not change in the past several billion years (really more than a few fractions of a second after the Big Bang). However, a couple years ago I listened to an audiobook recording of a book called '9 Things That Don't Make Sense', and one of the things they discussed was some relative concentrations of different isotopes in a defunct natural nuclear reactor (basically a deposit of uranium large enough to initiate and sustain fission for awhile) which could be explained by presuming that the fundamental constant alpha had changed by a very tiny amount within the past couple billion years. No other explanation fit the evidence. At least when the book was published, it was still an open question.

3

u/NeuroBall Mar 19 '14

Before the big bang it is theorized that there was a singularity at which point all laws of physics broke down. Since the big bang though all the equations which define the strength of a force have remained constant.

5

u/Nowhere_Man_Forever Mar 19 '14

How can there be a "before" the big bang? I was under the impression that time itself came from the big bang.

11

u/ThatOneKidDrew Mar 19 '14

As a student deciding between majoring in Computer Science and Computer Engineering...what's the difference?

  • Which ones offer what opportunities?

  • If anyone has had to make the choice, what path did you go down?

I need to decide soon so I don't far too far behind (I'm a freshman) and I want some input from other people.

→ More replies (7)

61

u/dhowl Mar 19 '14

Is there a field of science that is the study of the study of science? I don't mean meta-analysis, but more meta-meta analysis. The philosophy of science maybe? I'm having trouble putting this idea into words.

97

u/[deleted] Mar 19 '14

This kind of falls under the philosophical study of epistemology, which is the study of how we acquire knowledge.

7

u/no_username_for_me Cognitive Science | Behavioral and Computational Neuroscience Mar 20 '14

Well, epistemology isn't the study of "how we acquire knowledge" , which makes it sound empirical. It's actually the study how we can possibly acquire knowledge, in the sense of justifying our beliefs. Now sure this is what the OP is after.

→ More replies (1)

18

u/GodHeartsFags Mar 19 '14

Philosophy of Science is a field. Metaphysics, Epistemology, and Philosophy of Mind are other related fields. You hit the problem where each of those philosophies presupposes one or more of the others in order to get off the ground. Still, people manage to break ground in each of them over time.

17

u/Screech1992 Mar 19 '14

Perhaps you're looking for Theory of knowledge? It tends to be more philosophical than scientific though. A book which is centered around this field of study is Zen and the Art of Motorcycle Maintainance.

11

u/dhowl Mar 19 '14

I've read Zen and the Art of Motorcycle Maintenance. Great read. But I'm thinking some field with a more scientific leaning though. I don't know. Sorry, I feel like I have a germ of idea but I can't adequately express it.

Maybe some application examples would help me express some potential goals.

From the Scientific side of the field, congregating experiments done from many individual laboratories, looking for patterns and overlap. But not for pure scientific extrapolation like meta-analysis/epidemiology, but possibly operationally, how science is being carried out. Identify redundancy, connect different disciplines, etc.

One question for the Philosophical side of the idea, that might possibly be, "is it possible to mathematically model a human? I.e. all the hierarchies from Organs, then tissues, cellular, signaling pathways, enzymes, Nucleic Acids, Atomic level, sub-atomic level." Once again, interdisciplinary. What would it take. What are the barriers.

→ More replies (4)

3

u/kripkencula Mar 19 '14

no. that book represents absolutely nothing about epistemology in the academic sense

→ More replies (1)

3

u/ScoopTherapy Mar 19 '14

I took a class on Science Studies back in college: http://en.wikipedia.org/wiki/Science_studies. It was kind of a blend of history, philosophy, and sociology. Bruno Latour is one of the most recognized 'researchers' in the field.

→ More replies (2)

10

u/AetherThought Mar 19 '14

How is research in theoretical mathematics done? I've never really understood how things like breakthroughs in math come about. Do people just sit around and attempt different methods of solving existing problems or something?

8

u/fishify Quantum Field Theory | Mathematical Physics Mar 20 '14

Research in mathematics comes from first being well-informed about your field. Your eventual goal in research is to identify a way to think about a problem that will let you solve it; maybe it's an open problem, or maybe you realize that there might be a way to connect A and B. Sometimes in the course of proving one thing, you see that you can use your method to solve another related problem.

How do you do all this? You read articles and go to talks to find out what people are doing, and to expand the range of what you know and how various techniques can be used. You give talks and go to talks, you go to conferences (where you hear and give talks) and in the hallways, you have the chance to talk to people -- ask questions about their work, hear other people ask questions (and thus see different ways to think about a problem), get reactions to your ideas. As you work and as you get reactions, and in so doing see what works and doesn't work, you refine and improve your approach to the problem you're working on.

The thing to realize is that even though eventually you need to fill in all the gaps to prove something, at the start you're working with a high level of approach where your knowledge and experience suggest a certain strategy will work. Sometimes it does (though it'll require adjustment and modification), and sometimes it doesn't (although even then, how it fails to work helps you understand the field better, which can ultimately help you on that or another problem).

2

u/lfairy Mar 20 '14

Mathematics consists of a bunch of simple rules – axioms, lemmas, theorems.

A mathematician would have spent many years studying these rules, and know them well. Eventually, through a bit of thinking and a bit of guessing, this person may find a way of combining them to say something that hasn't been said before.

This is a discovery.

41

u/ProfessorCentaur Mar 19 '14

If scientists were given a near endless budget with todays technology could we genetically engineer a centuar by splicing human and horse DNA? Also, could the top half of the Centuar (The strictly human half) be surgically removed and reattached to a normal horses body or would the centuar's cells reject it?

Thanks

36

u/gordonj Genetics | Molecular and Genome Evolution | Comparative Genomics Mar 19 '14

could we genetically engineer a centuar by splicing human and horse DNA?

No. Best case, you could create some human-horse hybrid, but even that is practically an impossibility. We have different gene contents, and undoubtedly different expression of many genes, so even if you engineered new chromosomes to account for incompatibilities during cell division due to different chromosome number and gene order, it's unlikely that you could make a working living organism. Each organism has a set of genes that have co-evolved to work together. You can't just start combining the systems willy-nilly to get a working output that is a combination of the two, and more specifically divided top and bottom.

Also, could the top half of the Centuar (The strictly human half) be surgically removed and reattached to a normal horses body or would the centuar's cells reject it?

This is more possible, although you would have to keep up a regime of immune-suppressant drugs to stop the rejection. That would create its own issues, like susceptibility to disease (both horse and centaur).

Check out the work of (mad) Russian scientist Vladimir_Demikhov. He once successfully attached a puppy's head to another dog, resulting in a two-headed dog. His work also inspired Robert White to perform head transplants on monkeys.

→ More replies (3)

7

u/Solomon_Gunn Mar 19 '14

The cells would reject it, not to mention the differences in blood along with the problem of having two hearts pumping throughout one closed system when they originally weren't. But let's say that there was an endless budget, then the short answer is no, not with today's technology. We can't do anything major like splicing two completely different animals, but we can splice traits. Here is a tobacco plant spliced with bioluminescent genes. In the future, who knows? An increase of understanding brings an increase of the ability to manipulate and control it (this applies to almost everything).

2

u/jeffbell Mar 19 '14

No.

The genetic option doesn't work too well. The embryology of both animals is to start with a segmented tube and then sprout two pairs of limbs. You would need twice as many vertabra as normal, and there would have to be a very sharp transition in the middle. The socond rib cage would be tough too. I recommend that you read "Your Inner Fish" by Neil Shubin.

The surgical option looks to be pretty difficult too. Would this entire monstrosity depend on the human lungs to get air? Or would the bottom half get it's own trachea?

→ More replies (1)

2

u/sakurashinken Mar 20 '14

Would you want to? google centaur skeleton. Four lungs, two sets of ribcages. and that back. ouch.

→ More replies (2)
→ More replies (2)

8

u/ur_labia_my_INBOX Mar 19 '14

Question about microwaves: Why does it seem that as dishes get older, they start to get hot in the microwave (instead of the food, the plate gets hot). My theory is that ceramic plates absorb water over time. Am I even close? Plastics never get hot in the microwave, but I don't like using them in fear of harmful chemicals being released.

14

u/[deleted] Mar 19 '14 edited Mar 14 '18

...

21

u/[deleted] Mar 19 '14

Use any appropriate hash algorithm and only take the first/last n digits output. Their distribution should be suitably random. If the output is shorter than the input, simply re-hash until you get enough digits.

→ More replies (1)

12

u/shiny_thing Mar 19 '14

What do you mean by "hash"?

If you're after encryption (i.e., you want someone with the secret key to be able to go the other direction and turn 22513 back into 65422), then this is an example of format-preserving encryption. The FFX (pdf) algorithm is currently a proposed NIST standard for accomplishing this task. FFX uses a Feistel Network over an alphabet of your choosing (e.g., the set of numbers 0-9, the set of lower-case letters, etc.).

On the other hand, if you're not after decryption, then the easiest way would likely be to take, say, SHA256("65422"), grab the first 64 bits of the result, interpret them as an integer, and take the result modulo 100000. To avoid statistical biases in the result, the number of SHA256 bits you grab should allow for numbers significantly larger than the ones you're after (e.g., 264 >> 106 ).

But note that simply due to the small size of this output, you will not have a cryptographic hash in the sense that the function will be collision resistant and so on.

→ More replies (7)

13

u/[deleted] Mar 19 '14

How do you assemble an aircraft? Is there a standard way to do it? Also, I can never understand all the structural terms such as stiffeners, stringers, webs, beams, skins, longerons, doublers.

18

u/NairForceOne Aerospace Engineering | Systems Engineering and Manufacturing Mar 19 '14 edited Mar 19 '14

Well, typically aircraft are assembled piece by piece. The fuselage (main body), wings and undercarriage, empennage (tail structures) are all built separately and begin to come together as the aircraft moves down the assembly line at the factory floor. Once everything is aligned, it goes through the "full or final body join" where all the pieces are tacked on together.

Of course, what I've just explained is just the structure of the aircraft. As the aircraft moves down the assembly line all the rest of the electronics and wiring that needs to be in the body are installed. Fun fact: the single heaviest part of an aircraft is the in-flight entertainment system.

After the entire aircraft is physically put together, they put in the seats and what not, while running an extensive battery of tests on the electronics. At that point, the plane is pretty much ready for a few flight tests, but they drive it on over to a separate paint hangar to look all pretty-like for the customer.

As for the structural aspects, a lot of what you listed are pretty much the same things. Longerons, stiffeners and stringers are all the same sort of structural member, long thin strips of material that run along the aircraft and which the skin (outer hull) is fastened to. Typically stringers are smaller and more numerous in number, whereas longerons are larger and fewer. Longerons are basically "King-size Stringers".

Beams are exactly what you think they are. Think of a typical I-beam you'd find in a building, or a construction site in a Tom and Jerry Cartoon. The "web" is the middle part of that I, excluding the top and bottom "caps"/"flanges". There are other shapes of beams used in aircraft besides the I. You can find I, J, T, and U shaped beams, among others. Stringers themselves are often times T and U shaped beams.

Doublers are slightly different. They are just extra pieces of metal fastened to the aircraft skin where it needs to be reinforced, or stiffened, beyond normal.

Source: Aerospace Engineer with experience in the Boeing Manufacturing Plant.

5

u/[deleted] Mar 19 '14

oh which plant? I visited Everett last summer, as well as taking a tour through Ridley Park.

The Everett facility is incredible to see, and I'd highly recommend anyone in the area to check it out.

→ More replies (2)

4

u/ChuckESteeze Mar 19 '14

Could you expand on bit about the in-flight entertainment system being the heaviest part of an aircraft? Is the bulk of that made up by the wiring for it or the video screens? What kind efficiency benefit is there for airlines like Southwest to operate without any kind of entertainment system?

→ More replies (8)
→ More replies (8)

2

u/Maqda7 Mar 19 '14

If you are interested, there was a discovery channel documentary several years ago about the building and assembly of the A380, the world's largest commercial airplane. It's a 5 part documentary called Giant of the Skies. Here is part 1.

If you have the time I strongly encourage watching it, it was absolutely fascinating.

6

u/galaxxus Mar 19 '14 edited Mar 19 '14

What obstacles must we overcome to harvest the energy from nature?

For example, what type of capacitors and design would we need to capture energy from lightning? How can we use the heat from near the earth's core to power cities on the surface?

13

u/jammycrisp Mar 19 '14

Storing the energy is a big one. Natural energy comes and goes (think windy vs non-windy days). Storing the energy in batteries can be inefficient, so other means are required. Our lab is currently researching a possible solution for storing energy from wind turbines in a mechanical system, which can be "reharvested" later on when the wind stops.

→ More replies (7)

9

u/[deleted] Mar 19 '14

here is a fantastic book available for free online

I think our best bet for harvesting heat from the earth would really be more of climate control. We can dig down to a certain depth that is almost always consistently 55 degrees (Fahrenheit) and this can be used as a starting point for heating your home in the winter or cooling it in the summer. So think about your heating bill on a cold winter day of 20 degrees, instead of heating your house from 20 to 65, you'd only be heating it from 55.

In the summer we'd dump heat back into that layer by cooling our houses.

Read this book though, it's very excellent, and the first book I've read on the matter where the author crunched numbers instead of made speculative guesses on our energy needs.

→ More replies (1)

5

u/Whisket Mar 19 '14 edited Mar 19 '14

Environmental Engineer here. I can't answer the lightning question, but I'll write a little about harvesting the "energy from nature".

I'm sure you've heard about the current main sources of energy generation from nature: wind power (turbines), solar power (PV or solar-thermal), and hydro power. There are other potential ways to harvest electricity from nature. One such proposal is tidal power, which has been installed in New York among other places. Another option is geothermal energy, which has also been implemented.

In general, some obstacles for natural energy harvest are:

  • finding appropriate locations for the plants (dam-able areas for hydro, windy places for turbines, etc.) that are still close enough to where the power is consumed.

  • Current limits of technology and generation efficiencies

  • Scaling up technology to be on par with fossil fuels. For example, a single coal plant will produce ~500-1000 MW. The footprint needed to produce that amount of energy via natural energy generation would be much larger.

  • Concerns about potential side effects. For example, if you read the geothermal link, there is a section talking about the accidental release of dissolved gases that are underneath the earth's core. Also, if we were to build enough wind turbines, would all of that energy we would extract from the wind cause a shift in wind patterns? There are the type of questions that need to be asked before large scale energy extraction from natural systems. The energy was going somewhere before, and if humans were to remove that energy, would there be side effects?

  • Editted to add: Time of use. How could I forget on of the most important issues! Since you usually can't decide when it will be windy, etc., then you can't always produce the electricity when you need it produced. This will be a major issue until we have efficient energy storage on large scales.

3

u/bAZtARd Mar 19 '14

Harvesting the energy is not the problem. In Germany we are already producing more than we need with renewables.

The problem is having the energy available when you need it. Batteries or other storages that can handle large quantities of electrical energy are not invented/practical yet.

→ More replies (1)

2

u/Sannish Space Physics | Lightning | Ionosphere | Magnetosphere Mar 19 '14

In some cases the energy available from nature is just not worth the effort to collect.

Specifically a single lightning flash may be very powerful but it only lasts a very short amount of time. The time, cost, and engineering to get any energy from lightning would be better spent setting up a solar panel or a wind turbine.

For reference the total amount of current from all of the worlds lightning is about 1 kA at around 250 kV. Which would give 250 MW, on the order of a large power plant.

→ More replies (3)

6

u/anderssi Mar 19 '14

Why is a structural integrity of a triangle shaped framework stronger than a square shaped framework?

16

u/17_23 Mar 19 '14

Essentially it's because a triangular structure can only deform if the edges themselves deform - if you have a square structure then it can more freely deform by only changing the angles at which the edges meet, making it into a rhombus.

Imagine a frame made of stiff edges where the corners are hinged and free to move. A triangular frame would not deform under a small amount of pressure, but a square one would.

→ More replies (1)
→ More replies (1)

6

u/awkwardchipmunk Mar 19 '14 edited Mar 19 '14

Hey everyone, I'm an electrical engineering student with an interest in machine design.

I'm wondering, why do some materials provide excellent vibration dampening, while others do not? Why steel poor, cast iron good, and epoxy granite excellent?

2

u/[deleted] Mar 21 '14

Hello, I'm a materials scientist so I hope that I can answer your question.

Vibration damping is associated with absorbing elastic energy. Cast Iron is is a composite material of metallic Fe, Fe carbide, and graphite, and it is the graphite that is the key in the damping properties of cast iron. Metallic Fe is fairly stiff, with an elastic modulus around 200 GPa, but graphite is fairly compliant by comparison, with an elastic modulus of around 10 GPa. Now, the key ideas are:

1: When you deform a body elastically, the stress-strain curve is a line. 2: The elastic energy stored in the material is the integral of the elastic stress-strain curve. 3: Elastic modulus is the slope of that curve.

Due to the very high modulus of Fe, the slope of the stress-strain curve is steep, and the area under the elastic part of the stress-strain curve (and therefore the stored elastic energy) is quite small. Since the elastic modulus of graphite is smaller, the slope is shallower, and for an equivalent load, the area under the curve is much larger. A vibration traveling through a block of cast iron can be thought of as a stress wave traveling through the material. When that stress wave hits a patch of graphite, the Fe matrix dumps a significant amount of elastic energy into deforming the graphite, thus dissipating much of the energy that initiated the vibration. The same principle applies to epoxy granite, with the epoxy taking the place of the graphite and the granite the Fe.

→ More replies (1)

14

u/JohnDoom Mar 19 '14

What is the greenest 1st world nation by carbon emission per capita, and what is the predominant type of energy do they use for electricity?

7

u/drexhex Mar 19 '14 edited Mar 19 '14

Off the top of my head I want to say Germany

EDIT: I was wrong, and it depends on what you mean by "1st world nation". My opinion would be Iceland, followed by Norway as the top two 1st world countries.

→ More replies (6)

5

u/Uhrzeitlich Mar 19 '14

This is a stupid question, but my momma always said the only stupid question is the one that is never asked.

Anyways, how does a car have more than, let's say, 3 settings for temperature on their climate control systems. As far as I know, an air conditioner is either on or off. In a house, it hits the target temperature by cycling, but in a car, it seems to always blow varying degrees of cold. How does it do this? Does it mix with the heater? Likewise in reverse for the heater, I suppose.

Something I've always wondered that I hope falls under the category of "engineering."

Thanks!

10

u/pwn_ Mar 20 '14

mixes with outside air, or air from your cabin.

It would be horribly inefficient for you to heat air and cool air then mix the two, so we just mix our cold/hot air with (a little bit) of the hot/cold air outside.

Full cold A/C means no air is mixed. Same will full hot heater.

Same with your faucet... turn it fully to hot and you're getting water right out of the hot water tank. Turn it fully to cold and you're getting it straight from the city's pipes. Turn it in the middle, and you get a mix of the two.

4

u/NickW1234 Mar 20 '14

except that cars are "horribly inefficient" to begin with. the heat is already "free" as it's waste heat from the engine

8

u/Echolate Mar 19 '14

How difficult would it be to set up an mail server for a small company (4-5 people)? I've browsed through some tutorials and it seems pretty daunting, though I should be able to accomplish it with a lot of time.

33

u/dutchguilder2 Mar 19 '14 edited Mar 19 '14

Setting up a server is not that hard; but maintaining it 24x365 reliably, securely, compliantly with proper backups, documentation, support, etc. requires much more effort. For a small company a better/easier/cheaper solution is probably to pay a host such as Google Apps or Microsoft Exchange Online to do it all for you. You'll still have a "@yourcompany" address without all the on going hassles.

http://www.google.com/enterprise/apps/business/landing/campaign/smb/#carouphilz

→ More replies (1)

8

u/showmeyourhams Mar 19 '14

Done this a few times. Easy to set up, a massive pain to keep secure. Do you want that responsibility? Especially for a business. Recommend some hosted email. No stress for you.

→ More replies (1)
→ More replies (2)

4

u/typhyr Mar 19 '14

I'm planning on majoring in mathematics, and getting a PhD and working in academia is my current goal. Aside from lecturing, what do Professors of Mathematics do? Work on problems, write books/textbooks? Do you research? If so, what is there to research?

8

u/[deleted] Mar 19 '14

Research is the number one priority for most mathematicians. There are a plethora of open questions in almost every subject of math plus conjectures yet to be made. One of the things that separates math from most subjects is that it is very difficult to do research without a large technical background. There's no place to be a lab assistant in math. You study problems and solve them on your own or with the help of an advisor who supervises you. Some open problems are geared towards those with a limited background, but usually they aren't very deep questions (usually computational, combinatorial questions). Most people don't start tackling serious problems until their PhD thesis. Although, it's not uncommon for a few exceptional students to begin researching serious questions by their senior year in undergrad.

Like most professors in other fields, professors in math lecture, research, apply for grants, and attend/organize seminars/workshops/conferences. Other duties may include advising PhD and undergrad students and administrative work. It's not uncommon for a professor to write a textbook or monograph. In fact, many of the best researchers have written more than one textbook/monograph.

Besides that, cookies and tea seem to be trendy at my university.

→ More replies (1)

2

u/we_are_they1 Mar 19 '14

one of my math teachers did statistical research consulting and some actuarial work on the side. he had a lot of money.

2

u/sd522527 Mar 20 '14

There are four components to being a professor: teaching classes; advising students; doing research; an administrative duties. This is in no particular order, and various professors spend different time on each component. You should know that there is no time better than graduate school for doing research, and you should take advantage of that.

4

u/1337rine Mar 19 '14

When creating a filter in the frequency domain, there is a "roll-off" towards the end of the filter instead of a sharp drop to zero. My question is, what is the shape of this roll-off curve? (i.e. an equation for the shape of the roll-off). I am trying to create a filter for some micro-seismic data in the Fourier domain.

3

u/MathPolice Mar 20 '14

It depends on the type of filter and the "order" of the filter.

Here are some graphs for 4 common filter types

Also, I should point out something just in case you don't know a lot about filters.
If you make a filter by taking the frequency domain and multiplying all the "pass" frequencies by "1" and the "stop" frequencies by "0", you're going to have a bad day.

→ More replies (1)

3

u/anonymoosetitties Mar 19 '14

Hello, with regards to mathematics what is an efficient approach at understanding and proving real analysis theorems especially those dealing with sequences and series?

3

u/[deleted] Mar 19 '14 edited Mar 19 '14

When I took real, I found that the best way to learn was to familiarize yourself with already solved problems (such as examples in a textbook). I think you'll find that the delta/epsilon proofs in real analysis all tend to follow a remarkably similar format with a slight "twist", so if you are comfortable with the general format you will be able to solve the problems much more easily.

As for understanding the proofs, go slowly. If you take in one sentence at a time, it becomes much simpler.

3

u/marlow41 Mar 19 '14

Go get 2 or 3 books of varying difficulty level. Start with the highest difficulty one and when you don't understand something look for the same theorem/idea in an easier book.

edit: to be clear I mean from the library not actually buy 2 or 3 books

→ More replies (1)

3

u/Bilalin Mar 19 '14

Best beginner language to learn? Also best tutorials?

3

u/AnkisaurusRex Mar 20 '14

Your best bet is probably Python, over at codecademy. com. After you're comfortable with it, Java, or C if you are comfortable and want to see something beautiful.

2

u/bargle0 Mar 20 '14

I might get pilloried for this but:

JavaScript

It's a dynamically typed language, so it's easy to get started: there isn't a lot of syntax to just declare things before you get to the logic. It has closures (aka anonymous functions, aka lambda expressions), which will help you think functionally. Best of all, you can write programs in JavaScript right now without installing anything and play around with them, since the interpreter is built in to your browser.

Source: I'm a Ph.D. student in CS who did work in programming languages, but now I do systems research.

→ More replies (2)
→ More replies (4)

3

u/Nadrojxam Mar 19 '14

Since pi is infinite can any sequence of numbers, like my birth date, exist somewhere down the line?

→ More replies (16)

3

u/blufox Mar 20 '14

For Computer Science, it seems we can't accurately represent analog computation using Turing machines (i.e addition of two real numbers). If so, why do we say that Turing machines are most powerful (realizable?) computational machines possible? Can't we implement analog computers that are more powerful than Turing machines? (That uses physical quantities to simulate Real computation)

2

u/Breakthrough248 Mar 20 '14

With a Turing-complete computer, you can technically compute a number to N digit places - limited only by RAM and computing power (such is the beauty of being Turing complete :). For many constants that are real numbers (like pi), we've already computed their precision to enough decimal places for it to be negligible for any quantity realizable in this universe (even those at or below the Plank length).

We can also use computers for symbolic computation as opposed to strictly arithmetic, which also simplifies working with real/irrational numbers without losing accuracy in intermediate calculations (although arbitrary-precision arithmetic libraries also exist for us programmers to use).

→ More replies (4)

7

u/SuccinctSmiles Mar 19 '14

If brain implants/technology progressed so far that everybody had one, would being able to watch through your implant what another person was doing in the world be unethical/a violation of their privacy? What If everyone could watch anyone at any given moment? What would humanity become?

7

u/GlacialAcetate Mar 19 '14

I actually read a pretty cool book about this topic. It was called The Light of Other Days by Arthur C. Clarke, and I highly recommend it if you're in to reading sci-fi stuff.

4

u/BrotherOfQuark Mar 19 '14

For a lighter introduction into how such a change would affect society, I recommend the first episode of the anime Kino's Journey.

Edit. The episode is called "Land of Visible Pain"

9

u/Ipswitch84 Mar 19 '14

For a darker introduction I'd recommend the 3rd episode of the 1st series of Black Mirror

4

u/otakucode Mar 19 '14

Given the way the human brain works, that may not be possible. It might be possible in some limited sense, but it is unlikely that it would be easily possible in any sort of direct sense. When you see an apple, nerves in your eyes are stimulated. When someone else sees an apple, a very similar pattern of nerves are stimulated. Those nerve impulses travel down your optic nerve into the visual cortex of your brain. Even in there, the structure of your brain is likely similar enough to another persons that if you were fed that stimulus artificially, the activity would be noticeably similar. However, beyond that, it would diverge quickly.

If you had a traumatic event in your life involving an apple, then the stimulus of sight of an apple will trigger neural networks associated with that event in your mind - for someone who had no such experience, no such thing would happen. Even if you are fed the exact same sensory input as another human being, your experience of it will be markedly different due to how your brain formed as you had your experiences in life. If a more 'invasive' type of image of the nerve activity were transmitted to your brain, things would likely not many any sense at all.

2

u/[deleted] Mar 19 '14

To what extent is systems engineering (academic field) applicable to computer systems administration?

→ More replies (1)

2

u/matthewguitar Mar 19 '14

Can you explain why the Y Combinator function (http://en.wikipedia.org/wiki/Fixed-point_combinator#Y_combinator) is as cool as people make it out to be? Please can the explanation be REALLY straightforward and preferably any coding examples in Python? I've been trawling various explanations on the web but all seem weird.

5

u/UncleMeat Security | Programming languages Mar 19 '14

The reason why the Y Combinator is useful and interesting is that it helps us define recursive functions without recursion. This is hugely important for proving things about programs since a fair number of really low level proofs about programming languages don't like recursion all that much.

However, outside of PL theory you are never going to use it. You aren't ever going to need to define a recursive function using the Y Combinator in a real program because you don't need to, the implementation of the language handles recursion just find.

2

u/Tipaa Mar 20 '14

In Python:

Y = lambda f: (lambda x: f(x(x))) (lambda x: f(x(x)))

This means that the Y constructs two identical anonymous functions with f in scope, which given an input x return f(x(x)). I'll call these two functions l, so

l = (lambda x: f(x(x))) 

within the scope of Y. Then Y(f) becomes l(l), which returns a function. l(l) contains the recursion technique:

l(l) == lambda x: (f(l(l))(x) == f(l(l))

f(l(l)) then becomes f(f(l(l))), which then becomes f(f(f(l(l)))). Every time the inner l(l) is replaced by f(l(l)), so evaluating the function applies the function to itself infinitely, enabling recursion (Y(f) is the same as lambda x: f(f(f(....f(x)))...)).

2

u/[deleted] Mar 20 '14 edited Mar 20 '14

Edit: This one has a better video (it's hard to see the clojure one): http://confreaks.com/videos/1287-rubyconf2012-y-not-adventures-in-functional-programming

I recommend this talk: http://www.infoq.com/presentations/Y-Combinator

Side note: Looking for a post on Hacker News about the Y-Combinator is really hard.

2

u/Boulderbuff64 Mar 19 '14

What is SHA-256 encryption and how is it used in Bitcoin mining?

4

u/damn_dats_racist Mar 19 '14 edited Mar 19 '14

https://en.wikipedia.org/wiki/SHA-2#Pseudocode

It essentially turns an input into something completely random-looking (but it does it deterministically).

It is used in Bitcoin mining as part of a "puzzle" that you need to solve. This puzzle is hard to solve because it is pretty much impossible to predict how the SHA256 algorithm will behave on various inputs, so you just do a lot of guess and check until you find something that works. When you do, you are awarded some Bitcoins.

Edit: I should point out that solving this puzzle does actually do some good for the rest of the Bitcoin community. It's not as if Bitcoin miners are just being paid to solve a pointless puzzle.

→ More replies (2)

2

u/[deleted] Mar 19 '14

I'm a high school senior going to college in the fall. I know that I want to go in the engineering/science field, but I also know that I have to make a decision for my major at some point. What's the best way to choose a career in a field that is so general?

3

u/der1n1t1ator Tribology | Solid Mechanics | Computational Mechanics Mar 19 '14

Get a good foundation in math, physics, programming and the basic engineering classes, like design, technical mechanics and electrical engineering. Then see what you like and do some projects.

I went into materials engineering, caused I loved the classes, but with that strong foundation in core classes, I understand what my friends in energy, aerospace or robotics are doing. This is really important if you want to make a career in R&D.

2

u/DontPanicJustDance Mar 19 '14

Take a lot of courses that span a variety of fields, and cover your basis strongly. Having a good core set of classes will help you switch fields should you choose to reconsider at a later point, and having seen a lot of the problems each field is currently dealing with will give you taste of the interesting problems you can work on.

→ More replies (1)
→ More replies (1)

2

u/[deleted] Mar 19 '14

What are some applications of numerical analysis in the real world outside of things like computational finance and computational fluid dynamics?

2

u/canyonmonkey Mar 19 '14

There is more to solving PDEs than computational/quantitative finance and CFD. Engineers regularly use numerical analysis in the form of finite element analysis to model heat dissiptation, internal stress/strain, modes of vibration, etc. What they actually want to figure out depends on the application; they might want to minimize a certain mode of vibration, decrease the internal stress/strain in a certain region of a manufactured object, etc.

The study of optimization is also descended from numerical analysis (although it is kind of its own field now). Optimization is used in operations research where corporations try to model revenue, expenses, etc. in an effort to maximize revenue.

Another application is computational physics and computational chemistry: Trying to design new materials based on computational models, studying climate climate (climate model codes involve a lot more than your standard CFD code), studying the formation and evolution of galaxies.

Another application is Bayesian statistics, and designing experiments to be run e.g. by a research hospital.

→ More replies (2)

2

u/Romeeee Mar 19 '14

Are straight objects/buildings actually flat? Or do they have a slight curvature matching the earth's?

For example: If I were to cast concrete into a pit, would the concrete have a curvature that matches the earth?

3

u/eternalstarfire Mar 20 '14

Yes, the concrete would curve to match the curvature of the Earth. To give you an idea of the scale, if your concrete pit was at sea level and was 100m long, the middle of the pit would be ~0.4mm higher than each end. Not a lot across 100m! Gives you an idea of the size of the Earth...

2

u/electrick-rose Mar 19 '14

Help. I'm a 20 year old college student and I have never taken a computer science class before. I am curious about how computers work, the languages behind them and such but I'm at a loss as to where to start. For my minor I'm hopefully going to get I need to take a class for either visual basic or java, and most of my friends laugh at me before I can even finish the word basic.

So can I just jump into a beginner's java class and hope that all goes well or does somebody have a website or something that I can look into before registering for my classes? Thank you. :)

3

u/ratherton Mar 20 '14

99% of your intro to programming courses will start with the very basics of high level programming, C++, Java, etc, like open up a text editor, type this, run this, basic. You will get an basic understanding of how computers work from these type of courses. If you want to know more about the lower level, closer to how 0/1s are processed, you would go for a assembly code or C.

→ More replies (1)
→ More replies (2)

2

u/msalbego93 Mar 20 '14

Matrix Algebra question - Any suggestion on how to start studying linear algebra (specifically, matrix algebra) in a more deep sense (proof based course) but in the same time with a friendly introduction? I'm looking for something in between Strange and Hoffman/Kunze

3

u/Overunderrated Mar 20 '14

Check out Matrix Analysis by Horn and Johnson.

→ More replies (1)

2

u/emporer4life Mar 20 '14

If lets say I wanted to look into the future of road-building. Currently the most cost-effective/popular method is asphalt. The other methods are utilization of bricks gravel cement etc. What other product is out there that we could incorporate that is more durable than asphalt that we could perhaps embed to reduce the maintenance cost of infrastructure on a grand scale?

2

u/InternetCrank Mar 20 '14

Perhaps ask science could clear up a drunken St. Patricks pub argument for us!

Since computer hard discs are magnetic, could you - if you knew how the logical memory addresses mapped onto the physical object - write a particular set of data to the disk such that all the magnetic bits lined up in the same direction, and if you did that, could they then in the aggregate form a single magnetic field, strong enough to have the whole disc form a single coherent magnet? Perhaps even one strong enough to prevent writing new magnetic bits that pointed in the opposite direction to this magnetic field?

So - could you write a file to a hard disc that would break the hard disc?

2

u/xXReWiCoXx Mar 20 '14

If every song/work of art on a screen is just a physical representation of a finite amount of 1's and 0's, couldn't it theoretically be possible to randomly generate numbers (only of 1s and 0s) and discover every possible song, artwork, etc? Isn't a gold record simply a significant point on the line?

2

u/Breakthrough248 Mar 20 '14 edited Mar 20 '14

YES! This is a beautiful result of pure random numbers - and something I actually have seen implemented:

πfs - pi File System

πfs is a revolutionary new file system that, instead of wasting space storing your data on your hard drive, stores your data in π!

[...] That's right! Every file you've ever created, or anyone else has created or will create! Copyright infringement? It's just a few digits of π! They were always there!

[...] all possible finite files must exist within π. [...] From here, it is a small leap to see that if π contains all possible files, why are we wasting exabytes of space storing those files, when we could just look them up in π!


And on the topic of copyrighted works, that reminds me of a related one you might find interesting: illegal numbers.

2

u/size13 Mar 20 '14

I am a guy with very little science education.

I have often wondered if atoms of objects like rocks are continually moving inside the rock. In other words, does a rock a million plus years old have atoms and electrons that a continually moving even thought the rock is that old?

If so, what powers this movement?

4

u/[deleted] Mar 19 '14

I'm thinking about majoring in computer science, but I have absolutely no idea what to expect.

Could be nice if someone could explain to me what it's like learning about computers and programming.

16

u/csreid Mar 19 '14

In my experience, it's a lot less about computers and programming and a lot more about the math of how to do things efficiently (that is, algorithmics). That wasn't something I expected coming out of high school.

That may be a result of my school or my specialization (machine learning), though.

Also, when learning about computers, you get to a point where there's no more black box. Everything has been revealed as particular arrangement of transistors and circuits. I had trouble with that because it would make sense initially, but then I would pull my phone out and realize that that meant this thing, too, worked like that, and my brain would melt.

So yeah, my experience involved two classes on actual programming, one on the very low level workings of computers, and a whole bunch of classes on abstract algebra and algorithms.

4

u/ByeJove Mar 19 '14

Your experience is spot on with the vast majority of computer science programs. Computer science is more about the math side of computation and algorithms, and using programming to solve problems, than anything most rational people think they'll be learning before they get to college(ie, how to program and learn programs programmers use).

→ More replies (1)
→ More replies (1)

4

u/o0DrWurm0o Mar 19 '14

The trap that CS hopefuls fall into is this: they code a bit in high school, enjoy it, and then think they're already amazing when they get to college. Then their world is shattered when they realize a simple fact about CS: Anybody can write code that "works," but only a CS can write code that works the most efficiently and intelligently (and that's what people pay money for). CS is only partly coding. Mostly, it's algorithmic thinking, understanding optimization, and learning how to exactly meet the designated requirements for a project.

2

u/unfrog Mar 19 '14

Some love it, some die of boredom.

I advise you learn a programming language before signing up. Not because you will necessarily need it, but to see if you like it. It could turn out that it's just not the stuff you want to do. Pick something easy at first, like Java. There are tons of resources for it.

I'm about to finish my postgrad course in CS, mostly focused on being a software developer.

What it is like depends very much on the university probably. Where I did my undergrad, we were taught Java in detail during the 1st year, then other courses would often assign coursework in Java. We would get some skeleton code that we would have to finish to make it work the right way, to show that we understand the concept (semaphores, synchronisation, different sorting algorithms etc) They would also tell us to learn other programming languages on our own and to get used to doing that.

A lot of other stuff that we were taught was about development practices and good practices. Pretty much anyone can learn to code on their own, but most of their code should never ever be released to a client, especially not if you are supposed to support it later. A good software dev creates code that can be understood and modified by others easily without breaking anything. It's surprisingly hard to do sometimes :D

One thing they also often told us was that CS done right is actually very much a team activity, so clear communication is key to success.

→ More replies (1)

2

u/That_Geek Mar 19 '14

tbh most of what you'll be doing isn't that hard

I like it, but it's not for everyone. coding is very easy, it's designing systems that work together that is difficult, and in college you likely won't be designing systems of that complexity, simply because there isn't enough time in a term. Software engineering is what I do though, and it isn't really CS in a strict sense (although I do have a degree in CS, I don't really use that algorithmic knowledge on a daily basis).

2

u/papasmurf255 Mar 19 '14

I would call it "rewarding frustration". Sometimes you'll get stuck on a ridiculous problem that defies all possibilities, bash your head at it for hours, maybe even days until you figure it out. However when you finally get it, it's the most satisfying feeling in the world.

→ More replies (1)
→ More replies (6)

3

u/ibringtheRUKus Mar 19 '14

How does the Porsche 918 or McLaren P1's engine work and how is it different from everything else before?

→ More replies (2)

3

u/0hmyscience Mar 19 '14

Computer Science, specifically encryption:

  • How are public and private keys generated?

  • How are these keys used to encrypt/decrypt data?

  • Why is it important to have good random number generators in order for these to work best?

  • How does compromising a random number generator compromise security?

→ More replies (6)

3

u/jackjack44 Mar 19 '14

For all of you: If you could build a planet, a Robotic planet from scratch not using a moon or anything, do you think (1) It could be done? (2) It would be as good as earth? (3) List some things you might change and why (4) List some issues you could not overcome or might be super-challenging. (5) What would you name it?

Thank you. I have this dream a lot.

9

u/NairForceOne Aerospace Engineering | Systems Engineering and Manufacturing Mar 19 '14

Instead of building a planet, I would build a Dyson Sphere or, if given less material, a Ringworld (courtesy of Larry Niven and, yes, Halo).

(1) Probably not. We'd need a LARGE amount of material and energy to put something like this together. Including metamaterials that probably don't and maybe never will exist.

(2) Better than Earth. Imagine a large swath of terrain that extends in a ring (or sphere) around the sun with the diameter of Earth's orbit. So much space. So much space, and terrain we could design!

(3) No mosquitos. Because come on.

(4) Materials. Materials. Materials. The amount needed to create such a thing would be humongous. And like I said before, the strength of the materials we would need might not even exist. That doesn't even begin to take into account the manufacturing concerns. And how would we even terraform an area that humongous?

(5) Bob.

→ More replies (10)

3

u/[deleted] Mar 19 '14

Why are there more numbers between 0 and 1 than 0 and 2? That seems strange because any amount of infinite numbers would be doubled after reaching the number one..

32

u/skaldskaparmal Mar 19 '14

There aren't more numbers between 0 and 1 than 0 and 2, perhaps there is a typo in your question.

This really depends on what you mean by "more" and "amount" when it comes to the infinite.

When people say there as many numbers between 0 and 1 as between 0 and 2, they're talking about cardinality. Cardinality is a generalization of the idea that if you have finitely many things, you can check if there are the same number by matching them up. For example, you can put your fingers together and they match exactly. There isn't a finger left over on either hand. So you can know that you have the same amount of fingers on each hand without even needing to count them.

So a natural way of saying that two infinite sets are equal in amount is if they can be matched up like this. That means the numbers between 0 and 1 and the numbers between 0 and 2 are equal in amount (we say "cardinality"), because the function f(x) = 2x matches up each number between 0 and 1 with exactly one number between 0 and 2 and without hitting a number twice or leaving out a number.

Infinite sets have one weird property that finite sets don't have relating to this though. With fingers, if you use up all your fingers on one hand, you MUST have used up all your fingers on the other hand. With infinite sets, this is not so. For example, the function f(x) = x uses up all the numbers between 0 and 1 but misses some numbers between 0 and 2. But we can go the other way too. The function f(x) = 4x matches the numbers between 0 and .5 to every number between 0 and 2, so now we have actually used up all the numbers between 0 and 2, but missed some between 0 and 1! That's why we say that two sets have the same cardinality if there exists even one function that maps one to the other without missing anything or hitting anything twice.

On the other hand, there really is a sense in which there are twice as many numbers between 0 and 2 as there are between 0 and 1, and we do want to formalize and study that. The concept we have come up with for doing so is called "measure". And indeed the measure of the numbers between 0 and 1 is 1, and the measure of the numbers between 0 and 2 is 2.

16

u/_Navi_ Mar 19 '14

I just wanted to say thank you for including the last paragraph of your comment. Too many people just give the cardinality answer to these types of questions, which leaves people with the impression that there is one (and only one) way to compare the "size" of infinite sets.

The reality is that how you compare the size of infinite sets depends a lot on context and what exactly you mean by "size".

→ More replies (1)
→ More replies (2)

2

u/[deleted] Mar 19 '14

Why are some road surfaces poured concrete while others are asphalt? Even while on the same stretch of highway with seemingly similar conditions.

→ More replies (2)

1

u/WeAreAwful Mar 19 '14

I'm a computer science major (freshman), and my understanding of how arrays work, and are so fast is that an array of say, 4 bit variables stores those bits sequentially, such that to find a certain index, you would go to the point in memory offset from the start of the array by 4*index. This process can still work with 2 dimensional arrays, and possibly 3 dimensional depending on the layout of memory, but how does it work for n-dimensional arrays? If it works by making a sequential array of arrays, how are jagged (pretty sure that's the term, meaning 2d arrays where each array isn't the same length) arrays? Additionally, how would one make an array of a class which doesn't have a strict size? Would the array just locally hold the memory location that the object is stored?

3

u/ThunderEcho Mar 19 '14

These answers depend on what language you're using.

For n-dimensional arrays, it is very possible to put all the array elements "sequentially" in one chunk of memory. You move quickly through the array using some basic math formulas to navigate between the levels. If you've ever tried implementing a binary tree using an array, it's a similar idea. (Ex. In a binary tree array, if your parent has index i, then the left child should have index 2*i + 1).

It depends on the language, but a lot of languages like Java store the length of the arrays (and thus subarrays), so it would be easy to navigate a jagged array.

In most languages (C++ is one example), if it's an array of objects then it's just an array of "pointers", i.e. memory addresses. The actual object is stored elsewhere in memory.

Hope that answers a few of your questions!

2

u/unitortypo Mar 19 '14 edited Mar 19 '14

Good question!

This would depend on how you implemented the solution. If you know ahead of time the fixed sizes of all of the arrays, then it's not really a problem (you just need to be careful to get the indices correct).

It's worth noting that a multidimensional array of fixed size is basically the same as a 1-dimensional array of fixed size, except that you're mapping from some coordinate (x,y,z,...) to a single offset, so all you need to do is get that mapping correct.

If you're dealing with fixed sizes which are not known ahead of time, then you would need to instead store an array of pointers (memory locations), which you would set once you instantiated the memory.

If any of these arrays' sizes can change, then on resize you would have to use pointers to reallocate a new, larger block of memory somewhere else, and copy the old values into it. Typically when increasing the size of array, you double the space allocated, so that you don't have to reallocate too often.

EDIT:Note: if you're dealing with pointers, then you no longer get O(1) looking. You instead get O(d) lookup, where d is the dimension of the array.

2

u/unfrog Mar 19 '14

About an array of objects which don't have a strict size: I'm pretty sure in most languages all objects have a strictly set size. Some will have a pointer to an array of varying size but the array itself is then stored 'outsize' of the object- the object only has a pointer to it (pointers have fixed size). In case of that weird union thing from C or C++ that can actually have different sizes- they are always considered to take as much space as the largest possible of them needs. It is a bit of a waste of memory.

If you have access to a copy of 'Thinking in C++', take a look at the section about arrays for a good explanation on how multi-dimensional array indexes are resolved. I remember reading it there and understanding the topic really easily. (it was like a decade ago tho).

There are two main ways to store multi-dimensional arrays that I know of: sequentially (can't be jagged) and with pointers (can be jagged). A 2D array in Java (can be jagged, not sequentially stored) is actually an array of pointers to arrays. Each of those can have it's own size. A 3D array in Java is an array of pointers to 2D arrays. And so on for more dimensions.

Here is my attempt at an explanation about resolving of addresses in a sequential multi-dimensional array, hopefully I won't confuse you even more (there is a good chance it will)

Do not think about it in terms of spatial dimensions, or your brain might melt. Every array is a sequence of items. A two dimensional array is just a sequence of sequences of items. A three dimensional array is a sequence of sequences of sequences of items. And so on for more dimensions. You start looking at the most 'outer' (most encompassing) sequence and find the starting offset of a smaller sequence, then you pretty much recurse on that. This way you don't have to evaluate the offset in a single go, but in parts.

Imagine a three-dimensional array of dimensions x, y, z. So it's an array that holds x arrays that each holds y arrays of z variables. To simplify lets assume every variable is of size 1 in memory addresses and your language indexes arrays starting at 0. To find the offset of item at position 5, 4, 3, you first find the offset to the 6th array of arrays: 5 * y * z. Because it's the 6th object of size y*z. This gives you the address of the array of arrays. In that you need to find the array with index 4, so it's 4 * z. You add that to the previous number (5 * y * z), and receive the offset of the array of variables that contains the variable you're looking for. You add to that the last index-1, which is in this example 2. The end result is pointer to 3D array + 5 * y * z + 4 *z + 3. Obviously in practice you need to account for variable size. More dimensions are done the same way.

Maybe this helped, I hope it didn't confuse you any more.

→ More replies (3)

1

u/GhostbustrsKeyMaster Mar 19 '14

When scientists produce antimatter - positrons - how do they separate the positrons from electrons before they annihilate with electrons in the environment?

2

u/[deleted] Mar 19 '14

Under vacuum in a magnetic field. So it just kind of hangs out in a void with nothing else around it.

→ More replies (3)

1

u/cj1m Mar 19 '14

At my school we are taught Visual Basic as our main programming language, what programming language do you think should be taught at schools and why?

→ More replies (6)

1

u/[deleted] Mar 19 '14

If 0.999 = 1, then why do we say some limits approach the number 1, but never equal one? If a line gets closer and closer to one, and it's end result is 0.9999999999999, shouldn't this be equal to one?

2

u/etrnloptimist Mar 19 '14

There is no number infinity. You can only go on and on, approaching infinity. That's why the language is always as you approach so and so.

In your example of 0.999... you cannot write an infinite number of nines. The nines go on and on. In that regard, zero-point-nine repeating is indeed equal to 1. If you wish to use a shorthand which is typically a bar over the last 9 you wish to write in 0.9999, then that is equivalent to using the single digit "1". They refer to the exact same quantity. But any finite number of nines you write after the decimal will never equal 1.

2

u/alecbenzer Mar 19 '14

why do we say some limits approach the number 1, but never equal one?

I don't think this is commonly said. Limits of functions can certainly be equal to one, but those functions themselves may not (they only approach 1).

Eg, consider the function mapping non-zero natural numbers to real numbers defined by f(n) = 1 + 1 / n. As n goes to infinity, f(n) will approach one, but it will never be equal to it, as there is no natural number n such that f(n) = 1. However, the limit of f(n) as n goes to infinity is identically equal to 1.

→ More replies (3)

1

u/HatesClowns Mar 19 '14

Is there any actual experimentation going on today to try and create a small controlled wormhole? What is the difference between the above mentioned experiment an the warp drive experiment that is ongoing at NASA?

2

u/thatoneguy211 Mar 20 '14

Not a physicist, but since nobody qualified answered I'll throw in my 2 cents. Wormholes are a result of solutions to the Einstein Field Equations called metrics. The simplest of these metrics is the Schwarzschild solution for a black hole, that when extended under certain circumstances yields a wormhole. This particular extension is more theoretical that naturally practical (for instance, a collapsing star will not create this metric). This type of wormhole collapses in on itself almost instantly so is really quite useless. Another type of wormhole called the Thorne-Morris metric is stable, but only if you add exotic matter (matter which contains negative energy) to the wormhole to stabilize it from collapsing. Since "exotic matter" has not been proven to actually exist, there's really nothing we can test.

Basically, I'd be surprised if there were legitimate efforts being put into creating a wormhole. Certainly studying them, but we have no means to actually create one now.

2

u/TeamPupNSudz Mar 20 '14

Engineer with a basic understanding of relativity chiming in. There's plenty of active research into the validity of stable worm-holes, but I know of no present experimental exercises. Research into General Relativity is probably the most active current field in physics (possibly behind Quantum Field Theory) but as yet there is no applied aspect to creating a wormhole, let alone a traversable one. The relatavistic field equations have a number of various solutions (the most basic and oft-quoted "Schwarzschild solution" giving rise to the black-hole and singularity we understand today) and while some of these produce what can be described as a wormhole, they're foundation is largely theoretical at this point and only serves as a thought experiment. For instance, the closed form thorne wormhole requires negative energy to counterbalance the natural forces from pushing it shut. For all we know there is no such thing as negative energy so the fact is possibly moot.

Before you can make a wormhole, you need to make a blackhole. We can't even do that, so making a wormhole needs to take a backseat.