How about SUCO SUper COnductor?

  • Videogamer555
    13th Dec 2015 Member 0 Permalink
    The more you cool it, the less resistance it has, and the less heat generated. The critical temperature should be -150degC in this element. Resistance is a property which has not been properly simulated yet, but it will need to be simulated specifically in the SUCO element, in order for it to exhibit realistic behavior. Resistance will be calculated from its temperature. At -150degC or below it will have a resistance of 0. Above -150degC, it will have a resistance equal to 150 + Temp. Therefore at 0degC, the resistance will be 150, and at room temperature (22degC) it will have a resistance of 172. The resistance affects 2 factors, the probability of a particle of SPRK being neutralized in any given tick, and the amount of temperature increase in a given particle of SUCO for each particle of SPRK that passes through it. In a given particle of SUCO, for each unit of resistance that it has, the there will be a 0.125degC increase in temperature for each particle of SPRK that passes through it. As for probability of SPRK randomly disappearing in any given tick, here's how that probability is to be calculated. Prob = Resistance/5000. These calculations will produce the desired behavior of the superconductor.

    As for physical constants, both melting point, and thermal conductivity will be the same as METL.

    If a large loop of SUCO is conducting current in a continuous loop (with no external supply connected), and is cooled by LN2 or LOXY, and an external temperature source forces the temperature of a few particles of SUCO to be above -150degC for a long enough period of time, an interesting chain reaction will happen. Though there will be only a small probability at these almost-critical temperatures of SPRK disappearing in any tick of the program, a significant amount of heat will be generated. A single pulse of electricity in TPT is 8 particles of SPRK long. If 8 particles of SPRK pass through a given particle of SUCO that is at -149degC, then each one of these 8 particles of SPRK will increase the temperature of that particle of SUCO by 0.125degC, for a total of 1degC. This may not sound like much (particularly if the SUCO is surrounded by LN2 or LOXY, which can quickly re-cool the SUCO) but if a long train of pulses (the SUCO loop is full of SPRK), then each of these 8-particle pulses of SPRK will increase the tempearature, at first slowly, but then quite quickly, in an exponential curve. This heat will be thermally conducted into adjacent particles of SUCO, raising their temperature above the critical-tempearature as well, and this chain reaction will also boil off the LN2 or LOXY, until there is no cryogenic coolant left to bring down the temperature of the SUCO, and as the temperature increases, the resistance increases. And as the resistance increases the temperature increases. At a certain point the probability of the SPRK being removed will be large enough to decrease the amount of current to stop the chain reaction, but it also may not (depending on chance, as probability of SPRK being removed is not a guaranty of it being removed, and also based on the thickness of the wire, and a number of other factors such as emergency cooling systems using GOL particles, etc), and if the chain reaction is not stopped quickly enough, the temperature may exceed the melting point of the material (which will be 1000degC, the same as METL). So the chain reaction failure of the coolant, could cause the wires to get red-hot, or even melt, depending on whether or not all of the SPRK was completely removed before the melting point was reached. By the way, this cascading failure of a superconductor is actually a possibility in real life. It's called "quenching".
    Edited once by Videogamer555. Last: 13th Dec 2015
  • Sandwichlizard
    13th Dec 2015 Member 0 Permalink

    this is soooooo specific.  also "resistors" behave consistantly.  the electricity does not just "randomly" disapear.

     

    In TPT it should act more like DLAY that has a max delay of like 100 frames and its temp is affected by outside sources and as you described the spark passing thru it. 

     

    However.  Rather than glowing/decay like DLAY, each pixel acts independently, passing spark to its neighbors based on its own temp.  This would create an inconsistant flow thru the condutor based on varying temperature across the length of the conductor.  much better than random spark disapearance.

     

    when groups of pixels gets to -150 they work together and behave like INST but still pass spark to higher temp adjacent pixels of itself and vice versa.

     

     

    Edited 2 times by Sandwichlizard. Last: 13th Dec 2015
  • Videogamer555
    14th Dec 2015 Member 0 Permalink
    @Sandwichlizard (View Post)
    Indeed, the macro-behavior is consistent, but the micro-behavior of a resistor is anything BUT consistent. A higher resistance means that electrons flowing through the material have a higher probability of colliding with an atom at any given moment. And yes, these collisions ARE random events. Now since there's no way to simulate an SPRK colliding with an atom in TPT (which doesn't even have simulation of charge or electric fields, or the concept of current into a device must equal current out of it) I'm having to work around TPT's lack of realistic physics, in order to come up with a reasonable suggestion on how to make a realistic superconductor. The suggestion I gave in my intro post to this thread, would cause the overall behavior of the SUCO element to closely mimic the overall behavior real life super conductors. This would enable me to actually use TPT as a way to demonstrate to others the concept of how super conductors work, and thus use it as an actual educational tool.
  • Sandwichlizard
    14th Dec 2015 Member 1 Permalink

    I suggest you learn to mod/code.  After being a part of this community for a couple years, I seriously doubt that your suggestion will ever become part of standard TPT.  It has to fit the game.  like you said TPT is seriously unrealistic.  trying to make an elaborate element to mimic reality sounds like something for "the science toy" mod.

    Edited once by Sandwichlizard. Last: 14th Dec 2015
  • jacob1
    14th Dec 2015 Developer 0 Permalink
    I don't tend to read larger suggestions, but I guess i'll agree with Sandwichlizard. I looked over it and it just looked super specific, with a bunch of little things that would have to be coded to make it work. For example, this:
    "If a large loop of SUCO is conducting current in a continuous loop (with no external supply connected), and is cooled by LN2 or LOXY, and an external temperature source forces the temperature of a few particles of SUCO to be above -150degC for a long enough period of time, an interesting chain reaction will happen."

    I'm also not sure if SPRK and realistic "resistance" works well ... SPRK wasn't really designed with that in mind. It think a new element / rewrite, maybe in a mod, would be better if you wanted to add more realistic electronics.
    Edited 2 times by jacob1. Last: 14th Dec 2015
  • Videogamer555
    14th Dec 2015 Member 0 Permalink
    It needs to be super specific if it is to be implemented. Notice that with METL, it doesn't just "melt when it gets too hot", instead it "melts when it reaches 1000degC". In order for TPT developers to be able to implement an element, the element's suggester must make certain that they provide very specific values, so that the developers will be able to take what the suggesters give and actually implement it. Otherwise the developers won't be certain exactly what values to use, and they may end up producing an element that does NOT behave the way that the suggester wanted.
  • Sandwichlizard
    16th Dec 2015 Member 0 Permalink

     "At a certain point the probability of the SPRK being removed will be large enough to decrease the amount of current to stop the chain reaction, but it also may not (depending on chance, as probability of SPRK being removed is not a guaranty of it being removed, and also based on the thickness of the wire, and a number of other factors such as emergency cooling systems using GOL particles, etc), and if the chain reaction is not stopped quickly enough, the temperature may exceed the melting point of the material (which will be 1000degC, the same as METL). So the chain reaction failure of the coolant, could cause the wires to get red-hot, or even melt, depending on whether or not all of the SPRK was completely removed before the melting point was reached. By the way, this cascading failure of a superconductor is actually a possibility in real life. It's called "quenching".

     

    Its Awesome.

    Its also just way tooooo much.

    Maybe you should try streamlining a bit.  Good luck in your quest for reality.

    Edited once by Sandwichlizard. Last: 16th Dec 2015
  • 12Me21
    21st Dec 2015 Member 0 Permalink

    I don't really think it's "tooooo much"

     

    The only new feature it has is "resistance", and it is being defined in a simple and specific way, so that each SPRK has a R/5000 chance of disapearing every frame.

     

    Simple elements with simple code can have complex behaviors (Like LIFE, for example)

  • Sandwichlizard
    21st Dec 2015 Member 0 Permalink

    I also said it was AWESOME.  but whatever.  just trying to help.  All those special conditions do not equal simple code.  

     

    I will say no more on the subject.

  • 12Me21
    23rd Dec 2015 Member 0 Permalink

    (add to update function of SPRK)

    IF ctype == SUCO THEN

    IF temp < -150C THEN resistance = 0 ELSE resistance = 150 + temp 'Calculate resistance

    IF RND * 5000 > resistance THEN type = SUCO 'Remove spark

    END IF

    It's written in BASIC so people can read it, but it could be easily translated into C++

     

    EDIT: C++ code:

    case PT_SUCO:
      tp = parts[i].temp
        resist = tp + 123.15;
      parts[i].temp = tp + .125 * resist
      if (rand() % 5000 > resist)
        sim->create_part(i,x,y,PT_SUCO); //not sure if this is right...
      break;

     

     

    (I haven't tested it, but it should work maybe with some small modification. You will also need to add code for the element itself, but that will be very simple, identical to most other metals except in color and name)

    I'll try to make a mod that adds this, but I'm not sure how. Are there any tutorials?

     

     

    Videogamer555:

    It needs to be super specific if it is to be implemented. Notice that with METL, it doesn't just "melt when it gets too hot", instead it "melts when it reaches 1000degC"....
     
    You are right, this makes it MUCH easier to write code!
    Edited 29 times by 12Me21. Last: 23rd Dec 2015