text:
# Reinforcement learning: First steps with policy gradients

An agent lives in some environment. He is able to perform a certain number of actions. The agent may go left or right, or may jump on the weird mushrooms growing next to him. We call this action $\mathbf{a}$. The environment, on the other hand, reacts to $\mathbf{a}$ with an observation $\mathbf{o}$. Depending on the action taken, the mushroom may die, or the overall score will get raised. In any case, the agent receives some reward $r$ if the taken action was a good one.

The agent now has only a single goal. He wants to maximize the total reward $R = \sum_{t=1}^{T} r_{t}$ while interacting with the environment at time $t$. So he intends to perform only good actions. Actions which allow him to maximize the long term reward. This is the general setup for a reinforcement learning task. An agent wants to optimize a mechanism to choose actions (called the policy ${\pi}$), which maximizes the future long term reward. Typically the agent lives in a stochastic world, where the observations are sampled from some probability distribution $\mathbf{o}_{t+1} \sim p\left( \mathbf{o} _{t+1}\left\vert\mathbf{o}_{t},\mathbf{a}_{t}\right.\right)$. We further assume that the agent chooses its actions from a stochastic policy $\mathbf{a}_{t}\sim\pi_{\mathbf{\theta}}\left( \mathbf{a}_{t}\left\vert \mathbf{o}_{t}\right. \right)$ to allow some exploration of the environment. The policy is parameterized by $K$ policy parameters $\mathbf{\theta} \in\mathbb{R}^{K}\$.

This post will cover a well known but rather simple algorithm for finding a a good policy, called the policy gradient method. The general idea is that the expected reward $J(\mathbf{\theta})$ is maximized by adjusting the policy parameters in direction of better reward. Unfortunately $J$ is generally unknown, and thus also its gradient.

However, the policy gradient theorem allows to estimate the gradient by interacting with the environment on the current policy. The gradient is then just the sample average of a few runs.

$\nabla_{\theta} J(\theta) = E \bigg\lbrack R \sum_{t=1}^{T} \nabla_{\theta} \log \pi_{\mathbf{\theta}}(\mathbf{a}_t \vert \mathbf{o}_t) \bigg\rbrack$

Now, having an estimate of the gradient with respect to $\mathbf{\theta}$ we can adapt the policy parameters by applying gradient ascend and get an increasingly better set of parameters $\mathbf{\theta}$ while iterating. I will demonstrate the principle with a simple but artificial setup.

Consider an agent whose actions $\mathbf{a}\in\mathbb{R}^{2}\$ are drawn from a two dimensional continuous space. At each time-step he gives a pair of numbers to the environment, which then reacts with an observation $\mathbf{o}$ and a reward $\mathbf{r}$. The observation happens to be just 50 random numbers sampled from a normal distribution with the agents action interpreted as the mean and variance. The reward of the action is calculated according to these random numbers, by applying a Tent-function to each individually. Importantly, the agent has no knowledge about the interns of the environment, he just sees the observation and its corresponding reward.
The following R-code simulates the environment.

# The resulting observations are drawn from a normal distribution parameterized by the given action
getNewObservation <- function(action) {
# the variance has to be positiv
action[2] <- ifelse(action[2] < 0.00001, 0.00001, action[2])
observation = rnorm(nrRandomNumbers, mean=action[1]*max(rnorm(1,1,0.02),0.0001), sd=action[2]*max(rnorm(1,1,0.02),0.0001))
reward = getReward(observation)
return(list(observation, reward))
}

#each random number of the observation is rewarded according to a tent function
#only numbers which are close to the target value get a reward.
getReward <- function(x) {
reward = 1-abs(target-x)
return(ifelse(reward < 0, 0, reward))
}

The agent now interacts with this environment and needs to calculate appropriate actions through its policy. The policy could be anything (even some big convolutional neural network), but for the first steps lets choose a simple one. Lets model the policy as a bivariate normal distribution with policy-parameters $\mathbf{\theta}$ corresponding to the means $\mathbf{\mu}$ in the respective direction and a constant covariance matrix $\Sigma$.

covarMat = matrix(c(0.19,0,0.0,0.19), nrow = 2, ncol = 2)

sampleActionFromPolicy <- function(policy) {
require(MASS)
return(mvrnorm(n = 1, mu = policy, Sigma = covarMat))
}

The agent can now draw actions from a distribution $\mathcal{N}(\mathbf{\theta}, \Sigma)$.

The important part is the gradient estimation process. Here the magic happens. For a normal distributed policy the needed term is:

$\nabla_{\theta} \log \pi_{\mathbf{\theta}}(\mathbf{a} \vert \mathbf{\theta}) = (\mathbf{a}- \mathbf{\mu})^T \Sigma^{-1}$

It can be obtained by deriving the logarithm of the multivariate normal distributions density function with respect to $\mu$, and comes down to this code.

#return the gradient of the log policy wrt to the drawn action
return(t(as.matrix(action - policy)) %*% solve(covarMat))
}

The Monte Carlo estimation of the true gradient can now be implemented straight forward using the policy gradient theorem.

estimateGradient = function(policy) {
gradient_mu = vector(mode="numeric", length = 2)
#We play #nrSamples games with the current policy
#Each sample gives us a hint on the gradient.
#the average of the hints (=the expectation) is used as our gradient estimate
for (j in 1:nrSamples) {
action = sampleActionFromPolicy(policy)
observation = getNewObservation(action)
#observation[[2]] holds the reward for the observation
#the reward is the driving force for the optimization and scales the gradient
}
}

Having the gradient we can now apply a gradient ascent method to get a better policy.

for(i in 1:iterations) {
policy <- policy + learningRate * estimateGradient(policy)
}

I’ve plotted the environment and the actions of our agent in this environment. The drawn normal distribution is parameterized by the agents actions at each iteration. From this distribution the environment draws random numbers which get rewarded by the blue tent-function.

View post on imgur.com

Because we have a stochastic policy with constant covariance, the optimization process never stops and the system keeps wiggling around the optimal value.

However, the system even works in a dynamic environment with a changing target. This animation shows more clearly how the system works. It is truly reward driven, as the magnitude of the gradient is proportional to the overall reward during the estimation process. Hence, the convergence speed is proportional to the available reward. This makes learning slow if the reward is only sparsely granted. More generally, in a task with a bad initial policy, learning is slow at the beginning and gets increasingly faster the better the policy gets.

View post on imgur.com


text:
# Tag Info

7

The answer is 'yes'. A more detailed answer likely depends on how you define "robotics". But generally, robotics applications are considered to require a very broad spectrum of knowledge. So while most robotics includes some form of mechanical function, you could easily specialize in artificial intelligence, microcontroller design, or any number of ...

6

In short, what you are trying to do is well beyond the capabilities of top robotics research labs. That said, here is a short list of general areas you need to look into: Robotic arm dynamics (to swing the racket) Vision processing to track the shuttle Shuttle dynamics to predict shuttle path (this is not well studying so you would most likely have to ...

5

2 kgs is not very much, so i would probably consider arms that are slightly less industrial than Kuka, ABB, Fanuc, Denso and the like. However, 1.6m is pretty long and that may be hard to find in non-industrial arms. Keep in mind there are many other factors to consider when choosing a robot arm. human safety, accuracy, repeat-accuracy, speed, workspace ...

5

The torque bandwidth is typically referring to the maximum frequency of motion at which the actuator can provide that torque. So your actuator can provide a peak torque of 100 Nm, as in it can hold up a weight of 100 N held at a torque arm of 1 m. If you want to swing that weight back and forth you could do it at up to 4 Hz, but no faster without damaging or ...

5

There are 2 main reasons why the MER is still operating long after it's 90 Sol planned lifetime. The first is political, strategic, and can be summarized as 'Under promise, over deliver'. When a PI (principal investigator) proposes a high-risk scientific mission like this, they always frame the goals of the project such that their project is viewed ...

4

Working in robotics doesn't mean that you must understand (or enjoy) all the relevant disciplines. It simply means that you must understand that you are one part of a team that produces a robotic system. On the other hand, what skills you have will determine which teams will find you valuable as a member -- smaller teams require everyone to bring multiple ...

4

Whether a single 3-way, 2-position pneumatic valve (typically with a work port, an input port, and an exhaust port ‒ see page 3 of nationalpneumatic.com's pdf about valves) will suffice depends on information not given in the question. For example, if you can turn the compressor on or off at will, and if it will hold pressure when off, you can attach the ...

4

For most applications, I think the calculation you describe is good enough when selecting hardware. You want your arm to be able to have some lift capacity at the worst case, which is when the arm is fully extended. Note that you should also take into account the weight of the arm itself which is typically non-negligible. That being said, yes, there are ...

4

So this is summary...Open to discussions or edits... | Mechanism | Precision | Friction | Max length | Max force | |--------------------| ----------|----------|------------|-----------| | rack and pinion | low | high | unlimited | high | | lead screw | high | mid | limited | high | | ball screw | ...

4

The video shows 2 linear actuators driving a universal joint through ball and socket joints.

3

What about using a simple RC-servo with a rotating cam that holds one pod. When rotating down It would drop the pod it is holding. When rotating up, it would lift the whole stack for one pod height and allow the bottom pod to drop into the cam's holding space.

3

I assume that your 2 channels control forward/backward and left/right. But even if the 2 channels control forward/backward in each wheel (differential-drive style), it should still be possible to do what you are suggesting electrically instead of mechanically. You should be able to read the input signal to the motors, decide whether those signals are ...

3

Rotary mowers are mechanically simpler, so cheaper to make. The rotary mower is more tolerant of getting dull, and if you run over something like small trees or rocks, the blades take less damage, and the motor is harder to jam and stall. The blades are also easier to sharpen. For this simplicity, you get a poorer cut, and more grass damage. I do agree, ...

3

In my personal experience, I hate Google SketchUp. I Recommend that you use CAD Solidworks. Google SketchUp is not meant for gear design. In Solidworks, you are able to create gears however you may and also make it function on a three-dimensional visual on your computer screen. *I personally recommend this to you with great honestly.

3

I think there might be different reasons for this. First, historical reasons The first systems with haptic feedback were mechanical systems to which vibration / force feedback functions were added (vibrations in a pilot's handle, for instance). In the early stages robotic systems were used as haptic displays for different uses (quite early, force feedback ...

3

For your first example, Max-Weight = Torque/arm-length. Going beyond that, there are several software applications and API's out there that can be a big help for these kinds of calculations (matlab or pyODE to name a couple), but they will be pretty useless without a decent understanding of what you are computing. A good resource to learn about the mechanics ...

3

Books FIRST and VEX are fairly large competitions, so it should come as no surprise that people have literally written books on how to participate. My favorite book aimed at FTC is FTC Robotics: Tips, Tricks, Strategies, and Secrets. They've made several editions of this book; although it's not a structured curriculum, it is a great guide and a must have ...

3

I don't think they're proposing building a compressor for use in refrigeration. They're proposing a solid-state cooler/heat pump based on the elastocaloric effect: As the shape memory alloy block is strained, it gets hot. This heat would be extracted - I guess by blowing air through the device to somewhere outside the refrigerator? The air flow is then ...

3

Going forward, a Klann linkage has a near-vertical leg drop action. (See the legs at left in the wikipedia animated GIF.) It has a near-vertical leg lift action if running in reverse. (See the legs at right in the illustration.) Note, this linkage and some other leg mechanism linkages use a rotary crank; ie, rather than using a 180° back-and-forth motor, ...

3

If I understand correctly, you are referring to when the robot spins and the rack remains stationary (dynamic motions involving the rack mass seem to be slow as you would expect with such a high COM). In this case only the kinematics are important. It's important that the rotational axis of the wheels and the rotational axis of the rack-support are ...

3

They are parallel manipulators. You may find chapters on parallel manipulators in robotics textbooks, for example, A Mathematical Introduction to Robotic Manipulation, useful. There are also a number of articles related to kinematics analysis of those manipulators (such as this article).

3

I will try not to skip too many steps. Assuming a Global coordinate frame at the base and the arm is fully extended along the Y-axis of the base frame. Since SCARA has four joints, we will create four 6D spatial vectors (screws) ${ξ}_{i}$ with respect to a global coordinate frame. Keep in mind that all spatial vectors are described with respect to the ...

3

Looks like it uses a propane powered ram to launch itself into the air. The end of the piston is visible in the back of the vehicle. This webpage states that source of power is battery and propane https://bostondynamics.com/sandflea Also found this patent for a combustion powered linear actuator. https://patents.google.com/patent/US7263955B1/en

3

This is called a Stewart platform. You can use any linear actuator type, hydraulic, pneumatic or electric.

3

We can think of "jitter" as a fairly quick, fairly small perturbation upon the intended controlled behavior. A semi-quantitative design guideline (like "within 5%") needs a numerator and denominator. An arm that is supposed to move 20 cm allowing 1 cm wobble (5% of the distance) sounds pretty sloppy. A controller that overshoots by 5% ...

2

It sounds like you're describing a linear actuator with a pressure sensor (or strain gauge) attached to the end. To bridge that system across bluetooth, you may want to check out one of several microcontrollers -- look for bluetooth modules, a motor (or servo) controller, and analog inputs (to read the strain gauge).

2

Robotics is by definition a subject rooted in mechanics and if you "hate" this subject then surely there will always be an large part of this industry that you "hate". So I would suggest you review either: a. What you mean by "I hate mechanics" or "the mechanical side" b. Understand what you like about Robotics because in the end all of the work is ...

2

Based on your requirements, I would recommend the UR5 (0.85m range, 5kg payload) or UR10 (1.3 m range, 10kg payload) from Universal Robotics. Have a friend who has used it for work, and it performs well. It may be overkill on the payload, but it is the only one I would recommend! Would use ROS industrial to drive it.

2

Generally you won't need a servo. The more common way to throttle a flow is to use pneumatic solenoid valves (which are either open or closed) and control them with PWM. See (for example) this link. This is also how the boost controller in many cars works.

2

Hmm, thats definitely a unique idea. I think the shape of the top gear would have to be rounded off like half of a torus so it maintains a good interlocking through the motion from parallel to 90 degrees. Also, the motion that the top shaft/gear go through during that transition might not be a simple rotation...it might be a rotation + translation. I'm just ...

Only top voted, non community-wiki answers of a minimum length are eligible

format: plain


text:
# SCons / test / TEX / glossaries.py

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 #!/usr/bin/env python # # __COPYRIGHT__ # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be included # in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__" """ Validate that use of \glossaries in TeX source files causes SCons to be aware of the necessary created glossary files. Test configuration contributed by Robert Managan. """ import os import TestSCons test = TestSCons.TestSCons() latex = test.where_is('latex') if not latex: test.skip_test("Could not find latex; skipping test(s).\n") gloss = os.system('kpsewhich glossaries.sty') if not gloss==0: test.skip_test("glossaries.sty not installed; skipping test(s).\n") test.write('SConstruct', """\ import os env = Environment() env.PDF('glossaries', 'glossaries.tex') """) test.write('glossaries.tex', r""" \documentclass{article} \usepackage[acronym]{glossaries} \newglossaryentry{nix}{ name={Nix}, description={Version 5} } \newacronym{gnu}{GNU}{GNU's Not UNIX} \makeglossaries \begin{document} Acronyms \gls{gnu} and glossary entries \gls{nix}. \printglossary[type=acronym] \printglossary[type=main] \end{document} """) test.run(arguments = '.', stderr=None) test.must_exist(test.workpath('glossaries.acn')) test.must_exist(test.workpath('glossaries.acr')) test.must_exist(test.workpath('glossaries.alg')) test.must_exist(test.workpath('glossaries.aux')) test.must_exist(test.workpath('glossaries.fls')) test.must_exist(test.workpath('glossaries.glg')) test.must_exist(test.workpath('glossaries.glo')) test.must_exist(test.workpath('glossaries.ist')) test.must_exist(test.workpath('glossaries.log')) test.must_exist(test.workpath('glossaries.pdf')) test.run(arguments = '-c .') x = "Could not remove 'glossaries.aux': No such file or directory" test.must_not_contain_any_line(test.stdout(), [x]) test.must_not_exist(test.workpath('glossaries.acn')) test.must_not_exist(test.workpath('glossaries.acr')) test.must_not_exist(test.workpath('glossaries.alg')) test.must_not_exist(test.workpath('glossaries.aux')) test.must_not_exist(test.workpath('glossaries.fls')) test.must_not_exist(test.workpath('glossaries.glg')) test.must_not_exist(test.workpath('glossaries.glo')) test.must_not_exist(test.workpath('glossaries.ist')) test.must_not_exist(test.workpath('glossaries.log')) test.must_not_exist(test.workpath('glossaries.pdf')) test.pass_test() # Local Variables: # tab-width:4 # indent-tabs-mode:nil # End: # vim: set expandtab tabstop=4 shiftwidth=4:


text:
# Hybrid inorganic heterostructures and methods of fabricating p-type semiconductors for optoelectronic devices

##### Location
https://kaust.zoom.us/j/8305796581

#### Abstract

Semiconductor devices based on wide-bandgap materials exhibit a higher breakdown voltage, temperature tolerance, and device stability, and lower energy loss than devices based on low-bandgap materials. Several limitations challenge the use of III-nitrides and transition metal oxides as wide-bandgap materials. This thesis proposes novel methods to surmount these issues.

For III-nitride wide-bandgap materials, the lack of efficient p-type wide bandgap semiconductors limits the full potential of group-III nitride-based optoelectronic devices. Conventional wide bandgap p-type materials consisting of magnesium-doped gallium nitride (GaN:Mg) and magnesium-doped aluminum gallium nitride (AlGaN:Mg) typically exhibit low hole carrier concentrations of <$10^{18} cm^{-3}$. The hole carrier concentration will be even lower if the bandgap is tuned beyond the energy bandgap of GaN of 3.4 eV by incorporating aluminum nitride. Hence, I used different wide-bandgap inorganic p-type materials as a promising solution, e.g., copper thiocyanate (CuSCN). CuSCN has multiple attractive properties that hold potential for applications in III-nitride materials. For example, its energy band gap is up to 3.9 e.V and its electron effective mass is higher than its hole effective mass. These two key features make CuSCN a potential wide bandgap p-type material for III-nitride systems. By exposing CuSCN to chlorine, Cl$_2$-infused CuSCN thin film achieves a hole concentration up to $10^{18} cm^{-3}$ and maintains its visible-light-blind optical properties. Based on these desirable features, p-CuSCN/n-GaN heterojunction ultraviolet photodetectors, as well as the p-CuSCN and n-GaN interface, were fabricated to investigate the potential applications of p-CuSCN in III-nitride devices. The p-CuSCN/n-GaN exhibited a responsivity, external quantum efficiency, and turn-on voltage of 1.35 A/W, $5.14×10^2$ % at 330 nm, and 2.3 V, respectively. Moreover, p-CuSCN also benefits the corresponding organic solar cells; p-CuSCN-based organic solar cells perform better in power conversion efficiency and stability tests under various conditions than intrinsic CuSCN-based organic solar cells. This work on p-CuSCN not only paves the way for new III-nitride semiconductor devices, but may also potentially enable the development of organic devices with better performance and longer lifetime.

To explore the potential of transition metal oxides in UV photodetectors, NiO was selected to proceed with device fabrication because of its wider energy bandgap and lower hole effective mass than other transition metal oxides. Since single crystal quality is required to maintain its visible-light-blind optical property, brand-new templates were invented to grow single-crystal NiO thin films, TiN/MgO, and TiN/Si. Use of TiN thin film between NiO and the substrates provides a good back-side metal contact for NiO-based semiconductor devices. Several tools were employed to ascertain the single-crystal quality of as-grown NiO thin films on TiN/MgO and TiN/Si. I demonstrate NiO/TiN/MgO and NiO/TiN/Si bilayer structures may pave the way towards better NiO-based ultraviolet optoelectronic devices.

#### Brief Biography

Jian-Wei Liang is a Ph.D. Student in Electrical and Computer Engineering at Photonics Laboratory, King Abdullah University of Science and Technology (KAUST). Before joining KAUST, he obtained his B.Sc. and M.Sc. in Chemistry at National Cheng Kung University in Taiwan.

His current research interests concentrate on epitaxial growth of wide-bandgap materials (e.g. III-nitrides and transition metal oxides) using MBE, PLD, PECVD, or ALD and the development of the corresponding optoelectronics devices. Moreover, his research interests are also extended to solution-processed wide-bandgap materials, organic-inorganic hybrid structures, and their applications in organic optoelectronics devices.

He is currently a student member of SPIE and OSA.


text:
# MySQL Licensing/Distribution and Open Source (GPL)

This topic is 3619 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

I have an application written in C that makes use of a DLL to connect to a MySQL database and execute queries. If I were to distribute my application, I would have to distribute libmysql.dll as well, which requires that I either: a) Make my application Open Source using the GPL b) Pay a very large licensing fee (most likely between $800 and$3000) My main question has to do with the GPL and MySQL's FOSS exception (http://www.mysql.com/about/legal/licensing/foss-exception/) The DLL I am using was written by another developer and I am simply making use of it. If he were to make the DLL Open Source, it seems he would have the ability to distribute libmysql.dll free of charge. Would I then be able to keep my application non-Open and direct my users to download his plugin and include it in my install directory? I am in frequent contact with the developer and am fairly certain he would agree to this. It seems this would be allowed by the GPL in light of the following: (http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem) "However, in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program." I understand that these are complicated questions best resolved by a lawyer, but I'm just a poor grad student doing what I can on the cheap. I'll certainly take any advice with a grain of salt, but I'd be interested if anyone out there has some insight on MySQL licensing or the way in which the GPL applies in this case.

##### Share on other sites
Regardless of what people here say you could still be sued/served with an cease and desist letter if the licensor thinks that what you are doing is a breach of the license. The best way to avoid this and to know for sure would be to ask the licensors (Sun Microsystems).

##### Share on other sites
Sun's license pages very clearly state that if you use their stuff, you are expected to pay them. Except, if your software is FOSS. Fullstop.
They don't care if you use a wrapper library, and why would they want to care? Their rights are not transferred to whoever wrote a wrapper library only because he did, they still apply (and luckily they do -- the entire industry would be bankrupt, if you could circumvent copyrights that easily).

If you distribute a non-GPL program based on a GPL library based on a proprietary library with a GPL exception, you are not making your situation any better, in fact you make it worse. You now break two licenses instead of one.

##### Share on other sites
Connecting to a mysql database with a non gpl connection libary would be ok. If not we'd all be sued since we connect to linux servers everyday with a webbrowser.

I think the lisence his talking about is to do with the .dll. Nothing to do with sun if its made by seprate dev as he says. I think if your App gets linked(.dll) to GPL code its illegal, even if the user does it.

But if you get a bsd connection libary, and connect to mysql via sockets/networking. That would be ok.

But i'm not sure.

##### Share on other sites
I think PostgreSQL has a nicer license, namely BSD. You should consider using that instead of MySQL if you don't wan't to pay the fee.

namaste

##### Share on other sites
Thanks all for the comments. I will probably get in touch with a Sun rep before all is said and done, since I've already spoken to several over phone/email about licensing costs. I just want to be as informed as possible ahead of time.

Quote:
 Original post by samothSun's license pages very clearly state that if you use their stuff, you are expected to pay them. Except, if your software is FOSS. Fullstop.

I don't think it's quite that straightforward. The developer who wrote the plugin is allowed to distribute libmysql.dll since his application is open source. Fullstop.

The question is then what applications are able to use his plugin - only other open source applications? I don't know if you can infer that from the license pages.

Quote:
 If you distribute a non-GPL program based on a GPL library based on a proprietary library with a GPL exception, you are not making your situation any better, in fact you make it worse. You now break two licenses instead of one.

I'm not sure what you mean by "based on a GPL library". I'd be using an open source DLL/plugin which appears to be supported by the GPL because of the section of the FAQ I linked above. Simply because my application is proprietary doesn't prohibit me from distributing GPL applications alongside it. If you could quote the portion of the GPL that you believe I'd be in violation of, I'd like to check it out.

##### Share on other sites
Is it really GPL? Isn't it LGPL (the client library that is)?

I just read the page, it's GPL. Seems weird, but whatever. Anyway, I seem to recall reading something like "If your app links to a GPL program/lib, you must also release your app under GPL. However, if you can dynamicly load it (LoadLibrary()) instead, you can use any license you want." I haven't confirmed this though.

##### Share on other sites
Quote:
 Original post by ZelekI don't think it's quite that straightforward. The developer who wrote the plugin is allowed to distribute libmysql.dll since his application is open source. Fullstop.The question is then what applications are able to use his plugin - only other open source applications? I don't know if you can infer that from the license pages.

Sorry but licensing doesn't work that way. The author of the plugin is making use of the dll under the terms of the license agreement. He almost certainly has no rights to grant you a license for your commercial app to make use of this dll as his license with Sun will state that any of their open source code used in his plugin can be freely used but only on the same terms as his license.

##### Share on other sites
Quote:
 Original post by ZelekI don't think it's quite that straightforward. The developer who wrote the plugin is allowed to distribute libmysql.dll since his application is open source. Fullstop.
Yes, quite so, but that does not mean that you have any rights. This is entirely irrelevant for your person.
The legalese talk that's important is "nonexclusive and nontransferable license", which is more or less the wording of pretty much every license, including the ones by Sun.
It means they give the right to use their stuff to whoever else they want, whenever they want, and whoever was granted a right can't do anything about it, nor give any rights to someone else.

If your program links against a library (GPL or not) that links against the MySQL client library, then your program effectively links against the MySQL client library. Thus you fall under "OEMs, ISVs, VARs and other distributors that combine and distribute commercially licensed software with MySQL software and do not wish to distribute the source code...".

If that library you use was written from scratch and only reimplemented the MySQL client protocol, then of course things would look different.

##### Share on other sites
If the particular MySQL connection library you are looking at using has an incompatible license, why not switch to another? There are many MySQL connection libraries out there, and at least a few are licensed under the less restrictive BSD or LGPL licenses (for example, mysql++).

1. 1
Rutin
46
2. 2
3. 3
4. 4
5. 5
JoeJ
19

• 11
• 15
• 9
• 10
• 13
• ### Forum Statistics

• Total Topics
633004
• Total Posts
3009840
• ### Who's Online (See full list)

There are no registered users currently online

×


text:
# Extracting the Percentage of color (Red,blue,green,yellow,orange) in an image in Opencv?

I have to differentiate between 5 types of images which could have mostly either red,green, blue, orange or yellow color with some white or black color. I have to find which color is prominent in the image.

The source of images is Webcam, so the actual color also depends upon the illumination and distance of the image from webcam.

I am trying to calculate the percentage based upon "Hue" values. I am specifying some range for each color. My ranges are:

Red: 0-10
Green: 50-65

Yellow: 18-21

Blue: 100-115

PROBLEM: Even though the image displayed is not Red still i am getting high % for red color.

My code is following:

int findRect::checkByHSV(int svmResult, Mat detectedSquare)
{

Mat hsv_img;
cvtColor(detectedSquare,hsv_img,CV_BGR2HSV);

Vec3b pixel;
float totalPixel=0; // to count the total number of pixels in an image---to get the Percentage later
float totalClass[6];// because we want to test for 5 classes + a garbage class.{{ Class-0 -> Garbage, Class-1->Orange, Class-2->Green, Class-3->Red,
//  Class-4->Blue, Class-5->Yellow }}

for(int i=0; i<hsv_img.rows; i++)
{
for (int j=0; j<hsv_img.cols; j++)
{

totalPixel++;
pixel= hsv_img.at<Vec3b>(i,j);

if(  pixel[0]>0 &&  pixel[0]<1  )           totalClass[1]++;    // Class-1->Orange
else if (  pixel[0]>50 &&  pixel[0]<65  )   totalClass[2]++;    // To check Green class-2 //svmResult==2 &&
else if (  pixel[0]>0 &&  pixel[0]<10  )        totalClass[3]++;    // Class-3->Red
else if (  pixel[0]>100 &&  pixel[0]<115  )     totalClass[4]++;    // Class-4->Blue
else if (  pixel[0]>18 &&  pixel[0]<21  )       totalClass[5]++;    // Class-5->Yellow
}

}

float percentage[5];
totalClass[0]=0; //Putting zero to the Garbage class

for (int i=0; i<=5; i++)
{
percentage[i] = (totalClass[i] / totalPixel )*100;
}

cout<<"\n Organge: "<<percentage[1]<<"  Green: "<<percentage[2]<<"  Red: "<<percentage[3]<<"  Blue: "<<percentage[4]<<"  Yellow: "<<percentage[5]<<"\n \n";

return svmResult;
}

edit retag close merge delete

Sort by » oldest newest most voted

You can use the function countNonZero and divide by the total number of pixels of image. A example of use:

vector<Mat> channels;
split(hsv_img,channels);

Mat red, blue, green;
inRange(channels[0], Scalar(0), Scalar(10), red); // red
// ... do the same for blue, green, etc only changing the Scalar values and the Mat

double image_size = hsv_img.cols*hsv_img.rows;
double red_percent = ((double) cv::countNonZero(red))/image_size;

But it could be not optimal depending of the application (for example, if you need to scan lots of image). Anyway, you can use it to compare the values.

more

Official site

GitHub

Wiki

Documentation


text:
# Revision to Tripoli Rule Regarding Wireless Remote Switches

### Help Support The Rocketry Forum:

#### warnerr

I think we can all agree the horse has been beaten into a buttery smooth paste at this point. There were plenty of us helping.
You can only beat the horse using Ebony Wood Whips. No other whips are permitted.

#### Pariah Zero

##### Gravity’s Plaything
TRF Supporter
You can only beat the horse using Ebony Wood Whips. No other whips are permitted.
Oh. Um. Sorry, everybody! I was using a crowbar that was conveniently close.

My bad. Sorry for the mess.

#### Voyager1

##### Well-Known Member
TRF Supporter
Keep in mind that altimeters are already solid-state. Should we be expecting a directive from the BOD next that we can only use mechanical altimeters? Or we can't use radio tracking? You'll have a hard time closing that box if you open it.

#### manixFan

##### Not a rocket scientist
Safety agencies , ul, tuv, ce etc trust semiconductors. What they do not trust is software. Also safety agencies require devices to safely withstand 8kv electrostatic discharge while operating to stay safe.

It's not the reliability of the pn junction that is the risk here.
Of course there is no software in the magnetic switch. Would it meet UL safety standards?

Tony

#### jderimig

Of course there is no software in the magnetic switch. Would it meet UL safety standards?

Tony
UL would require a physical disconnect in the system but it would not specify when it must be used.

I sure hope there aren't altimeters on the market that randomly glitch and fire their outputs at power-on. I've never encountered one and if I did I would toss it. Though let's not talk about how dirty and glitchy the power-on sequence could be for the industry standard "twist-and-tape" method.
Just last week I had a potential customer email me, asking the specific questions about what I do to prevent power-up glitches for the Raven altimeters, because he had an experience with two different units of an altimeter from another manufacturer that did behave this way. I don't know if this flyer had something odd about his power source that the other manufacturer hadn't accounted for, or what might have been a contributing cause for that other manufacturer's altimeter, but after the first rev of the Raven I added an external part that holds the microcontroller in reset until the voltage is in the nominal range. I know there were some multi-million dollar spacecraft power output boards driven by Actel 1280 FPGAs in the late 90s (you might recall them too) that had glitches at power-up, too.

Last edited:

#### UhClem

##### Well-Known Member
I know there were some multi-million dollar spacecraft power output boards driven by Actel 1280 FPGAs in the late 90s (you might recall them too) that had glitches at power-up, too.
A flight termination safe and arm that I am familiar with used an FPGA and had two safety systems to prevent this sort of thing. The static safety (MOSFET trigger of spark gap was of course vulnerable to this sort of thing. Which is why they had a dynamic safety. The FPGA had to toggle the gates of a couple of MOSFETs in a DC to DC converter to charge the 2,500V firing capacitor. Until that was charged the thing was safe. After it was charged it had many single point failure modes. Which is why WSMR ground safety insisted that it not be charged until several seconds after launch.

But to bring this back to hobby rocketry, the Adept ALTS2 (I owned one for a while) was notorious for firing its outputs at power up.

#### Steve Shannon

##### Well-Known Member
TRF Supporter
A flight termination safe and arm that I am familiar with used an FPGA and had two safety systems to prevent this sort of thing. The static safety (MOSFET trigger of spark gap was of course vulnerable to this sort of thing. Which is why they had a dynamic safety. The FPGA had to toggle the gates of a couple of MOSFETs in a DC to DC converter to charge the 2,500V firing capacitor. Until that was charged the thing was safe. After it was charged it had many single point failure modes. Which is why WSMR ground safety insisted that it not be charged until several seconds after launch.

But to bring this back to hobby rocketry, the Adept ALTS2 (I owned one for a while) was notorious for firing its outputs at power up.
Way to pull me back in, David.

We determined that an AltAcc would fire its output if you connected the battery three times quickly. It was repeatable.

Please explain the difference between static and dynamic inhibits.

One more .....

#### dshmel

##### Well-Known Member
.... and this makes 1,000 !!!

#### UhClem

##### Well-Known Member
Way to pull me back in, David.

We determined that an AltAcc would fire its output if you connected the battery three times quickly. It was repeatable.

Please explain the difference between static and dynamic inhibits.
Since the safe/arm screw in the AltAcc is in series with its outputs that requires a failure in that switch. Or an operator connecting the battery with the switch closed.

Static safety: simple MOSFET switch.
Dynamic: requires repeated and coordinated operation. In other words, a failed pin on the FPGA would have no effect.

#### Steve Shannon

##### Well-Known Member
TRF Supporter
Since the safe/arm screw in the AltAcc is in series with its outputs that requires a failure in that switch. Or an operator connecting the battery with the switch closed.

Static safety: simple MOSFET switch.
Dynamic: requires repeated and coordinated operation. In other words, a failed pin on the FPGA would have no effect.
Agreed, that the AltAcc either had a closed switch or a failed switch.

Thanks for the explanation about static vs. dynamic safeties.

#### cerving

##### Owner, Eggtimer Rocketry
TRF Supporter
Since the safe/arm screw in the AltAcc is in series with its outputs that requires a failure in that switch. Or an operator connecting the battery with the switch closed.

Static safety: simple MOSFET switch.
Dynamic: requires repeated and coordinated operation. In other words, a failed pin on the FPGA would have no effect.
What about two switching device in series, each one triggered by a different component on the same board (like the Proton)? Or two switching device in series, triggered by two separate pins on the same processor (like the Quantum)? In the former case, two devices that are electrically "off" at power-up would have to fail "on" to fire, in the latter case two pins on the same device that are normally "off" at power-up would have to fail "on". (This is strictly a hardware discussion... we're taking software off the table here, because I KNOW that it's a potential {albeit low} source of failure. Not trying to contradict you... I respect your knowledge.)

MGL

#### jderimig

I once saw a design where the output gates were driven by a charge-pump circult. To fire the charges required a stream of pulses from the processor so that you had to pump up the voltage on the gates against a constant drain resistor.

#### UhClem

##### Well-Known Member
What about two switching device in series, each one triggered by a different component on the same board (like the Proton)?
It is kind of an apple and oranges kind of thing. Unintended operation of a flight termination system falls squarely in the catastrophic hazard class. By using an EFI and the dynamic safety system they could do away with the complicated mechanical safe and arm.

I have thought about using that idea for an altimeter but it would still have a screw switch to control power.

The thing to focus on is single point failure modes. You can tolerate those to some extent (at low likelihood) when at the pad. But not while walking around.

The Quantum still has a single point failure mode in the ESP8266. The I2C data expander (and bit banged I2C) helps with the Proton. (No schematics or code available so the best I can do is guess based on parts lists.)

#### cerving

##### Owner, Eggtimer Rocketry
TRF Supporter
I2C on the ESP8266 isn't bit banged... it's in the on-chip I/O subsystem. I HAVE done bit-banged I2C (the Quark uses it), it's actually pretty reliable as long as you account for the "no response" cases from the peripheral when you send it a command. Either way, the failure mode for the peripheral controller would be to NOT fire the FET, since the output is reset to "off" at power up, and it's going to take a very specific set of events to make that output turn "on".

The failure mode on the Quantum would be that the processor's I/O subsystem either sends a "1" to both the FET and the BJT's at power-up (not likely) or that there's a software glitch that sends the registers the wrong data (also not likely). "Not likely" is not the same as "impossible", but it's also not "impossible" for a power switch to accidentally power "on" as well, unless there's some kind of positive mechanical lock.

#### UhClem

##### Well-Known Member
I2C on the ESP8266 isn't bit banged... it's in the on-chip I/O subsystem.
Then you have unique hardware. The official datasheet says "ESP8266EX has one I2C, which is realized via software programming," I even dug down into the Espressif SDK and Arduino libraries. Software all the way down.

#### David Schwantz

##### Well-Known Member
I just have one more question. Steve has stated that pull pin switches are valid. Does it matter if the switch is rocker, toggle, push button, slide, as long as it physically breaks the circuit?

#### Steve Shannon

##### Well-Known Member
TRF Supporter
I just have one more question. Steve has stated that pull pin switches are valid. Does it matter if the switch is rocker, toggle, push button, slide, as long as it physically breaks the circuit?
No

Thanks.

#### Steve Shannon

##### Well-Known Member
TRF Supporter
You bet. All are allowed, but you should consider quality, resistance to shock and vibration, ability to easily implement, and ability to see at a glance what position the switches are in.
I like the NKK CS series of slide switches.

#### rrobe99999

##### Well-Known Member
That’s a good question, Vern. Because I knew he works with missiles as a day job, I made the assumption that it came from that perspective. I’ll ask.
Please do not pursue this with the government. Yes, someone who works with missiles knows the difference between an inhibit and an interrupt. The current NFPA rule allows us to pursue our hobby in a safe manner, while allowing us to integrate designs that meet our reliability and performance requirements. TRA BOD can make all the rules that they want, but we don't want the Gov to make stricter rules that nobody else wants.

#### boatgeek

##### Well-Known Member
NAR just came out with a similar rule in their Electronic Rocketeer. Hopefully, they will follow suit on what TRA does after discussions with manufacturers.

#### cerving

##### Owner, Eggtimer Rocketry
TRF Supporter
NAR just came out with a similar rule in their Electronic Rocketeer. Hopefully, they will follow suit on what TRA does after discussions with manufacturers.
Don't count on it. NAR used to make you put six switches on a L3 rocket... one on each altimeter's power, and one on each charge.

#### Nytrunner

##### Pop lugs, not drugs
NAR just came out with a similar rule in their Electronic Rocketeer. Hopefully, they will follow suit on what TRA does after discussions with manufacturers.
Are the E-Rocketeer email blurbs an official rule? I've always considered them safety tips and instructional with safety mindset.

#### rharshberger

##### Well-Known Member
Are the E-Rocketeer email blurbs an official rule? I've always considered them safety tips and instructional with safety mindset.
Its an official newsletter from NAR. It really not surprising that NAR would follow along as most of their L3CC's are TRA TAPS as well and many members are dual membership.

#### UhClem

##### Well-Known Member
NAR just came out with a similar rule in their Electronic Rocketeer. Hopefully, they will follow suit on what TRA does after discussions with manufacturers.
Not a rule. They used the word "should" rather than "shall" and it isn't part of the safety code or an official policy. Worse is that it misunderstands the RFI problem.

RFI could result in your being unable to communicate with a wireless switch but it can't cause it to do things. At least if the communications are properly encrypted. If they really do have a problem with wireless switches then they also have a problem with wireless launch systems.

Magnetic switches require field strengths unlikely to be produced by anything other than powerful magnets. Items which are in short supply on the field.

Since relays have been mentioned I thought someone might be interested in a high dollar MIL-SPEC relay (rated for high vibration and shock environments) at BGMicro. $1.50 each today which is way less than the original price. #### Buckeye ##### Well-Known Member Are the E-Rocketeer email blurbs an official rule? I've always considered them safety tips and instructional with safety mindset. Reads like a suggestion to me. Not a "rule." #### cerving ##### Owner, Eggtimer Rocketry TRF Sponsor TRF Supporter The blurb from our manuals is in the FCC Part 15 disclaimer, we state the "official" verbage then paraphrase it so that it's intelligible for most people. It does not mean that an WiFi Switch is likely to get zapped by outside interference... it just states that unlicensed devices have no regulatory protection against it, unlike licensed devices. Of course, the laws of physics don't care much about regulations... #### Steve Shannon ##### Well-Known Member TRF Supporter Not a rule. They used the word "should" rather than "shall" and it isn't part of the safety code or an official policy. Worse is that it misunderstands the RFI problem. RFI could result in your being unable to communicate with a wireless switch but it can't cause it to do things. At least if the communications are properly encrypted. If they really do have a problem with wireless switches then they also have a problem with wireless launch systems. Magnetic switches require field strengths unlikely to be produced by anything other than powerful magnets. Items which are in short supply on the field. Since relays have been mentioned I thought someone might be interested in a high dollar MIL-SPEC relay (rated for high vibration and shock environments) at BGMicro.$1.50 each today which is way less than the original price.
My interpretation was that Steve’s mention of RFI was more closely related to the possibility of a strong transmitter resulting in an accident similar those experienced by some who put Garmin Astro dog transmitters into their av-bays only to have their altimeters fire an ejection charge, not spoofing a transmitted command.
And yes, he said “should” rather than “shall”.
I’ll check those relays out. Thanks!

2


text:
# 4.1: Repackaging Newton's Second Law

## Definition of Impulse

In chapter 2, we made a point of emphasizing that force is not possessed by objects – it is an interaction between them. One way we know this is that if the same force is exerted on identical objects that start at rest, the two objects are not necessarily moving the same afterward. There is an important ingredient missing here – the duration that the force acts. Since the force causes an acceleration, the longer it acts, the more the velocity is affected. So multiplying the force by the amount of time it acts may provide us with a useful quantity. The force may be changing magnitude or direction while it acts, but over a very short time this product is:

$d\overrightarrow J = \overrightarrow F dt$

If we want to know the totality of this quantity over a finite time interval, we need to add up all these little contributions. We give this quantity the name impulse.

Definition: Impulse

$\overrightarrow J_{tot}\left(t_A \rightarrow t_B\right) \equiv \int \limits_{t_A}^{t_B} \overrightarrow F_{net} dt \nonumber$

This quantity is the sum of the product of the forces and the times over which those forces act. This certainly sounds very similar to work, which takes a product of forces and displacements. Also, impulse will have an impact on the motion of the object, as work did. But there are also many differences between these two quantities.

The first difference between impulse and work is that they obviously represent different physical quantities, because they have different units. While work has units of energy which we measure in Joules (or Newton-meters), impulse has units of force-times-time, measured in Newton-seconds. A second difference is that the impulse integral (mercifully) is not a line integral – there is no "path" to concern ourselves with when computing impulse. And third, because there is no dot product involved with the impulse integral, the result is a vector, in contrast to work, which is a scalar.

## Definition of Momentum

The definition of impulse is not the end of the story, any more than the definition of work was. It needs to be related to the effect it has on the motion of the object. In the case of work, this relationship was expressed as the work-energy theorem:

$\begin{array}{l} \text{actions of pushes and pulls} && = && W_{tot}\left(A\rightarrow B\right) \\ && = && \int \limits_A^B \overrightarrow F_{net} \cdot \overrightarrow {dl} \\ && = && \frac{1}{2} mv_B^2 - \frac{1}{2} mv_A^2 \\ && = && \Delta KE \\ && = && \text{effect of pushes and pulls} \end{array}$

For the case of impulse, we find this relationship again by coming back to Newton's second law, and noting that the integral of acceleration is velocity:

$\begin{array}{l} \text{actions of pushes and pulls} && = && \overrightarrow J_{tot}\left(t_A \rightarrow t_B\right) \\ && = && \int \limits_{t_A}^{t_B} \overrightarrow F_{net} dt \\ && = && \int \limits_{t_A}^{t_B} \left[m\overrightarrow a_{cm}\right] dt \\ && = && \left[m\overrightarrow v_{cm}\right]_A^B \\ && = && \Delta \left(m \overrightarrow v_{cm} \right) \equiv \Delta \overrightarrow p_{cm} \\ && = && \text{effect of pushes and pulls} \end{array}$

We call the quantity $$\overrightarrow p$$ momentum (which for a single object is defined as its mass multiplied by its velocity vector).

Definition: Momentum

$\overrightarrow p \equiv m \overrightarrow v\nonumber$

Equation 4.1.3 is known as the impulse-momentum theorem. Like kinetic energy, momentum is related to the motion of the object (and the mass), but besides being a different function of mass and velocity than kinetic energy, it is also different in that it is a vector. This means that the total impulse can lead to a change in the magnitude or direction (or both) of the momentum vector.

The astute reader will undoubtedly realize that all we have really done here is to introduce a new vector, and use it to repackage Newton's second law. Indeed, we can rewrite the second law thus:

$\overrightarrow F_{net} = m \overrightarrow a_{cm} = m \dfrac{d}{dt}\overrightarrow v_{cm} = \dfrac{d}{dt}\left(m\overrightarrow v_{cm}\right) = \dfrac{d}{dt}\overrightarrow p_{cm}$

Given we are making comparisons between momentum and kinetic energy, it is useful to point out a direct mathematical relationship, which not only points out the difference between the two quantities, but will also be quite useful later on:

$KE = \frac{1}{2} mv^2 = \dfrac{\left(mv\right)^2}{2m} = \dfrac{p^2}{2m} = \dfrac{\overrightarrow p \cdot \overrightarrow p}{2m}$

## Systems and Momentum Conservation

Let's continue following the trajectory from our discussion of work-energy, by returning to the idea of defining a system. As before, we define a system as an arbitrarily-grouped collection of objects, which can experience forces between themselves, or from outside the system. Previously we said that forces between objects within the system were responsible for internal work and forces exerted on objects within the system from outside provide external work. We will now similarly define internal impulse as coming from forces between objects within the system, and external impulse as coming from objects outside the system.

When it comes to forces between objects within our defined system, we know that the work done on one object does not cancel the work done on the other object. If the internal force is conservative, the non-zero total work done between the objects equals the energy converted between kinetic and potential energy. If the internal force is non-conservative, then the non-zero total work done between the objects equals the energy converted from mechanical to thermal energy. Is there an analogous process for impulse?

To answer this question, we need to determine whether impulses internal to a system don't cancel out, as in the case of work. We again start with Newton's third law, which ensures that the two forces involved in creating the pair of impulses are equal-and-opposite. Impulse vectors have the same directions as their associated force vectors, so the third law pair of forces results in a pair of impulses that are in opposite directions. But what about the magnitudes? Well, the force magnitudes are equal thanks to the third law, so all that remains is the time interval. There is never a moment when a force is acting that its third law pair isn't also acting, so the time intervals are the same. This leads to the following very important result: All of the impulses internal to a system cancel each other out. This means that there is no momentum analog to potential or thermal energy within a system. There is only momentum, and if the system experiences no external impulses, then momentum is conserved for the system. Comparing to what we got for energy, it looks like this:

$\begin{array}{c} \textbf{work-energy}&\;\;\;\;\;\;&\textbf{impulse-momentum} \\ W_{ext} = \Delta KE \underbrace{- W_{cons} - W_{non - cons}}_{from\;internal\;forces}&\;\;\;\;\;\;&\overrightarrow J_{ext} = \Delta \overrightarrow p_{cm} \underbrace { - \overrightarrow J_{cons} - \overrightarrow J_{non - cons}}_{from\;internal\;forces} \\ W_{ext} = \Delta KE + \Delta PE + \Delta E_{thermal}&\;\;\;\;\;\;&\overrightarrow J_{ext} = \Delta \overrightarrow p_{cm} + 0 \;\;\;\; + \; 0\;\;\;\;\;\;\;\;\;\;\; \end{array}$

There are two important features of this result:

1. It doesn't matter what forces are acting internally. The result we obtained made no mention of whether the internal force was conservative or non-conservative – all forces satisfy Newton's third law, and the pairs act for equal periods of time, so the impulses cancel regardless of the nature of the force.
2. The quantity (momentum) that is conserved within the closed system is a vector. This means that adding up all of the momentum vectors of a system at one point in time, then doing so again at another point in time, will give the same total vector in both cases, if the system is isolated from external impulses. This means that the total magnitude and direction don't change, or equivalently that the components measured in a given coordinate system don't change.

Example $$\PageIndex{1}$$

Two blocks of different masses are attached to identical springs that are horizontal to the frictionless surface on which the block rests. If the springs are stretched the same distance and the blocks are released from rest, how do the following quantities compare for the two blocks when they reach the equilibrium point?

1. kinetic energy
2. momentum
3. velocity
Solution

a. The springs are stretched an equal amount, which means they both store the same potential energy. That means that when they get to the equilibrium point where they both have zero potential energy, they must have the same kinetic energy, since the mechanical energy is conserved.

b. We can determine the difference in momenta for the two blocks in two ways. First, we can consider the impulse given to each block by the spring. In the case of the more massive block, the spring force will accelerate it less, which means it will take longer to get to the equilibrium point. At every point during their journeys, the two blocks experience the same amount of force, but since the time interval for the heavier block is longer, it must experience the greater impulse. Therefore the heavier block gains more momentum, and since both blocks started with zero momentum, the heavier block must have more momentum at the equilibrium point. The second solution is much simpler: We already know that the two blocks end with the same $$KE$$, so since $$KE=p^2/2m$$, the block with the greater mass must have more momentum.

c. With the same kinetic energy, using $$KE=\frac{1}{2}mv^2$$, we see that the block with the greater mass must have the lower velocity.

The moral of this story: Although we tend to use kinetic energy, momentum, and velocity as proxies for motion, they are all quite different quantities.

## Partial Momentum Conservation

We have to give some extra thought to what we mean by a conserved vector. Since a vector has both magnitude and direction, then to be conserved, both of those properties must remain unchanged. An equivalent way of saying this is that for the vector to be conserved, every component of that vector must be individually conserved. If the full momentum vector is not conserved, it is still possible for one or two of its components to be conserved, if the components of the external impulse in those directions is zero. So for example, a projectile (with no air resistance) conserves momentum in the two horizontal directions, but not in the vertical direction. This allows us to use momentum conservation to solve a much broader range of problems than if we can only consider complete momentum conservation.

This page titled 4.1: Repackaging Newton's Second Law is shared under a CC BY-SA 4.0 license and was authored, remixed, and/or curated by Tom Weideman directly on the LibreTexts platform.


text:
How to integrate this?

Homework Statement

How to integrate the double integral cos(x+y) dy dx from 0 to pi and from 0 to pi again.

The Attempt at a Solution

Here's the work:
u=x+y
du=dy
cos(u)du=sin(x+y)
integral of [sin(x+y)] evaluate from 0 to pi dx from 0 to pi
integral of (sin(x+pi)-sin(x))dx from 0 to pi
And what's next?

LCKurtz
Homework Helper
Gold Member

Homework Statement

How to integrate the double integral cos(x+y) dy dx from 0 to pi and from 0 to pi again.

The Attempt at a Solution

Here's the work:
u=x+y
du=dy
cos(u)du=sin(x+y)
integral of [sin(x+y)] evaluate from 0 to pi dx from 0 to pi
integral of (sin(x+pi)-sin(x))dx from 0 to pi
And what's next?

Integrate again, similar to what you did for the first integral.

Er...doesn't the final step that you list give you the answer already?

But I can't. Because sin(x+pi)-sin(x)=sin(x)+sin(pi)-sin(x)=sin(pi)=0. The integral of 0 is?

LCKurtz


text:
# org-mode latex and pdf export custom title

I'm using the latest org-plus-contrib package from the org ELPA archive under emacs 24.5 (Linux and OSX). I needed to have a custom title which includes a logo PNG in documents I export from org to PDF. I use the hitec document class as the bae article class.

I don't always need to generate this custom title, so rather than define a new custom class, I add the following to one of my org template files I use when creating a new document. The solution mostly works, but I'm not sure if my approach is really that good and would like to get some feedback or suggestions.

My requirement is to have the title include a PNG logo on the left and have the title, subtitle, author and date on the right (flushright). This is what I have in my latex preamble

\makeatletter
\def\@maketitle{
\begin{minipage}[c][4cm][t]{\linewidth}
\begin{minipage}[t][4cm][c]{4cm}
\includegraphics{/home/tcross/Pictures/unelogo_medium.png}
\end{minipage}
\begin{minipage}[t][5cm][c]{10cm}
\flushright
\Large \textbf{\@title} \\
\vspace{16pt}
\large \@author \\
\normalsize \@date
\end{minipage}
\end{minipage}}
\makeatother

What I do is define a minipage and then inside this minipage, I define two more minipages which are set to be side by side with the left minipage containing the logo and the right minipage containing the title, author, date etc.

This mostly works. I do need to tweak the left minipage a little to get the logo positioned closer to the left margin, but apart from that it seems to work OK (so far).

What I'm wondering is whether this is the best way to structure this title and logo requirement? I thought about using other possible techniques, such as a frame box etc, but reading the manual, there seemed to be other restrictions which might have been a problem.

I've been a LaTeX user for a long time, but up until now, I've just used the default styles. This is the first time I've attempted to modify something like the article title page style in a generic manner which wold work for all my future org documents which need this type of title. I don't necessarily understand exactly how this all works - I got to this point by looking at existing style files and doing a git of googling etc.

• Is this really an org-mode question, or is it just about latex? You might get better answers from the TeX stackexchange site. – erikstokes Dec 24 '15 at 15:34
• Yes, it is focused on LaTeX, but I wasn't sure if there may have been a better way of doing this sort of customization when your using org-mode. My solution adds the titlepage definiton using #+LATEX_HEADER, which is fine. I may post this to the tex group as well just to see if the specific latex is OK or can be made better. – Tim X Dec 25 '15 at 21:23


text:
# Communicating A/B Test Results for Conversion Rates with Ratios and Uncertainty Intervals

A/B testing is a tool for supporting decision-making in business, and so in addition to getting the statistics right, it’s really important to communicate well with the non-statisticians who will have the final say on the go/no-go decision. Most A/B tests in practice are testing ratios, conversion rates of various sorts – say, the proportion of people who visit your web site who buy at least one pair of shoes. Although the underlying data is just four numbers (visitors and purchasers, from the control group and the test group), there are lots of ways to compute statistics and present those numbers. Not all of those ways are ideal for supporting communication.

In this post, I’m going to walk through my favorite way of presenting A/B test results for conversion rates – as ratios, with uncertainty intervals around those ratios. For instance, you might be able to say something like “this test very likely increased the conversion rate by somewhere between +0.6% and +4.8%, perhaps around +3%.” (That would be a really good result for almost any change on any web site, by the way!) Business people think in percents, all day, every day – almost every KPI is presented as quarterly or annual growth. So presenting this way means you’re speaking their language and will get their attention.

But, that’s not how most web sites and A/B testing tools present the numbers. Suppose you had 100,000 visitors to your A and B variants of your site, 15,000 of them converted in the A (control) variant (15%), and 15,400 converted in the B (test) variant. Let’s look at how some of those tools might present those results.

At AB Testguide, a web calculator you might get when you type “A/B test calculator” into a web search engine, you get the 2.7% relative ratio ($$\frac{15400-15000}{15000}$$), but everything else is (in my view) a confusing mess:

• The bottom-line box up top is nice, but it shows unlabeled uncertainty intervals, so you can’t really tell how uncertain each conversion rate is. (As an aside, I often follow Gelman’s advice to use “uncertainty” instead of “confidence”, but it’s the same thing.)
• Those normal curves are hard to read and take up a ton of space. They’re supposed to communicate that each measurement has uncertainty, and that there’s not much overlap, but it’s unclear what “not much” means, or how you’re supposed to use the graph to make a decision.
• The boxes below show the steps in the standard frequentist computation of the $$p$$-value for the ratio test, which is what the app is doing. That’s fine, I guess, but none of these numbers help you much with communication. And if you’re using an app like this, and not, say, the tools built in to R or Python, you’re probably not a statistician, so this is a little bit of blinding you with science.

Speaking of R, let’s look at how its built-in prop.test function presents the results. This is a standard tool for statisticians. It’s one line of code from a standard library:

prop.test(c(15400, 15000), c(100000, 100000))
##
##  2-sample test for equality of proportions with continuity correction
##
## data:  c(15400, 15000) out of c(1e+05, 1e+05)
## X-squared = 6.1756, df = 1, p-value = 0.01295
## alternative hypothesis: two.sided
## 95 percent confidence interval:
##  0.0008431498 0.0071568502
## sample estimates:
## prop 1 prop 2
##  0.154  0.150

This output gives you what you’d need to format your results for an academic paper. You might say: “The test increased the conversion rate significantly ($$\Chi^2(1)=6.18, p=0.01$$).” That’s not really going to help you talk to a product manager. It does give a confidence interval of [0.0008 to 0.0071], but that’s for the absolute difference of the proportions of 0.004, not the relative change. Again, you’re better off if you can consistently communicate using relative measures.

What about commercial products? Lots of tech companies use Optimizely, which has nice tools for running A/B tests from either the front-end, where marketers can change the UI without software engineers, or the back-end, where engineers can run robust tests that aren’t invalidated by ad-blockers. But I don’t love their presentation of results, such as for this A/B/C (two tests vs. one control) test from their documentation:

• They do a nice job of showing the number of visitors, the conversion rate, and the relative improvement (in this case, negative).
• But they show a difficult-to-interpret unlabeled confidence interval which just says whether the interval includes 0 (no change) or not.
• And they use an unusual presentation of $$1-p$$ for statistical significance. This is likely to draw non-statisticians to misinterpret this value as “the likelihood that the improvement number (e.g., -0.73%) is correct.” The correct meaning is more like “the likelihood that a re-run of this experiment would not show an effect of this size or larger, if the true effect size is exactly 0.” So it’s not supporting effective or correct statistical communication.

So what might be better? I think that focusing on the relative ratio (as that web site and Optimizely do) is a good idea, but we should lean into uncertainty intervals more. In particular, instead of trying to show uncertainty intervals on both of the raw measurements (as the web site does), we should compute uncertainty intervals on the ratio, and focus on that interval even more than the point estimate of the ratio.

For the toy example from above, I’d recommend saying something like: “the improvement is very likely between 0.6% and 4.8%, with a point estimate around 3%.” If you wanted, you could draw a little graph of this, and I’ll show you a decent way to do that below, but really, the three numbers are enough.

But where did those numbers come from? As it turns out, the ratio of two proportions (each of which is an observation from an underlying binomial distribution) has an easy-to-compute distribution. The R code below computes the 95th percentile range of that distribution, representing the uncertainty interval. (The “very likely” above is a bit of hand-waving to communicate this to a non-statistician. More on that below.)

cr_ratio <- function(a_ct, b_ct, a_conv, b_conv,
percentiles=c(0.025, .5, 0.975),
as_percents = TRUE) {
a_prop = a_conv / a_ct
b_prop = b_conv / b_ct
m = log(b_prop / a_prop)
v = ((1 / a_prop) - 1) / a_ct + ((1 / b_prop) - 1) / b_ct
ret = exp(qnorm(percentiles, mean=m, sd=sqrt(v)))
if (as_percents) ret <- 100 * (ret - 1)
names(ret) = percentiles * 100
ret
}

cr_ratio(100000, 100000, 15000, 15400)
##       2.5        50      97.5
## 0.5627688 2.6666667 4.8145807

Removing insignificant digits and rounding appropriately, this yields the 0.6% to 4.8% range and the point estimate.

You can, with a bit of effort, create visualizations that get at the most important things to communicate: the uncertainty interval, and the “no impact” baseline:

df <- as_tibble(t(cr_ratio(100000, 100000, 15000, 15400, as_percents=FALSE)))
names(df) <- c('min', 'pt', 'max')
df$x <- 1 labels <- tribble( ~x, ~y, ~txt, "purchase rate", df$min, scales::percent(df$min-1, .1), "purchase rate", df$max, scales::percent(df$max-1, .1) ) ggplot(df, aes(x, ymin=min, y=pt, ymax=max)) + geom_crossbar(width=.2) + geom_text(data=labels, mapping=aes(x=x, y=y, ymin=NULL, ymax=NULL, label=txt), nudge_x=.2) + geom_hline(yintercept=1, color='blue') + scale_x_discrete("") + scale_y_continuous("B/A Ratio", labels=scales::percent, limits=c(.92, 1.08)) + coord_flip() + theme_minimal() This display is handy to standardize, as you can show multiple different conversion rates on the same graph, giving clear context to the results of the experiment. Before certain statisticians in the audience write angry comments, I’m well aware that interpreting frequentist intervals correctly requires some hair-splitting language, and that Bayesian credible intervals are more directly tied to peoples’ intuitions. As it turns out, though, in practice at the scale that most web A/B tests run, there’s no practical difference. You can interpret frequentist intervals such as the above as if they were Bayesian, and describe them the “wrong way”, as if they were saying something about the beliefs you should have about the true values. Here’s an illustration, generating the Bayesian credible interval on the posterior distribution: #plotBeta(15,85) # we think CR is around 15% AB1 <- bayesAB::bayesTest( c(rep.int(1, 15400), rep.int(0, 100000-15400)), c(rep.int(1, 15000), rep.int(0, 100000-15000)), priors = c('alpha' = 15, 'beta' = 85), n_samples = 1e5, distribution = 'bernoulli') round(summary(AB1, credInt=rep(0.95, length(AB1$posteriors)))$interval$Probability * 100,
3)
##  2.5% 97.5%
## 0.562 4.820

Because the number of observations is high, and our prior is relatively broad, this is essentially the same interval as we computed above. So we’re justified in the hand-waving that makes communications with business people much, much clearer. We can defensibly say, if pressed, that “very likely” is equivalent to “a range covering 95% of the credible values of the true ratio.” Plus, the closed-form frequentist approach is much, much faster than the numerical simulation required to compute the Bayesian intervals.

To sum up:

1. For A/B tests in industry, you should speak business language, and talk about the relative improvement from the changes you’re testing.
2. But, you need to be honest about your uncertainty. Lead with the uncertainty interval, and mention the point estimate only secondarily.
3. Use the closed-form computation above to compute the uncertainty interval. Even though Bayesian computation is better in principle, it won’t help you help your organization make better decisions, it requires more work on your end, and it’s likely to confuse people.

If you end up using this approach to communicating A/B test results, I’d love to hear about your experiences! For me, I’ve found that consistently communicating this way led to easy conversations and fast decision-making.


text:
Question

# Discuss the main categories of data models. What are the basic differences among the relational model, the object model, and the XML model?

Solutions

Verified
Step 1
1 of 2

The main categories of data models are $\textbf{high-level}$ or $\textbf{conceptual data models}$, $\textbf{low-level}$ or $\textbf{physical data models}$ and $\textbf{representational}$ or $\textbf{implementation data models}$. Another class of data models are $\textbf{self-describing data models}$.

$\bullet$ Conceptual data models provide concepts understandable to many users, such as entities, attributes and relationships. Most popular high-level conceptual data model is $\textit{entity-relationship model}$.

$\bullet$ Physical data models describe details of how data is stored on the computer storage media such as magnetic disks. These models are meant for computer specialists which can better understand these concepts than end user.

$\bullet$ Representational data models may be easy to understand by end users, but they are still not too far away from the way data is organized in computer storage and that's why we can say they are between two extremes - conceptual and physical data model.

$\bullet$ Self-describing data models combines the description of the data with the data values. These models include $\textit{XML}$ and many of the $\textit{key-value stores}$ and $\textit{NOSQL systems}$.

$\textbf{Relational model}$ is representational data model used in traditional commercial DBMS. Data is represented by record structures ($\textit{record-based data model}$). $\textbf{Object-data model}$ is a new family of higher-level implementation data models closer to conceptual data models. $\textbf{XML model}$ belongs to self-describing data models. Therefore, the main difference of these three models is that each of them belongs to different category of data models.

## Recommended textbook solutions

#### Computer Organization and Design MIPS Edition: The Hardware/Software Interface

5th EditionISBN: 9780124077263 (5 more)David A. Patterson, John L. Hennessy
220 solutions

#### Fundamentals of Database Systems

7th EditionISBN: 9780133970777 (1 more)Ramez Elmasri, Shamkant B. Navathe
687 solutions

#### Introduction to Algorithms

3rd EditionISBN: 9780262033848 (2 more)Charles E. Leiserson, Clifford Stein, Ronald L. Rivest, Thomas H. Cormen
726 solutions

#### Introduction to the Theory of Computation

3rd EditionISBN: 9781133187790 (1 more)Michael Sipser
389 solutions


text:
# Game Loops and Time

### Common Game Loop Architectures

#### Windows Message Pumps

The Operating System that your game is running on may send messages to your program through a "message pump". These messages should be handled by your program as soon as possible. Usually you see this occur for Windows-based games. All messages from the OS are handled before the next frame is handled.

#### Callback-based

A game engine framework provides an interface for hooking in callbacks that the framework promises to call at specified points during the game loop.

One way to do this is with a thick Callback struct with a callback for the frameStart and a callback for the frameEnd for things that should occur before and after the frame is rendered to the screen.

#### Event-based

A game engine framework provides an interface for defining EventEmitters and EventListeners. The listeners are registered with the emitters, who when they emit, they call each of their registered listeners' callbacks.

### Abstract Timeline

Kind of like with coordinate spaces where you can define different kinds that are relative to one another, a timeline is a continuous, 1D axis with an origin at t=0 and can be at any arbitrary location relative to other abstract timelines.

• Real Time
• Times measured using the CPU's hi-resolution timer.
• Game Time
• Usually coincides with Real Time but does not need to. Game systems could use game time to update itself, which allows us to do things like stop Game Time, slow Game Time, or speed up Game Time. You'd want to stop time to pause the game, for example.
• Also useful for debugging. We could stop the game clock but still keep camera movements working to inspect things. You could allow time to be controlled by the user in debug mode, stepping time forward in increments on purpose.
• Local Time
• Animations may have its own concept of a local time, where the beginning of the animation is at t=0.
• If you envision timelines as capable of being mapped from one to the other, local times could, for example be mapped and stretched against a "global" timeline, e.g., Game Time.

### Time Measurements

• Frame rate
• How rapidly the sequence of still 3D frames is presented to the viewer, measured in Hertz (Hz).
• Frame time/Time delta/Delta time/Frame period
• The amount of time that elapses between frames.
• This is also the inverse of the frame frequency, T = 1 / f. Usually expressed in milliseconds.
• Notes
• A hi-resolution timer is important because some programming language time() functions have the granularity at seconds, but you will need it to be at least more granular than milliseconds.
• Usually a hi-res timer gives values in 64-bits, meaning it will overflow once every 100+ years. A 32-bit timer value will overflow every few seconds.
• Multi-core CPUs might have separate hi-res timers per core. And they might drift relative to one another.

### Approaches for taking elapsed time into account

• Old-school
• Don't worry about it. Speed is now tied to framerate.
• Use elapsed time
• Find the delta time by taking a measurement of the global timeframe at the beginning of the frame and a second measurement at the end of the frame. Subtract them.
• Doing it like this means that the duration of the current frame won't be seen until the following frame.
• Use a running average of frame time measurements.
• This reduces the effect that frame spikes may have on your frame time.
• Guarantee the framerate
• Attempt to guarantee that the delta time will be exactly 16.6ms (for 60 FPS).
• If we finish earlier than our governed time of 16.6ms, we wait for the remaining duration.
• If we finish later than our governed time, we wait for one more frame to finish before continuing.
• This is likely the best option because some systems (such as physics simulations) work better with consistent frames.
• Consistent frame times enable record and playback features, which is good for both users and debugging.
• You might have your frame rate governed anyway if VSYNC is enabled.


text:
# Question - Uniform Circular Motion

Account
Register

Share

Books Shortlist

#### Question

In U. C. M (Uniform Circular Motion), prove the relation vec v = vec w xx vec r, where symbols have their usual meanings.

#### Solution

You need to to view the solution
Is there an error in this question or solution?

S


text:
# Math Help - Find Larger Number

1. ## Find Larger Number

The difference between 2 positive numbers is 9. If 4 times the larger number is 10 times the smaller, what is the larger number?

Let L = larger number

Let S = smaller number

My equations:

L - S = 9
4L = 10S

After doing the math, I came up with the larger number being 90.

According to the math book, my answer is wrong.

What did I do wrong?

Are the equations wrong?

2. ## try again

FYI, I'm not your personal tutor, lol.

Ok, so if you isolated S and substituted, then you should've gotten $4L = 10 \times (L - 9)$

see what happens with it from there.

3. Originally Posted by magentarita
The difference between 2 positive numbers is 9. If 4 times the larger number is 10 times the smaller, what is the larger number?

Let L = larger number

Let S = smaller number

My equations:

L - S = 9
4L = 10S

After doing the math, I came up with the larger number being 90.

According to the math book, my answer is wrong.

What did I do wrong?
Since you didn't show your steps in solving, there's no way to know where you might have "done wrong". Sorry!

Thank you for showing your set-up. Your equations look fine to me. To solve, let's try substitution:

. . . . .L - S = 9

. . . . .L = S + 9

. . . . .4(S + 9) = 10S

. . . . .4S + 36 = 10S

. . . . .36 = 6S

. . . . .6 = S

Then what must L equal?

Note that you can check your answer to any "solving" problem by plugging it back into the original exercise. If the larger number were, as you propose, equal to 90, then the smaller number will be 90 - S = 6, or S = 84. But 4(90) = 360, and 10(84) = 840.

4. ## Then L =

Originally Posted by stapel
Since you didn't show your steps in solving, there's no way to know where you might have "done wrong". Sorry!

Thank you for showing your set-up. Your equations look fine to me. To solve, let's try substitution:

. . . . .L - S = 9

. . . . .L = S + 9

. . . . .4(S + 9) = 10S

. . . . .4S + 36 = 10S

. . . . .36 = 6S

. . . . .6 = S

Then what must L equal?

Note that you can check your answer to any "solving" problem by plugging it back into the original exercise. If the larger number were, as you propose, equal to 90, then the smaller number will be 90 - S = 6, or S = 84. But 4(90) = 360, and 10(84) = 840.

.L - 6 = 9...Then L = 9 + 6 or 15


text:
1 answer

# Divergence Theorem: Problem 4 Previous Problem Problem List Next Problenm (1 point) Evaluate JM F dS where F (3ay2,3a^y, z3)

###### Question:

Divergence Theorem: Problem 4 Previous Problem Problem List Next Problenm (1 point) Evaluate JM F dS where F (3ay2,3a^y, z3) and M is the surface of the sphere of radius 2 centered at the origin.

## Answers

#### Similar Solved Questions

1 answer
##### Exercise 1.16 An insulated district heating pipe with a total diameter d = 0.4 m is laid in the ground at a depth of h = 1.2 m. For a long cold period with an average ground surface temperature o...
Exercise 1.16 An insulated district heating pipe with a total diameter d = 0.4 m is laid in the ground at a depth of h = 1.2 m. For a long cold period with an average ground surface temperature of 0°C and a temperature at the outer edge of the pipe insulation of 20°C, the heat loss per 1km o...
1 answer
##### C is any number, so cVaR does not mean conditional value at risk Q1. Assume that...
c is any number, so cVaR does not mean conditional value at risk Q1. Assume that X is a continuous and nonnegative random variable with the cumulative distribution function Fx and density fx, and let c>O. Verify that for the Value-at-Risk we have VaR,x (p) = cVaRx (p)...
1 answer
##### 10. Use the following information to determine the enthalpy for the reaction shown below CH_g) +...
10. Use the following information to determine the enthalpy for the reaction shown below CH_g) + H-0(g) - CO(g) + 3H48) AH-? 2C(s) + 2H2O(g) - CHig)+CO ) Nf - 153 C) + HẠO - COR) + Hg) M - 1313 CO(g) + HO(g) + COMg + Hg) N - -41 2 kJ 11. In the energy diagram shown here, label parts A through ...
1 answer
##### 4. Modified internal rate of return (MIRR) The IRR evaluation method assumes that cash flows from...
4. Modified internal rate of return (MIRR) The IRR evaluation method assumes that cash flows from the project are reinvested at the same rate equal to the IRR. However, in reality the reinvested cash flows may not necessarily generate a return equal to the IRR. Thus, the modified IRR approach makes ...
1 answer
1 answer
##### 1.) Formulate the indicated conclusion in nontechnical terms. Be sure to address the original claim. A...
1.) Formulate the indicated conclusion in nontechnical terms. Be sure to address the original claim. A researcher claims that 62% of voters favor gun control. Assuming that a hypothesis test to reject this claim has been conducted and that the conclusion is failure to reject the null hypothesis, st...
1 answer
##### 12. When would you prefer to use bar chart schedules and when would you prefer CPM...
12. When would you prefer to use bar chart schedules and when would you prefer CPM schedule? excluding any 9. When scheduling a formal project how can you ensure that you are not activity?...
1 answer
##### Evaluate the integral by making an appropriate change of variables. Slo 3 cos (5(X+3) dA where...
Evaluate the integral by making an appropriate change of variables. Slo 3 cos (5(X+3) dA where R is the trapezoidal region with vertices (8,0), (9, 0), (0, 9), and (0,8) 17 sin(5) 2 x...
1 answer
##### What are Fisher projections in organic chemistry?
What are Fisher projections in organic chemistry?...
1 answer
##### 7. Show that Σο.nafm + n)-p converges if and only if p > 2, (Hint: Use triangular partial sums.) 7. Show that Σ...
7. Show that Σο.nafm + n)-p converges if and only if p > 2, (Hint: Use triangular partial sums.) 7. Show that Σο.nafm + n)-p converges if and only if p > 2, (Hint: Use triangular partial sums.)...
1 answer
1 answer
##### Homework: Section 4.6 HW Assignment. Score: 0 of 1 pt 5 of 9 (5 complete) »...
Homework: Section 4.6 HW Assignment. Score: 0 of 1 pt 5 of 9 (5 complete) » » 4.6.19 HW Score: 5 EQU Find the dimensions of a right circular cylinder of maximum volume that can be inscribed in a sphere of radius 20 cm. What is the maximum volume The radius is cm, and the height is cm. (T...
1 answer
##### NI+D+L-G Saffordville Co. Cash Flow Statement (Inderect Method) Current Assets Increase Current Assets Decrease Decrease Increase...
NI+D+L-G Saffordville Co. Cash Flow Statement (Inderect Method) Current Assets Increase Current Assets Decrease Decrease Increase Need Help Completing the Cash Flow of Statement Assets Cash A/R Inventory Investments Equipment Accumulated Derp.-Equipment Total Liabilities and Stockholders' Equity...
1 answer
##### Titration lab report additional images of lab report QUESTIONS 1. A student masse 0878 of an...
titration lab report additional images of lab report QUESTIONS 1. A student masse 0878 of an unknown acid follows the titration procedure required to reach the endpoint on a 10.0 ml Calculate the molar mass of the acid. masses out 0.878 of die in 100 ml volume and titration procedure of P...
1 answer
##### The accountant of Johnson Engineering Ltd. prepared the following adjusted trial balance at December 31, 2019:...
The accountant of Johnson Engineering Ltd. prepared the following adjusted trial balance at December 31, 2019: Credit Debit 4.160 13.400 1.200 30.000 Cash Accounts Receivable Unexpired Insurance Office Equipment Accumulated Depreciation: Office Equipment Accounts Payable Unearned Consulting Fees Cap...
1 answer
##### What personality theory can best be used to explain Robins behavior and why? obin Henderson was...
What personality theory can best be used to explain Robins behavior and why? obin Henderson was a 30-year-old married Caucasian woman with no children who lived in a middle-class urban area with her husband. Robin was referred to a clinical psychologist by her psychiatrist. The psychiatrist had been...
1 answer
##### Help 15. Where do the ketogenic amino acids enter the catabolic pathway (at what entry point)?...
help 15. Where do the ketogenic amino acids enter the catabolic pathway (at what entry point)? answer here) 16. What TCA intermediate is needed to initiate the TCA cycle? n answer here) 17. What is the fate of acetyl-CoA as it enters the TCA cycle? answer here) 18. What is the fate of Coenzyme A aft...
1 answer
##### Which of the following are improper integrals?
Which of the following are improper integrals? Check all that apply. a) int_1^∞ sin(x)/x dx b) int_4^5 1/x dx c) int_3^4 1/sin(x) dx d) int_-3^3 x^(-1/3) dx...


text:
# S-matrix conjecture: status?

Is the $S$-matrix conjecture still open? I mean the one listed as Problem 7 in this survey.

-
Please add the open-problem tag to this question. To my knowledge only a couple of the conjectures mentioned in the linked survey have been resolved. (For example, Denis Serre asked almost 2 yrs ago the following question: mathoverflow.net/questions/42902/… which is still an open problem (a semi-famous one at that). –  Suvrit Aug 28 '12 at 14:30
No offence intended, but this question comes off really lazyily formulated. Couldn't you state or at least parphrase the conjecture here, and only in addition link to the document? Some people (me sometimes, but not at the moment) read the site with mobile devices, it then is not very convenient (sometimes even impossible) to open some pdf and browse around it. Also, to say it is Problem 7 is a bit missleading and costed me some aditional time in finiding it. It seems to be Conjecture 11 in Section 7 (okay, reading the intro it becomes clear, but going there directly is harder). –  quid Aug 28 '12 at 14:40
Well, sorry about the trouble I gave you. I'll bear that in mind next time, promise! –  Felix Goldberg Aug 28 '12 at 14:47
Thanks for the reply; and just in case you wonder, the vote to close is not from me (it was already around before I commented). –  quid Aug 28 '12 at 14:58
Didn't suspect it was from you actually, but awfully kind of you to disassociate from it, nevertheless. :) –  Felix Goldberg Aug 28 '12 at 16:24

To my knowledge, this problem is still open. There has been partial progress on it in the past few years, but it still seems quite far from resolved.

The latest paper that I am aware of is: here, though unfortunately behind a pay wall.

-
That latest paper is really silly. Using Cauchy-Schwarz inequality, one may produce a mild condition. –  Betrand Sep 6 '12 at 1:05
@Betrand: interesting. I just saw the title of the paper, but did not read it! –  Suvrit Sep 6 '12 at 8:08
@Bertrand: I don't quite understand what you mean. Could you please explain? –  Felix Goldberg Sep 10 '12 at 11:10

Here is a more recent paper: Roman Drnovšek, On the S-matrix conjecture. It (re-) proves for the case of $n$ odd the conjecture restated here for convenience:
If $A$ is a nonsingular $n\times n$ matrix with all entries in the interval $[0,1]$, then
$$||A^{-1}||_F\ge\frac{2n}{n+1}$$ with equality iff $A$ is an $S$-matrix.

-


text:
summarylogtreecommitdiffstats log msg author committer range
path: root/.SRCINFO
blob: c5e4d14f27334b875c728457a20b5a05974be0db (plain)
 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34  # Generated by mksrcinfo v8 # Thu Jun 8 14:30:40 UTC 2017 pkgbase = vcsn-git pkgdesc = Finite state machine manipulation platform, consisting of a library and tools implemented on top of it. pkgver = v2.5.r113.g620a9084 pkgrel = 1 url = http://vcsn.lrde.epita.fr/ arch = i686 arch = x86_64 license = GPL3 makedepends = git makedepends = texlive-core makedepends = doxygen makedepends = python2-docutils depends = boost depends = gcc depends = ccache depends = libltdl depends = jupyter depends = mathjax depends = graphviz depends = yaml-cpp provides = vaucanson-git provides = vaucanson provides = vcsn conflicts = vaucanson-git conflicts = vaucanson conflicts = vcsn options = !buildflags source = git+https://gitlab.lrde.epita.fr/vcsn/vcsn.git md5sums = SKIP pkgname = vcsn-git


text:
Critical sets in 3-space
Publications Mathématiques de l'IHÉS, Volume 77 (1993), pp. 5-61.
@article{PMIHES_1993__77__5_0,
author = {Grayson, Matthew and Pugh, Charles},
title = {Critical sets in 3-space},
journal = {Publications Math\'ematiques de l'IH\'ES},
pages = {5--61},
publisher = {Institut des Hautes \'Etudes Scientifiques},
volume = {77},
year = {1993},
zbl = {0796.58012},
mrnumber = {94k:57049},
language = {en},
url = {http://archive.numdam.org/item/PMIHES_1993__77__5_0/}
}
TY  - JOUR
AU  - Grayson, Matthew
AU  - Pugh, Charles
TI  - Critical sets in 3-space
JO  - Publications Mathématiques de l'IHÉS
PY  - 1993
DA  - 1993///
SP  - 5
EP  - 61
VL  - 77
PB  - Institut des Hautes Études Scientifiques
UR  - http://archive.numdam.org/item/PMIHES_1993__77__5_0/
UR  - https://zbmath.org/?q=an%3A0796.58012
UR  - https://www.ams.org/mathscinet-getitem?mr=94k:57049
LA  - en
ID  - PMIHES_1993__77__5_0
ER  -
%0 Journal Article
%A Grayson, Matthew
%A Pugh, Charles
%T Critical sets in 3-space
%J Publications Mathématiques de l'IHÉS
%D 1993
%P 5-61
%V 77
%I Institut des Hautes Études Scientifiques
%G en
%F PMIHES_1993__77__5_0
Grayson, Matthew; Pugh, Charles. Critical sets in 3-space. Publications Mathématiques de l'IHÉS, Volume 77 (1993), pp. 5-61. http://archive.numdam.org/item/PMIHES_1993__77__5_0/

M. Brown (1962), The monotone union of open n-cells is an open n-cell, Proc. AMS, 12, 812-814. | MR | Zbl

D. E. Christie (1944), Net homotopy for compacta, Trans. AMS, 56, 275-308. | MR | Zbl

R. Churchill (1972), Isolated invariant sets in compact metric spaces, JDE, 12, 330-352. | MR | Zbl

C. Conley (1978), Isolated invariant sets and the Morse index, CBMS regional conference series in math., number 38, AMS, Providence R.I. | MR | Zbl

M. E. Feign (1988), Separation properties of codimension-1 immersions, Topology, 27, 319-321. | MR | Zbl

R. H. Fox and E. Artin (1948), Some wild cells and spheres in three dimensional space, Annals of Math., 49, 979-990. | MR | Zbl

F. B. Fuller (1952), A note on trajectories in the solid torus, Annals of Math., 56, 438-439. | MR | Zbl

J. Harrison and C. Pugh (1990), A critical fractal circle, preprint, U. of California, Berkeley.

J. Hempel (1976), 3-manifolds, Annals of Math. Studies #86, Princeton U. Press, Princeton, N.J. | MR | Zbl

A. P. Morse (1939), The behaviour of a function on its critical set, Annals of Math., 40, 62-70. | JFM | Zbl

M. Morse (1934), The calculus of variations in the large, AMS Colloquium Publ. XVIII, N.Y. | JFM | Zbl

J. Munkres (1960), Obstructions to the smoothing of piecewise differentiable homeomorphisms, Annals of Math., 72, 521-554. | MR | Zbl

V. V. Nemytskii and V. V. Stepanov (1960), Qualitative theory of differential equations, Princeton U. Press, Princeton N. J. | MR | Zbl

Norton and Pugh (1991), Critical sets in the plane, Michigan J. Math, 38, 441-459. | MR | Zbl

C. Robinson (1976), personnal communication with C. Conley.

C. Robinson (1990), personnal communication with C. Pugh.

D. Rolfsen (1976), Knots and Links, Publish or Perish Press, Houston Texas. | MR | Zbl

M. Saito (1990), Links as critical sets, preprint, U. of Texas, Austin.

A. Sard (1942), The measure of the critical values of differentiable maps, Bull. AMS, 48, 883-890. | MR | Zbl

A. Shapiro and J. H. C. Whitehead (1958), A proof and extension of Dehn's Lemma, Bull. AMS, 64, 174-178. | MR | Zbl

M. Shub (1987), Global Stability of dynamical systems, Springer-Verlag, N.Y. | MR | Zbl

W. Thurston (1990), personnal communication with M. Grayson.

H. Whitney (1935), A function not constant on a connected set of critical points, Duke Math. J., 1, 514-517. | JFM | Zbl

R. L. Wilder (1930), A converse to the Jordan Brouwer Separation Theorem, Trans. AMS, 32, 632-657. | JFM | MR

F. W. Wilson, Jr. (1969), Smoothing derivatives of functions and applications, Trans. AMS, 139, 413-428. | MR | Zbl

F. W. Wilson, Jr. and J. Yorke (1973), Lyapunov functions and isolating blocks, JDE, 13, 106-123. | MR | Zbl