Updates from Urban Toggle Comment Threads | Keyboard Shortcuts

  • Urban 02:51 on 1 Feb. 2011 Permalink |  

    Electrons 

    As promised, Electrons is in the App store, and it’s just amazing.

    It’s a charged particle simulator for iPad. It allows you to create dozens of positively or negatively charged particles, either freely roaming in space, or contained within conducting bodies. You can observe complex particle interactions and resulting electric forces, create capacitors, simulate a lightning rod, a cathode ray tube (CRT) and much, much more. Through play, you can effortlessly gain deeper understanding of many natural phenomena. Following the included guided tour of 10 experiments will give you further insights into the world of electricity.

    A perfect companion for students and teachers of physics and electrical engineering, or anyone interested in understanding one of the four fundamental forces — the one without which there would be no lightbulbs or elevators, no radio and television, no computers, no Internet, and for that matter—no life.

    Electrons app includes an 11-page guide, explaining the basics of electric forces and Coulomb’s law, and provides 10 guided experiments, which you can try on your own. By following them, you will systematically unravel many of the seemingly puzzling mysteries of nature.

    By following the guide, you can:
    ⊕ Get acquainted with the basics of attractive and repulsive forces.
    ⊕ Learn why electric field inside conductors equals zero.
    ⊕ Learn why electric field is stronger in corners and pointy edges.
    ⊕ Simulate an electrostatic shock (redistribution of charge).
    ⊕ Create a capacitor and observe its homogenous electric field.
    ⊕ Learn how to create a do-it-yourself electric field probe.
    ⊕ Learn how to neutralize electric field.
    ⊕ Demonstrate how a cathode ray tube deflects particles.
    ⊕ Simulate a lightning rod and observe how it “attracts” lightning.

    Disclaimer
    Such great teaching aid could not be possible without a true visionary — my professor of Fundamentals of Electrical Engineering (about 10 years ago), late prof. Vojko Valenčič. He has, at the turn of the millenium, envisioned and developed a simulator, ten times more powerful than the Electrons. It was called JaCoB, and is still available freely at jacob.fe.uni-lj.si. Although JaCoB source code is available under GNU GPL, it has not been used in any way in development of the Electrons, which is purely an extension of Gravity Lab. Solely the concepts that prof. Valenčič taught, explained and demonstrated during his courses, and the basic idea behind JaCoB — to make learning of science fun — were used in making of this project. I sincerely wish someone will find it at least a bit as useful as I did JaCoB.

     
    • Roman 09:29 on 1 Feb. 2011 Permalink

      Ne samo da ej aplikacija odlična ima tudi dodano vrednost. Dejansko si oživil Vojkotovo vizijo. Osnove v vsako vas.

      Bravo

    • Urban 22:17 on 1 Feb. 2011 Permalink

      Hehe, hvala. 🙂 A si ga ti tud mel? Tale JaCoB je bil res uporabna reč, pa precej pred svojim časom.. Me zanima, če ga dons še kdo uporablja pri osnovah..

  • Urban 22:31 on 19 Jan. 2011 Permalink |  

    Beyond gravity 

    With Gravity Lab, I’ve built what I think is a decent particle simulation framework. Which brings me to my hidden agenda: something I’ve wanted to do for a long time, but could only do incrementally, since the complexity of the entire task was just too overwhelming. So I present to you another particle simulator, codenamed Charges.

    It was a no-brainer, really. Ok, sure — there’s no money in educational apps. There’s that. But the thing was practically already done. Electric forces are just like gravitational forces: obeying inverse square law (read more here, or here). There’s just a matter of inverting the polarity, i.e., introducing “negative masses”. And change some constants.

    Or so I thought.

    It turns out a charged particle simulator is pretty useless by itself: particles always recombine (i.e., neutralize each other), or fly far away from each other until they get garbage-collected.

    What I needed were solid (metallic) objects, which could trap the particles — so I could observe the forces, make capacitors, simulate cathode ray tubes (CRT), and generally bring the “static” into “electrostatic”. So I decided to implement objects. And this is an epic journey of a developer, struggling with an interesting problem and generating much flow™ in the process. 🙂

    Simple enough, I decided to support rectangles and circles only. Why? Because this way, it can be quite easily checked whether a particle has hit the wall. When you tap the screen, I simply loop through an array of all objects and check if you tapped inside a body. If I find that to be true, I set the parent of the particle to the ID of the body. Then, when calculating the motion of the particle (which is done by summing all the forces of all the other particles), I only need to check if the particle has hit the parent object’s wall. If parent object is a rectangle, it’s really simple, like this:

    if rectangle
        if parent.left_wall.x < particle.x < parent.right_wall.x
            move freely (left or right)
        else 
            dont move along x axis
        end
    
        if parent.bottom_wall.y < particle.y < parent.top_wall.y
            move freely (up or down)
        else
            dont move along y axis
        end
    end
    

    With circles, I’ve already hit the first obstacle. You can’t separate x and y coordinate checking into separate conditions, because they are dependent. I tried many options without real success and particles always got stuck in some kind of deadlocked state. What finally proved to be the most efficient solution, was checking if the particle’s future position is too far away from the circle center (more than circle radius away), and projecting it back onto the circle boundary. Like this:

    if circle
        if (x^2 + y^2 < circle.radius^2)   
            move freely along x and y
        else
            phi = atan2(y,x)
            x = circle.radius * cos(phi)
            y = circle.radius * cos(phi)
        end
    end
    

    It worked like a charm. But I faced a more dire problem, one that could not be solved in my limited particle-has-a-single-parent model. Namely, my particles couldn’t migrate from one parent to the next. Which would, of course, happen in nature: if you bring together a charged metallic object and an uncharged metallic object, some of the charge from the first one will be forced out into the second one.

    I wanted that, and it obviously couldn’t be done. Indeed, the composite objects made of circles and rectangles can become quite complex; how could one force the particles to stay within an object in such simple terms as shown above?

    I slept on it, and slept some more. And for the first time I can remember, the solution suddenly blinded me one morning. Yesterday’s morning, that is. And it goes like this.

    Timesharing.

    Let me explain. If a particle happens to be inside an overlap of two or more metallic objects (i.e, inside two or more objects at the same time), cycle through all of them every n frames of the animation. Let them all be parents, but not at the same time. And let the electrostatic forces that drive the particles away from each other do all the work.

    The bottom right particle in the picture above desperately wants to break away, to the South-East direction (down and to the right). If we bring in another body, the particle now has 2 parents (overlap). We iterate through both of them and let the particle just savor the moment for a while. And the moment it is assigned to object 2 above, it is propelled towards South-East, no longer bound by the first object. When there’s no more overlap, the time-sharing doesn’t happen any more. Voila.

    So hopefully, a new and amazing simulator will soon hit the App store. Stay tuned.

     
    • Bozo 19:44 on 20 Jan. 2011 Permalink

      ne ne ne… nisi še končal z gravitacijo :))) včeri zvečer sem neki vidu v enem dokumentarcu pa moraš to sprogramirat!!!… drugač pa enkrat pridem, pa da mi to vse pokažeš!

    • Urban 23:27 on 20 Jan. 2011 Permalink

      Dej posharej kej na deliciousu :p

  • Urban 21:11 on 18 Jan. 2011 Permalink |  

    More Gravity Lab 

    It’s been well over a month since Gravity Lab 1.0 was released. Now it has received a nice update with particle trails and a solar system preset. The solar system is actually just a set of bodies with preset masses and initial velocities1. The resulting setup is quite a faithful representation of the real solar system, down to the orbiting times (i.e., the lengths of planetary years) in correct proportions. And there’s also a satellite preset.

    Now you can test first-hand the effects of a stray sun wandering into our planetary system and ejecting Earth into outer space. 🙂

    There’s also a new and interesting setting — adjustable gravitational constant, which allows you to distort the simulated universe and observe the consequences.

    1. planetary masses courtesy of Wolfram Alpha; initial velocities were determined such that a stable orbit was ensured []
     
  • Urban 13:27 on 28 Nov. 2010 Permalink |  

    Gravity Lab for iPad 

    Gravity Lab is an iPad gravity simulator. It allows you to create massive bodies on a 2-D plane and set their initial velocities by dragging your finger. Their attraction is then simulated, which causes them to accelerate (and combine) according to Newton’s law of universal gravitation. Newton’s law states that every massive body in the universe attracts every other massive body; such attraction is proportional to masses of both bodies and inversely proportional to the square of the distance between them.

    All beings living on Earth’s surface become, through life’s experience, intimately acquainted with the force of gravity. Gravity keeps us from drifting freely into space. Yet there’s something extremely limiting in our perception: the only significant gravitational force that we can perceive is that of the Earth, which has mass approximately 60,000,000,000,000,000,000,000 times greater than an average human being standing on its surface. The gravitational attraction doesn’t feel very mutual (although the forces of attraction of both bodies are equal in size), which is due to the much higher mass and consequently higher inertia of the Earth.

    Gravitational force is also the weakest force in nature, either compared to electromagnetic, weak or strong force. Take a look at the comparison here. The strength of the gravitational attraction is for a factor of 1036 (or 1,000,000,000,000,000,000,000,000,000,000,000,000) times weaker than the electromagnetic force (which also works universally — that is, with unlimited range). The value of the gravitational constant G used to calculate the force in the Newton’s equation: F=Gm1m2/r2 is 0.00000000006674, which means the masses have to be extremely large and distances reasonably short for force F to become noticeable.

    That’s where a simulator can help. Generating large massive bodies has never been easier. The simulator then calculates and updates the forces between them in real-time and, besides helping you get a feeling of how gravity works on a larger and more massive scale, also allows you to perform different experiments and demonstrate various phenomena:

    • create your own solar system
    • demonstrate complex interaction patterns of multiple massive bodies
    • collide massive bodies and demonstrate the conservation of momentum
    • display vectors of acceleration due to gravitational forces and observe the acceleration of orbiting bodies
    • observe first two of the three Kepler’s laws of planetary motion
    • demonstrate gravitational slingshot (gravity assist) for increasing the spacecraft’s velocity, etc.

    More info and purchase:

     
    • dare 08:48 on 2 Dec. 2010 Permalink

      čestitam! a dela multitouch? na tistem flash-based gravity simulatorju nisem mogel dveh planetov v vzajemno orbito spravit…

    • božo 16:05 on 2 Dec. 2010 Permalink

      torej če pravilno razumem so ti potrdili zadevo – BRAVO!

    • Urban 21:14 on 2 Dec. 2010 Permalink

      hvala, hvala 🙂 res je 14 dni za čakat, se vid da so vsi navalili z updati ob releasu novega OS-a 🙂

  • Urban 15:50 on 21 Nov. 2010 Permalink |  

    Vremenski sateliti 

    Vem, da imamo internet in da s tremi kliki prideš do vremenske napovedi za 10 dni naprej, pa do radarske slike in do satelitskih posnetkov. Ampak tole ima svojevrsten čar in dela tudi brez interneta, pa že precej časa.

    V prejšnjem postu sem pisal, da NOAA sateliti z analognim oddajanjem1 počasi ugašajo, ampak nekaj jih še vedno živi. Še več, zadnjega so komaj izstrelili (NOAA 19, feb 2009). Nisem mogel verjeti, pa sem poskusil, in res pripiska mimo.

    Ujel sem NOAA 17 in 19, glede na podatke pa sta aktivna še NOAA 15 in 18. Njihove oddajne frekvence so med 137 in 138MHz, kar pomeni, da so samo 30MHz nad pasom FM radijskih postaj (ta je širok 20MHz, od 88 do 108 MHz).

    Sateliti oddajajo v FM, tako kot radijske postaje. Edina razlika je, da je valovanje desnosučno krožno polarizirano in za sprejem potrebuješ ustrezno anteno. Ta mora biti prav tako desnosučno polarizirana in jo je dokaj enostavno narediti. Po internetah je dovolj tutorialov, da se v to ne bom spuščal (ključna beseda je “wxsat turnstile”).

    Da zvemo kdaj sateliti pridejo naokrog (zemljo obkrožijo v približno 100 minutah, vendar ne nad istim krajem), si lahko pomagamo z obilico odličnega softvera; še vedno se dobi WXTrack, ki se ga spomnim še iz leta 2004. Takole izgleda in lepo napoveduje prihodnje prelete.

    Ko enkrat vemo uro preleta, se postavimo na odprto in posnamemo signal na 137MHz v obliki avdia. Takole se sliši.

    NOAA 19, prelet čez Bohinj, 21.11.2010 ob 11:55

    Potem pa wav dekodiramo, npr. s programom WXtoimg ali WXSat, pa dobimo takole sliko2 v vidnem in IR delu spektra.

    (Tale je iz mojega arhiva; danes sem dobil premajhne čase preletov in so vse slike visoke samo za četrt zgornje).

    Program WXtoimg pa omogoča tudi avtomatsko delovanje: računa prehode satelitov, ko letijo čez, jih posname in dekodira posnetek v sliko, to pa lahko tudi kar naloži na spletno stran. Enkrat mogoče pustim zadevo v tem načinu, da vidim kaj se nabere.

    1. t.i. APT — Automatic Picture Transmission []
    2. Za tole sem uporabil anteno lastne izdelave, sprejemnik Yaesu VR-120D, za snemanje Audacity, za procesiranje pa WXsat []
     
    • božo 20:26 on 22 Nov. 2010 Permalink

      zanimivo…

      ampak kje “zvohaš” take zadeve? sam se nebi spomnu niti približno na kaj takega…

    • Urban 21:23 on 22 Nov. 2010 Permalink

      Hehe, to pa je kompliment 🙂
      To sm enkrat slučajno najdu v študentskih letih in me je žrlo da je blo 137MHz tko blizu, pa vseen tako daleč. Takrat sm brez pravih TK osnov poskušal zmiksat signal na 88-108 MHz da bi ga poslušal s starim avtoradiem.. na koncu sm pa kupu kr scanner.

c
Compose new post
j
Next post/Next comment
k
Previous post/Previous comment
r
Reply
e
Edit
o
Show/Hide comments
t
Go to top
l
Go to login
h
Show/Hide help
shift + esc
Cancel