kinet | Python API to control Color Kinetics lights using kinet | REST library

 by   vishnubob Python Version: Current License: MIT

kandi X-RAY | kinet Summary

kandi X-RAY | kinet Summary

kinet is a Python library typically used in Web Services, REST applications. kinet has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. However kinet build file is not available. You can download it from GitHub.

Python API to control Color Kinetics lights using kinet
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              kinet has a low active ecosystem.
              It has 33 star(s) with 9 fork(s). There are 9 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 1 open issues and 1 have been closed. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of kinet is current.

            kandi-Quality Quality

              kinet has 0 bugs and 0 code smells.

            kandi-Security Security

              kinet has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              kinet code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              kinet is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              kinet releases are not available. You will need to build from source code and install.
              kinet has no build file. You will be need to create the build yourself to build the component from source.
              kinet saves you 163 person hours of effort in developing the same functionality from scratch.
              It has 404 lines of code, 56 functions and 3 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed kinet and discovered the below as its top functions. This is intended to give you an instant insight into kinet implemented functionality, and help decide if they suit your requirements.
            • Initialize power supply .
            • Return a list of available fixtures .
            • Fade fade .
            • Return a generator that yields each discovery response .
            • Cycle through fixtures .
            • Build the index .
            • Return the value associated with a key .
            • Calculate slope .
            • Convert to hsv
            • Return an ASCII representation of the color .
            Get all kandi verified functions for this library.

            kinet Key Features

            No Key Features are available at this moment for kinet.

            kinet Examples and Code Snippets

            No Code Snippets are available at this moment for kinet.

            Community Discussions

            QUESTION

            What optimizations should be left for compiler?
            Asked 2022-Mar-21 at 18:37

            Assume that you have chosen the most efficient algorithm for solving a problem where performance is the first priority, and now that you're implementing it you have to decide about details like this:

            v[i*3+0], v[i*3+1] and v[i*3+2] contain the components of the velocity of particle i and we want to calculate the total kinetic energy. Given that all particles are of the same mass, one may write:

            ...

            ANSWER

            Answered 2022-Feb-16 at 15:43

            One thing that looks a bit like premature optimization, but could just be ignorance of language abilities is that you have all of the information to describe particles flattened into an array of double values.

            I would suggest instead that you break this down, making your code easier to read by creating a struct to hold the three datapoints on each particle. At that point you can create functions which take a single particle or multiple particles and do computations on them.

            This will be much easier for you than having to pass three times the number of particles arguments to functions, or trying to "slice" the array. If it's easier for you to reason about, you're less likely to generate warnings/errors.

            Source https://stackoverflow.com/questions/71144522

            QUESTION

            Get word for (position, word) in dataframe column if position is in another column
            Asked 2022-Feb-28 at 19:29

            I have this form of dataframe :

            ...

            ANSWER

            Answered 2022-Feb-28 at 19:29

            If I understand your question correctly, you want to index the list in "preprocessed_sent" using the indexes in the list at "ind_position". You could apply this function on each row:

            Source https://stackoverflow.com/questions/71298103

            QUESTION

            How to fix incorrect energy conservation problem in mass-spring-system simulation using RK4 method
            Asked 2022-Feb-28 at 13:10

            I am making a simulation where you create different balls of certain mass, connected by springs which you can define (in the program below all springs have natural length L and spring constant k). How I do it is I created a function accel(b,BALLS), (note b is the specific ball and BALLS are all of the ball objects in various stages of update) which gets me acceleration on this one ball from calculating all the forces acting on it (tensions from ball the springs connected to it and gravity) and I would think this function is definitely correct and problems lie elsewhere in the while loop. I then use the RK4 method described on this website: http://spiff.rit.edu/richmond/nbody/OrbitRungeKutta4.pdf in the while loop to update velocity and position of each ball. To test my understanding of the method I first made a simulation where only two balls and one spring is involved on Desmos: https://www.desmos.com/calculator/4ag5gkerag I allowed for energy display and saw that indeed RK4 is much better than Euler method. Now I made it in python in the hope that it should work with arbitrary config of balls and springs, but energy isn't even conserved when I have two balls and one spring! I couldn't see what I did differently, at least when two balls on involved. And when I introduce a third ball and a second spring to the system, energy increases by the hundreds every second. This is my first time coding a simulation with RK4, and I expect you guys can find mistakes in it. I have an idea that maybe the problem is caused by because there are multiple bodies and difficulties arises when I update their kas or kvs at the same time but then again I can't spot any difference between what this code is doing when simulating two balls and my method used in the Desmos file. Here is my code in python:

            ...

            ANSWER

            Answered 2022-Feb-27 at 10:53

            The immediate error seems to be this

            Source https://stackoverflow.com/questions/71282857

            QUESTION

            Find string matching among columns
            Asked 2022-Feb-28 at 09:57

            I have a DataFrame that looks like this:

            ...

            ANSWER

            Answered 2022-Feb-28 at 09:57

            You can define a method which checks both and then use it in apply(). This method can also be used to split the values in each of these rows, assuming , is never used in text and all lists are in this exact notation without spaces.

            Source https://stackoverflow.com/questions/71292945

            QUESTION

            Android build failed. showing "Resource compilation failed. Check logs for details."
            Asked 2022-Feb-28 at 05:46
            
                    Baseball is a bat-and-ball game played between two opposing teams, of nine players each, that take turns batting and fielding. The game proceeds when a player on the fielding team, called the pitcher, throws a ball which a player on the batting team tries to hit with a bat. The objective of the offensive team (batting team) is to hit the ball into the field of play, allowing its players to run the bases, having them advance counter-clockwise around four bases to score what are called "runs". The objective of the defensive team (fielding team) is to prevent batters from becoming runners, and to prevent runners' advance around the bases.[2] A run is scored when a runner legally advances around the bases in order and touches home plate (the place where the player started as a batter). The team that scores the most runs by the end of the game is the winner.The first objective of the batting team is to have a player reach first base safely. A player on the batting team who reaches first base without being called "out" can attempt to advance to subsequent bases as a runner, either immediately or during teammates' turns batting. The fielding team tries to prevent runs by getting batters or runners "out", which forces them out of the field of play. Both the pitcher and fielders have methods of getting the batting team's players out. The opposing teams switch back and forth between batting and fielding; the batting team's turn to bat is over once the fielding team records three outs. One turn batting for each team constitutes an inning. A game is usually composed of nine innings, and the team with the greater number of runs at the end of the game wins. If scores are tied at the end of nine innings, extra innings are usually played. Baseball has no game clock, although most games end in the ninth inning.Baseball evolved from older bat-and-ball games already being played in England by the mid-18th century. This game was brought by immigrants to North America, where the modern version developed. By the late 19th century, baseball was widely recognized as the national sport of the United States. Baseball is popular in North America and parts of Central and South America, the Caribbean, and East Asia, particularly in Japan, South Korea, and Taiwan.
                    Badminton is a racquet sport played using racquets to hit a shuttlecock across a net. Although it may be played with larger teams, the most common forms of the game are "singles" (with one player per side) and "doubles" (with two players per side). Badminton is often played as a casual outdoor activity in a yard or on a beach; formal games are played on a rectangular indoor court. Points are scored by striking the shuttlecock with the racquet and landing it within the opposing side's half of the court.Each side may only strike the shuttlecock once before it passes over the net. Play ends once the shuttlecock has struck the floor or if a fault has been called by the umpire, service judge, or (in their absence) the opposing side.[1]The shuttlecock is a feathered or (in informal matches) plastic projectile which flies differently from the balls used in many other sports. In particular, the feathers create much higher drag, causing the shuttlecock to decelerate more rapidly. Shuttlecocks also have a high top speed compared to the balls in other racquet sports. The flight of the shuttlecock gives the sport its distinctive nature.The game developed in British India from the earlier game of battledore and shuttlecock. European play came to be dominated by Denmark but the game has become very popular in Asia, with recent competitions dominated by China. Since 1992, badminton has been a Summer Olympic sport with four events: men's singles, women's singles, men's doubles, and women's doubles,[2] with mixed doubles added four years later. At high levels of play, the sport demands excellent fitness: players require aerobic stamina, agility, strength, speed, and precision. It is also a technical sport, requiring good motor coordination and the development of sophisticated racquet movements.[3
                    Basketball is a team sport in which two teams, most commonly of five players each, opposing one another on a rectangular court, compete with the primary objective of shooting a basketball (approximately 9.4 inches (24 cm) in diameter) through the defender's hoop (a basket 18 inches (46 cm) in diameter mounted 10 feet (3.048 m) high to a backboard at each end of the court), while preventing the opposing team from shooting through their own hoop. A field goal is worth two points, unless made from behind the three-point line, when it is worth three. After a foul, timed play stops and the player fouled or designated to shoot a technical foul is given one, two or three one-point free throws. The team with the most points at the end of the game wins, but if regulation play expires with the score tied, an additional period of play (overtime) is mandated.Players advance the ball by bouncing it while walking or running (dribbling) or by passing it to a teammate, both of which require considerable skill. On offense, players may use a variety of shots – the layup, the jump shot, or a dunk; on defense, they may steal the ball from a dribbler, intercept passes, or block shots; either offense or defense may collect a rebound, that is, a missed shot that bounces from rim or backboard. It is a violation to lift or drag one's pivot foot without dribbling the ball, to carry it, or to hold the ball with both hands then resume dribbling.The five players on each side fall into five playing positions. The tallest player is usually the center, the second-tallest and strongest is the power forward, a slightly shorter but more agile player is the small forward, and the shortest players or the best ball handlers are the shooting guard and the point guard, who implements the coach's game plan by managing the execution of offensive and defensive plays (player positioning). Informally, players may play three-on-three, two-on-two, and one-on-one
                    Bowling is a target sport and recreational activity in which a player rolls a ball toward pins (in pin bowling) or another target (in target bowling). The term bowling usually refers to pin bowling (most commonly ten-pin bowling), though in the United Kingdom and Commonwealth countries, bowling could also refer to target bowling, such as lawn bowls.In pin bowling, the goal is to knock over pins on a long playing surface known as a lane. Lanes have a wood or synthetic surface onto which protective lubricating oil is applied in different specified oil patterns that affect ball motion. A strike is achieved when all the pins are knocked down on the first roll, and a spare is achieved if all the pins are knocked over on a second roll. Common types of pin bowling include ten-pin, candlepin, duckpin, nine-pin, five-pin and kegel. The historical game skittles is the forerunner of modern pin bowling.In target bowling, the aim is usually to get the ball as close to a mark as possible. The surface in target bowling may be grass, gravel, or synthetic.[1] Lawn bowls, bocce, carpet bowls, pétanque, and boules may have both indoor and outdoor varieties. Curling is also related to bowls.Bowling is played by 120 million people in more than 90 countries (including 70 million in the United States alone),[2] and is the subject of video games.
                    Cycling, also called bicycling or biking, is the use of bicycles for transport, recreation, exercise or sport.[1] People engaged in cycling are referred to as "cyclists",[2] "bicyclists",[3] or "bikers".[4] Apart from two-wheeled bicycles, "cycling" also includes the riding of unicycles, tricycles, quadricycles, recumbent and similar human-powered vehicles (HPVs).Bicycles were introduced in the 19th century and now number approximately one billion worldwide.[5] They are the principal means of transportation in many parts of the world, especially in densely populated European cities.[6]Cycling is widely regarded as an effective and efficient mode of transportation[7][8] optimal for short to moderate distances.Bicycles provide numerous possible benefits in comparison with motor vehicles, including the sustained physical exercise involved in cycling, easier parking, increased maneuverability, and access to roads, bike paths and rural trails. Cycling also offers a reduced consumption of fossil fuels, less air or noise pollution, reduced greenhouse gas emissions,[9] and greatly reduced traffic congestion.[10] These have a lower financial cost for users as well as for society at large (negligible damage to roads, less road area required). By fitting bicycle racks on the front of buses, transit agencies can significantly increase the areas they can serve.[11]In addition, cycling provides a variety of health benefits.[12] The World Health Organization (WHO) states that cycling can reduce the risk of cancers, heart disease, and diabetes that are prevalent in sedentary lifestyles.[13][10] Cycling on stationary bikes have also been used as part of rehabilitation for lower limb injuries, particularly after hip surgery.[14] Individuals who cycle regularly have also reported mental health improvements, including less perceived stress and better vitality.[15]
                    Golf is a club-and-ball sport in which players use various clubs to hit balls into a series of holes on a course in as few strokes as possible.Golf, unlike most ball games, cannot and does not utilize a standardized playing area, and coping with the varied terrains encountered on different courses is a key part of the game. The game at the usual level is played on a course with an arranged progression of 18 holes, though recreational courses can be smaller, often having nine holes. Each hole on the course must contain a teeing ground to start from, and a putting green containing the actual hole or cup 4+1⁄4 inches (11 cm) in diameter. There are other standard forms of terrain in between, such as the fairway, rough (long grass), bunkers (or "sand traps"), and various hazards (water, rocks) but each hole on a course is unique in its specific layout and arrangement.Golf is played for the lowest number of strokes by an individual, known as stroke play, or the lowest score on the most individual holes in a complete round by an individual or team, known as match play. Stroke play is the most commonly seen format at all levels, but most especially at the elite level.The modern game of golf originated in 15th century Scotland. The 18-hole round was created at the Old Course at St Andrews in 1764. Golf's first major, and the world's oldest tournament in existence, is The Open Championship, also known as the British Open, which was first played in 1860 at the Prestwick Golf Club in Ayrshire, Scotland. This is one of the four major championships in men's professional golf, the other three being played in the United States: The Masters, the U.S. Open, and the PGA Championship
                    Running is a method of terrestrial locomotion allowing humans and other animals to move rapidly on foot. Running is a type of gait characterized by an aerial phase in which all feet are above the ground (though there are exceptions).[1] This is in contrast to walking, where one foot is always in contact with the ground, the legs are kept mostly straight and the center of gravity vaults over the stance leg or legs in an inverted pendulum fashion.[2] A feature of a running body from the viewpoint of spring-mass mechanics is that changes in kinetic and potential energy within a stride occur simultaneously, with energy storage accomplished by springy tendons and passive muscle elasticity.[3] The term running can refer to any of a variety of speeds ranging from jogging to sprinting.Running in humans is associated with improved health and life expectancy.[4]It is assumed that the ancestors of humankind developed the ability to run for long distances about 2.6 million years ago, probably in order to hunt animals.[5] Competitive running grew out of religious festivals in various areas. Records of competitive racing date back to the Tailteann Games in Ireland between 632 BCE and 1171 BCE,[6][7][8] while the first recorded Olympic Games took place in 776 BCE. Running has been described as the world's most accessible sport.[9]
                    "Soccer team" and "Soccer" redirect here. For the band, see Soccer Team (band). For other uses, see Soccer (disambiguation).This article is about the sport of association football. For other codes of football, see Football.Association football, more commonly known as simply football or soccer,[a] is a team sport played with a spherical ball between two teams of 11 players. It is played by approximately 250 million players in over 200 countries and dependencies, making it the world's most popular sport. The game is played on a rectangular field called a pitch with a goal at each end. The object of the game is to score more goals than the opposition by moving the ball beyond the goal line into the opposing goal, usually within a time frame of 90 or more minutes.Football is played in accordance with a set of rules known as the Laws of the Game. The ball is 68–70 cm (27–28 in) in circumference and known as the football. The two teams compete to get the ball into the other team's goal (between the posts and under the bar), thereby scoring a goal. Players are not allowed to touch the ball with hands or arms while it is in play, except for the goalkeepers within the penalty area. Players may use any other part of their body to strike or pass the ball and mainly use their feet. The team that scores more goals at the end of the game is the winner; if both teams have scored an equal number of goals, either a draw is declared or the game goes into extra time or a penalty shootout, depending on the format of the competition. Each team is led by a captain who has only one official responsibility as mandated by the Laws of the Game: to represent their team in the coin toss before kick-off or penalty kicks.[4]
                    Swimming is the self-propulsion of a person through water, or other liquid, usually for recreation, sport, exercise, or survival. Locomotion is achieved through coordinated movement of the limbs and the body to achieve hydrodynamic thrust which results in directional motion. Humans can hold their breath underwater and undertake rudimentary locomotive swimming within weeks of birth, as a survival response.[1]Swimming is consistently among the top public recreational activities,[2][3][4][5] and in some countries, swimming lessons are a compulsory part of the educational curriculum.[6] As a formalized sport, swimming features in a range of local, national, and international competitions, including every modern Summer Olympics.Swimming relies on the nearly neutral buoyancy of the human body. On average, the body has a relative density of 0.98 compared to water, which causes the body to float. However, buoyancy varies on the basis of body composition, lung inflation, muscle and fat content, centre of gravity and the salinity of the water. Higher levels of body fat and saltier water both lower the relative density of the body and increase its buoyancy. Human males tend to have a lower centre of gravity and higher muscle content, therefore find it more difficult to float or be buoyant. See also: Hydrostatic weighing.Since the human body is less dense than water, water is able to support the weight of the body during swimming. As a result, swimming is “low-impact” compared to land activities such as running. The density and viscosity of water also create resistance for objects moving through the water. Swimming strokes use this resistance to create propulsion, but this same resistance also generates drag on the body.
                    Table tennis, also known as ping-pong and whiff-whaff, is a sport in which two or four players hit a lightweight ball, also known as the ping-pong ball, back and forth across a table using small solid rackets. The game takes place on a hard table divided by a net. Except for the initial serve, the rules are generally as follows: players must allow a ball played toward them to bounce once on their side of the table and must return it so that it bounces on the opposite side at least once. A point is scored when a player fails to return the ball within the rules. Play is fast and demands quick reactions. Spinning the ball alters its trajectory and limits an opponent's options, giving the hitter a great advantage.Table tennis is governed by the worldwide organization International Table Tennis Federation (ITTF), founded in 1926. ITTF currently includes 226 member associations.[3] The table tennis official rules are specified in the ITTF handbook.[4] Table tennis has been an Olympic sport since 1988,[5] with several event categories. From 1988 until 2004, these were men's singles, women's singles, men's doubles and women's doubles. Since 2008, a team event has been played instead of the doubles.The sport originated in Victorian England, where it was played among the upper-class as an after-dinner parlour game.[1][2] It has been suggested that makeshift versions of the game were developed by British military officers in India around the 1860s or 1870s, who brought it back with them.[6] A row of books stood up along the center of the table as a net, two more books served as rackets and were used to continuously hit a golf-ball.[7][8]The name "ping-pong" was in wide use before British manufacturer J and Son Ltd trademarked it in 1901. The name "ping-pong" then came to describe the game played using the rather expensive  equipment, with other manufacturers calling it table tennis. A similar situation arose in the United States, where  sold the rights to the "ping-pong" name to Parker Brothers. Parker Brothers then enforced its trademark for the term in the 1920s, making the various associations change their names to "table tennis" instead of the more common, but trademarked, term.[9]
                    Tennis is a racket sport that can be played individually against a single opponent (singles) or between two teams of two players each (doubles). Each player uses a tennis racket that is strung with cord to strike a hollow rubber ball covered with felt over or around a net and into the opponent's court. The object of the game is to manoeuvre the ball in such a way that the opponent is not able to play a valid return. The player who is unable to return the ball validly will not gain a point, while the opposite player will.[1][2]Tennis is an Olympic sport and is played at all levels of society and at all ages. The sport can be played by anyone who can hold a racket, including wheelchair users. The modern game of tennis originated in Birmingham, England, in the late 19th century as lawn tennis.[3] It had close connections both to various field (lawn) games such as croquet and bowls as well as to the older racket sport today called real tennis.[4]The rules of modern tennis have changed little since the 1890s. Two exceptions are that until 1961 the server had to keep one foot on the ground at all times,[5][6] and the adoption of the tiebreak in the 1970s.[7] A recent addition to professional tennis has been the adoption of electronic review technology coupled with a point-challenge system, which allows a player to contest the line call of a point, a system known as Hawk-Eye.[8][9]Tennis is played by millions of recreational players and is also a popular worldwide spectator sport.[10] The four Grand Slam tournaments (also referred to as the Majors) are especially popular: the Australian Open played on hard courts, the French Open played on red clay courts, Wimbledon played on grass courts, and the US Open also played on hard courts.[11]
                
            
            ...

            ANSWER

            Answered 2022-Feb-28 at 05:46

            Cheers everyone I just found it . The solution is just remove the single quotation mark this one '

            And if you want to use this mark then use like this

            Source https://stackoverflow.com/questions/71290646

            QUESTION

            How to compile and link callback class (for ROS messages)
            Asked 2022-Feb-11 at 09:15

            Essentially I have defined a class to handle my callbacks, with the declarations and definitions split between a header and source file. However I am having troubles compiling a file which then uses said callback (despite me attempted to link the object file of the callback), specifically I get a linker error:

            ...

            ANSWER

            Answered 2022-Feb-10 at 17:25

            Your message types are wrong. When setting up the subscriber you're giving it a type of sdr_ros::TravelInfo, however the callback definition takes in sdr_ros::TravelInfoConstPtr as a parameter. Instead in your callback you want the ConstPtr generated by the message so change the signature to

            Source https://stackoverflow.com/questions/71064082

            QUESTION

            regex: balancing "{}" in a complex regex (python)
            Asked 2022-Feb-05 at 09:38

            I try to extract information from a complex string with regex. I try to extract what in the first { an last } as the content. Unfortunately, I struggle with nested {}. How is it possible to deal with this ?

            I think the key is to balance the {} over the all regex by I haven't been successful so far... See example below for parenthesis: Regular expression to match balanced parentheses

            ...

            ANSWER

            Answered 2021-Nov-20 at 10:33

            I believe the current regex can be written as

            Source https://stackoverflow.com/questions/70044589

            QUESTION

            How do I make a FloatLayout Scrollablle using the ScrollView function in kivy
            Asked 2021-Dec-15 at 14:51

            I am trying to figure out how i can scroll through a float layout which has widgets in various places, however when I add the floatlayout to the scrollview it doesn't scroll all the way. However, when I do this with a gridlayout, it seems to be perfectly scrollable. I would appreciate it if anybody helped me with this.

            Here is my code:

            KIVY

            ...

            ANSWER

            Answered 2021-Dec-15 at 14:51

            You are doing some strange things in that code. First, using size_hint values greater than 1 (as you do for your ScrollView) sets the size of the ScrollView greater than its container. That means that you will not be able to see the entire ScrollView.

            Similarly, you are setting pos_hint values to numbers less than 0. That positions the Buttons outside of the FloatLayout, so they will not be visible.

            I suggest eliminating the line:

            Source https://stackoverflow.com/questions/70360300

            QUESTION

            import cv2 error affected by ROS kinetic cv2 installation
            Asked 2021-Dec-15 at 01:41

            I encountered this error when attempting to run a python3 script with the line import cv2. Seems like it is affected by my ROS kinetic installation

            ...

            ANSWER

            Answered 2021-Dec-15 at 01:41

            Found a simple workaround. Add this line to the top of the code

            Source https://stackoverflow.com/questions/70332516

            QUESTION

            How to resolve this physical collision with impulses?
            Asked 2021-Nov-29 at 18:23

            I've started to write a physics engine but became stuck on some physics of resolving collisions. Let's say I have this situation:

            I.e. body B is going towards body A at the speed of 1 space units/time unit. Both A and B have the same mass of 1 unit. Let's consider a completely elastic collision.

            I've read in a book (Game Physics Engine Development) that an impulse-based approach can be used to resolve the collision (i.e. find out the linear and angular velocities of both bodies after the collision). As I understand it, it should work like this:

            1. When the bodies collide, I get the point of the collision and the collision normal.
            2. At the point of the collision I consider only two points colliding in the direction of the normal (the points at which the bodies are touching, i.e. I ignore the shapes of both bodies) and I compute the new velocities of these two colliding points (this is easy to do, there is a simple formula found e.g. on Wikipedia).
            3. I find an impulse such that when applied to both bodies at this point it achieves the computed velocities for these two points.

            Now the problem arises when I consider that from a physical point of view both momentum and kinetic energy need to be conserved. With these constraints in mind there is seemingly no solution, because:

            When B collides with A, B should come to complete stop and transfer all its momentum and kinetic energy to A, according to elastic collision formula. In order for linear momentum to stay conserved, A then has to start linearly moving left at the same speed as B was before the collision (as they have the same mass). So now A has the same kinetic energy as B had, which however means that A cannot come into rotation because that would add additional kinetic energy to it (as rotating adds kinetic energy as well as linear motion), breaking the conservation of kinetic energy. Nevertheless, the physically correct solution IS for A to both move linearly to the left AND rotate as B colliding at this location exerts torque (and I've also checked real life object behave this way). Note that we cannot take away some energy of A's linear motion and add it to the rotation as that breaks the conservation of linear momentum.

            The only "real" solution is that B doesn't come to complete stop and keeps some momentum while A will be both moving left and rotating. But this doesn't seem to be doable with the impulse-based approach that only takes into account the two colliding points, the elastic collision formula simply say the point at B should come to stop and as B cannot receive any torque (the collision happens in its middle), the only way to fulfill this is for B to stop moving.

            So is there something I missed? Is the impulse-based approach just not physically correct? I appreciate any insight and suggestions on how to correctly resolve the collision. Thanks!

            ...

            ANSWER

            Answered 2021-Nov-29 at 18:23

            The formulas that you're looking at are for the collision of two point masses. Point masses can't have angular momentum, and so the formulas have no room for that term.

            You have to go back to first principles.

            Suppose that an edge collides with another body at a point (think corner hitting an edge). Then a specific impulse is imparted at that point, in a direction normal to the edge. (Any other direction would have required friction, which would make this a non-elastic collision.) The opposite impulse is imparted to the other body, along the same vector. Imparting opposite impulses to both bodies is sufficient to guarantee both conservation of momentum and angular momentum. But conservation of energy is going to take some work.

            Next, what happens when we impart that momentum? As this physics answer says, we impart momentum as if the impulse happened to the center of mass. We impart angular momentum equal to the cross product of the impulse and the moment arm (the vector describing how much the impulse misses the center of mass). This will cause the body to start rotating at a rate of the impulse divided by the moment of inertia.

            You get kinetic energy from the motion of the center of mass, but also kinetic energy from its rotation.

            So in your 2-D collision you now have the following facts:

            1. The mass of each body.
            2. The velocities of each body.
            3. The moment of inertia of each velocity.
            4. The angular velocity of each body.
            5. The moment arm of the line of force for each body.

            You can now calculate the kinetic energy of the whole system, as a function of the magnitude of the specific impulse. Unlike the point mass, ALL of these factors play into it, making the equation complicated. However, like the point mass, you'll get a quadratic equation with 2 solutions. One solution is 0 impulse imparted (representing the system before the collision), and the other is your answer afterwards. Complete with changes to the momentum and angular momentum of both systems.

            Source https://stackoverflow.com/questions/70157416

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install kinet

            You can download it from GitHub.
            You can use kinet like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/vishnubob/kinet.git

          • CLI

            gh repo clone vishnubob/kinet

          • sshUrl

            git@github.com:vishnubob/kinet.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular REST Libraries

            public-apis

            by public-apis

            json-server

            by typicode

            iptv

            by iptv-org

            fastapi

            by tiangolo

            beego

            by beego

            Try Top Libraries by vishnubob

            wait-for-it

            by vishnubobPython

            python-midi

            by vishnubobC

            snowflake

            by vishnubobPython

            silhouette

            by vishnubobPython

            ssw

            by vishnubobC