When discounted MAB is useful?

Question: Many of multi-armed bandit(MAB) algorithms are used when the total reward is the sum of all rewards. However, in RL, the discounted reward is mainly used. Why is the discounted reward not prevailing in MAB problem, and in what cases is this type of modeling valid and might be better?
Answer: One of the reasons a discount factor is used, is to make sure the reward maximization is a well-defined problem and to make the sum of all rewards convergent.
In the MAB problem, the number of trials is typically finite owing to some sort of budget in the number of trials. Hence, this is less of problem. However, by all means discounts are still valid and helpful in cases where the analysis in asymptotic in the number of trials.
Comment: Thanks for your response. Except for convergence analysis, in what cases discounted MAB can be meaningful? Is it possible to have an optimal policy in the discounted case different from the undiscounted setting?

When discounted MAB is useful?


Calculating the area covered by isochrones in QGIS

Question: I created isochrones using Iso-Area algorithm as polygons in QGIS. Is there any tool in QGIS that helps with calculating areas covered by created polygons?
Comment: E.g. `$area` with field calculator?
Comment: Why not? `$area` calculates the area based on the geometry, not based on attributes.
Comment: I have polygons of four time intervals. The attribute table of created polygons has only an id field and a cost level which shows the time intervals. I think it is not possible to calculate are using $area or area functions of field calculator.
Comment: @Babel Thanks for your help. There are 16 rows in the attribute table with the IDs from 0 to 4. I guess each id is related to one polygon. So to calculate the area of each polygon I need to sum up the areas that are related to the same id, right? one more question, are areas in square centimeters?
Answer: Use field calculator: $area or area ($geometry) calculates the area for each feature. If you want to get the sum for each group with the same id, use the aggregate function sum like: sum ($area, group_by:="id").
The unit of measurements depends on the layer's CRS, have a look in the layer properties. For the difference between $area and area($geometry) see the help here: https://qgis.org/api/2.14/qgsexpression__texts_8cpp_source.html
$area:

Returns the area of the current feature. The area calculated by this
function respects both the current project's ellipsoid setting
and area unit settings. For example, if an ellipsoid has been set for
the project then the calculated area will be ellipsoidal, and if no
ellipsoid is set then the calculated area will be planimetric.

area ($geometry):

Calculations are always planimetric in the Spatial Reference System
(SRS) of this geometry, and the units of the returned area will match
the units for the SRS.


Learning to drive in Israel

Question: How does one go about learning for a "driving theory" test in Israel (MIVCHAN THEORIA)?
Are there any government-approved books in English?
Answer: That's a tough one, seems like there is a book but I couldn't find online anyone selling it.
I found this site that teaches in English.
This is the official question bank but it doesn't load for me, try an older snapshot at the web archive site
Finally you can find more information at kolzchut
Good luck !
Answer: Apparently, the Israeli Ministry of Transport publishes a complete (whatever that means) pool of driving-theory questions and answers!
Other resources:

Remember there are different kinds of licenses. The typical common is B - private vehicles up to a certain tonnage - but the "theory exam" and/or procedure may be different for different license categories.

You should first consider the possibility of getting a license on the basis of your foreign driver's license - without going through a "driving theory" exam. See this website for information about that. On the other hand, it might be worthwhile to actually take lessons:

... So here's what I realized.  I'm a great driver in the US.  I wasn't a great driver in Israel.  Neither are most of the people who move here.  I had to get my ego out of the way and realize there were things I objectively needed to learn if I wanted to be as good a driver in Israel as I was in the States.

(quote is from here)

You may also benefit from these on-line practice resources, all in English:

practice-question generator
simulator for a complete test
Question & Answer bank

Remember that traffic legislation is occasionally tweaked! ... in particular, new traffic signs are promulgated and older ones become deprecated. Material from, say, 10 years ago may be slightly outdated.

Learning to drive in Israel


Can anyone tell me what insect this is?

Question: This insect has a chaotic flight pattern. It is very small and I found it hidden in the soil of a flower pot. Is this a plant pest?
Answer: Parastic wasps. If you've ever heard of ladybugs and the benefit they provide to the overall garden's heath then you shouldn't be alarmed for these guys here also make the list. Infact they're actually very much valued by farmers who buy these in numbers for pest control. Though they dont eat their hosts, intead they'd lay their eggs inside them which inevitably kills the host as the larva hatches and eats the host from within. If you have an aphid problem, let these guys do the extermination for you.
Answer: Kind of hard to tell...might be a gnat. They live off of fungus in the soil when you water the houseplants too much. A solution of neem oil will kill them....if that's what you're getting at.

Can anyone tell me what insect this is?


Cohomological bounds for scalar curvature of an extremal Kähler metric

Question: There is an interesting trick used in Chen-LeBrun-Weber's paper on the extremal Kähler metrics of $\mathbb{CP}^2\#2\overline{\mathbb{CP}^2}$, and I would like to know whether it can be (has been?) exploited further.
The trick applies to certain Kähler classes $\mathfrak{k}$ of a complex manifold $M$, and allows one to give upper and lower bounds for the scalar curvature of an extremal Kähler metric in $\mathfrak{k}$, if such a metric exists.  This is important later in the paper -- in dimension 2 it allows one to control the Sobolev constant of such a metric, and thus to control the degenerations of sequences of such metrics.
The trick appears at the end of Section 3.  I will describe it in a more general setting than Chen-LeBrun-Weber's (hopefully not making any mistakes in this generalization). Let $M$ be a complex manifold, fix a maximal connected compact subgroup $K$ of the group of automorphisms of $M$, and let  $\mathfrak{k}$ be a Kähler class of $M$.  According to Futaki-Mabuchi there is a canonically determined holomorphic vector field $\Xi_\mathfrak{k}$ which is the extremal Kähler vector field of a $K$-invariant extremal Kähler metric $\omega\in\mathfrak{k}$, if any exists. Suppose that $\mathfrak{k}$ satisifes
Important Property.  The holomorphic vector field $\Xi_\mathfrak{k}$ generates a closed 1-parameter subgroup ($\cong S^1$) of automorphisms of $M$.
(Remark:  in Chen-LeBrun-Weber's setting, all bilaterally symmetric Kähler classes of $\mathbb{CP}^2\#2\overline{\mathbb{CP}^2}$ have this property.)
Then the range (max minus min) of the scalar curvature of $\omega$ is equal to $\lambda \ \mathfrak{k}\cdot [F]/4\pi$, where $F$ is a rational curve in $M$ which is the closure of a ``generic'' orbit of the group ($\cong\mathbb{C}^*$) of automorphisms generated by $\Xi_\mathfrak{k}$ and its complexification, and where the real number $\lambda$ is such that $\lambda^{-1}\Xi_\mathfrak{k}$ is the standard generator of the $S^1$.
Since the average of the scalar curvature of $\omega$ is cohomologically determined by $\mathfrak{k}$, this then gives upper and lower bounds on the scalar curvature of $\omega$.
Here are my questions (assuming that my slight generalization of Chen-LeBrun-Weber's statement is correct).

First, is there any general way to determine which Kähler classes
$\mathfrak{k}$ satisfy the Important Property?
Second, if not, what are the known examples of Kähler classes with the Important Property?  (The examples I can think of are (1) Chen-LeBrun-Weber's; (2) all Kähler classes on a manifold for which $K=S^1$.)
And thirdly, in any known examples (other than Chen-LeBrun-Weber's) with the Important Property, has it been computed/can someone compute the explicit bounds on scalar curvature that are obtained?
Answer: I seem to recall from the work of Futaki-Mabuchi that $\Xi_{\mathfrak{k}}$ generates an $S^1$ action if the Kaehler class is rational.
Comment: Can you give a reference? Does this answer the first question, then?


How to convert postgresql dump file into mysql dump file

Question: I having Postgresql dump file like data.sql. I need to convert postgresql file into mysql dump file It is possible to convert without install postgresql database . Thanks in advance
Comment: PostgreSQL and mysql have incompatible features that could not be translatable. Perhaps your best bet would be to edit the file and do any adjustments manually for any incompatible features (e.g. functions, different datatypes, etc).
Comment: can u tell me how to edit?
Comment: The sql file is a text file, you can edit it with any text editor.
Answer: You can do this using the MySQL Workbench Migration Wizard, which was introduced in MySQL Workbench 5.2.41.
There's a blog post on the MySQL Workbench site here that details how to perform a migration.
Note that it will not be able to migrate more complicated database features.
Comment: [According to a new user Jason](https://dba.stackexchange.com/a/218003/67785), who can't post comments yet: "The above post is not answering the question. The OP wanted to avoid installing Postgresql and wanted to migrate from a dump. MySQL Workbench can only migrate from a running instance."


Neutral hydrogen atoms in inhomogenous magnetic field

Question: In the 1996 gre exam this scenario comes up in a question: a beam of neutral hydrogen atoms in their ground state  pass through a region of of strong inhomogenous magnetic field. In the official answer the answer is that it gets deflected into two beams. I am skeptical of this because the question explicitly states that atoms are in their ground state which would imply that they are in a singlet state and hence behave as spin 0 particles. Why would this not be the case?
Answer: The hydrogen atom has a single electron with spin $S=1/2$. Spin multiplicity can be understood as $2S+1$, or in the case of electrons, the number of unpaired electron plus one. The ground state of the hydrogen atom is not singlet, but doublet, hence the splitting into two parts.
Please note that a system being in ground state does not imply a singlet spin multiplicity.


How to install 64 bit openGL in linux

Question: I bought a new system with an NVIDIA GeForce 9000 graphics card. I downloaded the 64-bit NVIDIA-Linux-x86_64-190.53-pkg2 from the NVIDIA web site which I have installed in my linux kernel 2.6.26. While it was installing it created 32-bit OpenGL but I want to create 64-bit OpenGL. How do I create it?
Comment: What distribution do you use? And if you say Ubuntu, why didn't you just use the driver provided by the system?
Comment: why would you need 64 bit opengl when most of the graphics cards today dont even support 64 bit int or float
Answer: No need. The NVidia driver installed the default architecture OpenGL driver (64bit) and you choose the optional step of also installing 32bit OpenGL. You've got both installed now.
If you're having a specific problem (application won't run, opengl doesn't work, crashes), the n post the errors/logs you're getting.
Answer: You may want to look for a pre-packaged version for your distribution, as this is certainly the easiest way to go about doing things. If for some reason you can't get a prepackaged driver, the following information may assist you.
Now, as for installing 64-bit support, the latest Linux driver package should have already installed it. What may be causing this issue is simply that your distributions library search paths don't include where the installer put the library.
It's been a little while since I needed to know where nVidia's installer likes to put things, so I can't give you an authoritative answer on where to find it, though I'd expect it to be called libGL.so somewhere under /usr/lib64.
A few commands that may help you here:

locate libGL.so - Searches the filesystem using a pre-built database for the library. This should find both the 32-bit and 64-bit versions.
updatedb - If you've only recently installed the drivers, run this first. It will rebuild the database used by locate. Alternatively, you could use find \ -name libGL.so*.
file libGL.so.x.y.z - Will tell you if it's a 32-bit or 64-bit library. Note that this won't work on symlinks.

If you find yourself needing to amend the library search path to include this, expect the configuration steps to be distro-specific. The main environment variable you'll be looking for will be LD_LIBRARY_PATH. However, different distros have different approaches to managing environment variables. I'd certainly recommend taking the time to understand what you're changing if you need to amend this.

How to install 64 bit openGL in linux


Understanding/application of diminishing marginal utility in service/added quality context (as opposed to additional units of goods)

Question: Kindly forgive the length of this post, as I am not very familiar with much of the terminology and I'm trying to explain ideas which are very basic in my mind but which in reality I understand can be much more complex.
I am seeking to better understand the concept of diminishing marginal utility and how it could apply in specific service-industry concepts. I found that most textbooks simply state that the concept may apply to goods and services, however they only list examples pertaining to goods, in particular by adding in terms of quantity.
What about the next unit added in terms of quality, in a service context?
I will provide an example where I want to see if the concept (or rule) can be applied validly.
Let's take a hypothetical fine dining example, for instance. Service quality is expected to be/and generally should be much better than at regular fare restaurants. Food quality, just the same, in different ways (ingredients, preparation, presentation)... I am also assuming in this hypothetical example a few things:

although there are goods being sold here, this is largely a service context, as the assumption be is fine dining is mainly based on the service, the attentiveness of the staff for example being very important for many who enjoy fine dining experiences
when I said quality (of goods and services) is expected to be better, this is another assumption I'm making in this hypothetical example that there's no argument where it is or not, I understand it is a subjective equality to some extent, and that many fine dining restaurants will not stand up to the test of say... Some fine dining connoisseur with high expectations. This is disregarded in the example to keep it simple.

How can one describe marginal utility in terms of quality of a service within the context of a service industry?
Can we somehow apply the concept of diminishing returns in this manner (again within the context of a restaurant):
1-bad food + service: very low cost, negative benefit, gastrointestinal issues, frustration, indignation
2-okay food+service: higher cost, low benefit, full tummy, long wait times, nothing special, (within the context of service industry here again not someone who is only hungry and seeking food)
3-good food+service: again assuming higher cost, more benefit obtained, better food, shorter service from kitchen to table, now the hypothetical customer is deriving more benefits is the point
4-great food+service: come at a added premium, food tastes amazing, staff is very knowledgeable about what they serve, pleasant, and the customer leaves very satisfied
...
n-amazing food+service, fine dining and the such (many levels of fine dining and respective added premiums): staff is attentive to minute details and needs of customers, from the arrival,valet service, maitre d, sommelier... You don't find these in regular restaurants and there's definitely a much higher premium and certain levels of tips expected. Satisfaction? The customer leaves very satisfied. More than (4)? It's hard to say, this is very subjective.
But it's likely that going from 1 to 2, 3, 4, all the way to N, I suspect there's a diminishment in the benefit derived from the better quality of service and food.
I hope someone can read this and share some ideas to better make sense of this. Any reading which should also help me understand what I'm trying to say (and better express it) would be much appreciated.
Also, I noticed that certain assumptions are made when discussing the concept of diminishing marginal utility that I read, something along the lines of Rational Choice.
Thank you for reading this long post.
Answer: We can see services of different qualities simply as different "products". Going to Mcdonalds would be product x and going to fine dining restaurant "the french laundry" with their fixed menu would be product y.
Diminishing returns apply to a specific product. The first time I go to "the French laundry" its great. But then suppose I go there every night and even twice a day. By the end of the month, I will be tired of it. The 100th time I go there will simply be less special and fun as that first time. I will get tired of the same ambiance and decor and waitstaff and will want to try another restaurant.
Also note that if they change their fixed menu, it would again be a different product they're offering.


Laughlin wave function and CFT

Question: I have a question regarding Eq. (3.5) in Moore & Read's paper. They said
\begin{equation}
\Psi_{\text{Laughlin}}=\left\langle\prod_{i=1}^{N}e^{i\sqrt{q}\phi(z_i)}\exp\left[-i\int \mathrm d^2z^{\prime}\sqrt{q}\rho_0\phi(z^{\prime})\right]\right\rangle
\end{equation}
is equivalent to Laughlin wave function described below
\begin{equation}
\Psi_{\text{Laughlin}}(z_1,\cdots,z_N)=\prod_{i<j}(z_i-z_j)^q\exp\left[-\frac{1}{4}\sum|z_i|^2\right]
\end{equation}
$\phi(z)$ is a free massless scalar filed satisfying $\langle\phi(z)\phi(w)\rangle=-\log(z-w)$.
My question is how do I get the second equation from the first one. Especially, I don't know how do I obtain nonholomorphic part, that is, $\exp\left[-\frac{1}{4}\sum|z_i|^2\right]$ starting from the first equation. I don't understand at all the explanation below Eq. (3.7) in their paper.
Comment: Especially considering the paper you link is not freely available, please include all relevant context into the question. What does the notation means, what are you trying to compute, and *what specifically* about the given explanation is unclear to you?
Comment: The *non*-holomorphic part $\exp\{-|z|^2/4\}$is not included I think.
Comment: Related https://physics.stackexchange.com/q/805997/226902
Answer: Perhaps you could have a look at David Tong's lectures on QHE (http://www.damtp.cam.ac.uk/user/tong/qhe.html) you might find Section 6.2 helpful. The paper in question is available here (http://www.physics.rutgers.edu/~gmoore/MooreReadNonabelions.pdf)

Laughlin wave function and CFT


Are rules questions allowed?

Question: I think that we are going to get a lot of questions that ask about something in between a puzzle and a game, about the rules. I'm sure there are many rules questions that would be better fit for a games related StackExchange, but there will be some that apply specifically to puzzles. Do we want to answer these, migrate them, or just close them as "RTFM!"?
Comment: See also [tag:rules].
Answer: Questions about rule clarifications and judgements, and similar meta questions about the rules are unambiguously on-topic.
Questions asking for a complete set of rules are trickier. On the one hand, we don't want to just be a repository for the rules of all puzzles; on the other, not all puzzles are going to have clear Ms to RTF. I think we should err on the side of acceptance, and if it gets to be a problem we can revisit the issue then.

Are rules questions allowed?


Dynamic Data Access Layer with EF4.3

Question: I have been tasked with designing a data access layer that will connect to tables with interchangable schemas(used for permissions and separation). The database itself may different each call as well (because of business rules). I plan on using Entity Framework 4.3(all existing apps that will use this are already using Entity Framework) with POCO classes (to prevent multiple dev's from accidently using the model generator against something that's customized) and DbContext (so effectively Compact Framework without the code generating). I plan on utilizing DbModelBuilder and EntityConnectionStringBuilder to achieve these dynamic situations. Anyone done this or have a better solution?
Answer: There are extensions for visual studio that will auto generate POCO's using t4 templates. There are also T4 templates for auto generating the repositories and the associated interfaces. These options also have the ability to add options that make it easier for working with WCF. Here is the visual studio extension link.
http://visualstudiogallery.msdn.microsoft.com/ff781f46-d8c3-45e0-a545-40906921bb86
This extension automatically updates the poco classes if the .edmx resides in the same namespace. Options for changing the name space or project and separating the poco's into a project separate from the DAL is achievable but you must tell the poco's to look for changes.
I hope that answers your question. It is doesn't then I can take another stab at it with some additional context.

Dynamic Data Access Layer with EF4.3


Ellipsoidal Covariance Matrix

Question: What does it mean when you say  "Covariance matrix are highly ellipsoidal"? I am reading  Regularized Discriminant Analysis" by Jerome H. Friedman 1989 and it uses this term very often "Covariance matrices are all equal and Highly ellipsoidal "?
Comment: It's quite useless just to say you're reading "a paper". Perhaps you're more likely to get an answer if you tell us *which* paper it is.
Comment: Sorry for incomplete information. The paper is titled "Regularized Discriminant Analysis" by Jerome H. Friedman 1989, published in Journal of the American Statistical Association
Answer: The covariance matrix of a set of variables is always symmetric by definition, which means that it can be diagonalized by an orthogonal matrix.
That being said, we can visualize the matrix as an ellipsoid whose axes have sizes given by it eigenvalues, and that has been rotated by the corresponding orthogonal matrix.
In this context the term ellipsoidal is being used in opposition to spherical. Being highly ellipsoidal means that the eigenvalues have very different magnitudes.

Ellipsoidal Covariance Matrix


Is there a commonly used environment variable or configuration setting for enabling widespread application verbosity?

Question: Sometimes I write scripts where I want every called application to be verbose as can be for the sake of logging. This often includes typing --verbose quite a bit. Other than the -v and equivalent --verbose options often included with Unix/Linux utilities, is there an additional standard (or commonplace implementation) such as setting a variable VERBOSE=true in an environment, or setting some flag in a configuration file somewhere?
Comment: There isn't even a widespread or commonly used *option* for these. I feel I see `--debug` just as often as I see `-v` or `--verbose` (and no, the latter are often not equivalent).
Comment: @muru, not to mention that `-d`/`-v` are often used for things other than *debug* / *verbose* (such as destination, directory, verbose, re`v`erse...). Sometimes, you need `-d 3` / `-v  3` to set the debug/verbose level.
Comment: If there was, it would likely break some of the scripts that use those commands when invoked in that environment, as they would start seeing output  from them that they don't expect.
Answer: There are no standard options, environment variables, or other generally accepted mechanisms for enabling verbose output from utilities.  The POSIX standard defines no standard generic option for this.
You will need to familiarise yourself with the utilities that your scripts are using and use their individually documented ways of adjusting the detail and/or amount of generated output.


ESP8266 Without Web Page

Question: Can I send data to an ESP8266 without creating a web server?
I am accessing the GPIO pins of ESP8266 through a web server. Now I want to make an Android app for that. So I want to send data to the 8266 without making a web server—is this possible?
Comment: By using an Android App, would you be on the same network?
Answer: Yes, you can send data to an ESP8266 without using a web server, but you might want use one, or use something functionally related to one.
An ESP8266 is a fairly general purpose computing device with a WiFi radio and a network stack, hence, you can implement just about any reasonable protocol you care to describe in code.
However, it has become quite popular to implement protocols which look and act a lot like miniature web pages intended for human consumption.
ie, instead of your client connecting and doing something like
GET /index.html HTTP/1.1

it might say
GET /gpio/15/value HTTP/1.1

Where the URL refers not to a specific document, but to some piece of data on the device you wish to access.  You can do similar things for POST, PATCH, DELETE etc requests.
Unless you are building a page for human consumption typically the data you exchange wouldn't be HTML pages.  Often it might be something like JSON instead.  So for example
GET /gpio/15/value HTTP/1.1

might trigger a response like
{"gpio": 15, "direction": "in", "value": 0}

Similarly, you can make an endpoint where your client might set a GPIO by saying
POST /gpio/15 HTTP/1.1
{"direction": "out", "value": 1}

It's to some degree a semantic or implementation specific question if the program answering such queries is a "web server" - it could be a web server which runs various helper tasks to deal with the data and gpios (much as a server serving pages might dynamically generate some of their content from database queries), or it could be a dedicated program which both deals with the data and knows how to talk HTTP.
And of course using HTTP to exchange JSON payloads is only one of many ways of doing things - it just happens to be a currently popular one which re-uses many webserver-like concepts, and may to a degree even permit usage of a web browser for testing.

It's also worth keeping in mind that such a scheme tends to work best locally, when the phone and the ESP8266 are clients of the same home WiFi network.  If the phone isn't "at home" or it is, but is only on a mobile network, allowing it to reach the ESP8266 would mean allowing external requests into the home network, something preferably avoided.  In that case, it's quite popular to use a protocol where both the ESP8266 device and the phone independently reach out to an external relay server, which passes messages between them.  MQTT is an example of a scheme often used for a system with a relay-server based architecture.
Comment: On many linux systems you have to "export" a GPIO before you can use it with the /sys/class/gpio interface. I don't know off the top of my head if you can "unexport" one, but conceptually that could match a DELETE :-)
Comment: Also, I am curious about implementing `DELETE` for a port ;-)
Answer: Yes, you can write a custom TCP server. Or, for lighter weight, use a UDP server.
Either way, get to define your own application protocol on top of TCP/UDP, and have your application send it. And you save on the overhead of HTTP. (HTTP can have around 1000 bytes of overhead per message!)

ESP8266 Without Web Page


Why should I use Quicksilver instead of Spotlight?

Question: I recently purchased a Macbook (13") and have been perusing various blogs and zen/hacker sites which provide insight and instructions on becoming a proficient user. I feel relatively comfortable on it, though not quite as comfortable as on my native OS (Linux).
One thing I keep coming across is Quicksilver.  Most productivity tips include utilizing this application for more extensible app launching, and better system navigation. I've used Launchy extensively on my Linux systems (and my Windows box at work), and I wouldn't say it's revolutionized my work flow.
I've been using Spotlight since it came with my Mac.  Are there compelling reasons to switch to Quicksilver?
Answer: Spotlight can luanch apps, just like quicksilver can.
What makes quicksilver is because it is more of a shell. And can be extended.
Because of those two things, it becomes more like an interactive spotlight. It can not only return what you are searching, but can actually perform actions on what you are searching. Either e-mail a file, move or delete it, search the content of a file.
I believe you can even interact with web services.
I would suggest reading more on it, if you can get use it, it can provide a lot of shortcuts and save some time http://qsapp.com/about.php
Comment: I like what you're saying about QS being a shell. This seems to be a valid reason for looking into it, even if the support is waning (which I've heard in a few places). Thx!
Comment: thats a dead link.
Comment: Fixed link, and for what it's worth, I'm use Alfred App now http://www.alfredapp.com/
Answer: If not mistaken, spotlight is more to file search. Quicksilver is like a quicklaunch for your app. I use it extensively as it is simple to type in the app name and launch the app. It's free, no harm to give a try. cheers
Comment: Thanks for the response: I use Spotlight to launch apps, so it kinda seems to serve this purpose. Can you think of any specific features in QS which you can't live without?
Answer: Have a look at This Q&A Thread which lists some of the best features of Quicksilver.
Answer: Quicksilver can do all these things and then a bunch of other things that you would never think about, but once you've seen them you just say.  "That makes sense."
I use Spotlight to find things and Quicksilver to do things.
Answer: Quicksilver is a lot more powerful than Spotlight as an app launcher, but you may not need it, particularly given your experience with Launchy.
My own approach is to keep frequently used apps in the dock and launch infrequently used ones from Spotlight This has the big advantage of using only tools which would be available on any Mac I use.
Another disadvantage of Quicksilver is that the developer is no longer working on it.  Launchbar is an alternative if you do decide you need an app launcher.


How do I prevent an application from becoming a startup item?

Question: Every time I launch a particular application I have to go into my Users & Groups prefs and remove it from my startup items. How do I prevent applications from automatically becoming startup?
Comment: Which application?
Comment: The app is DishAnywhere for OSX.
Answer: Without specifying the exact application, this answer is only going to be generic.
However, if removing an application from your login items doesn't prevent it from reappearing as a login item (or at startup), usually this means that the specific application's preferences are set to startup at launch, or login, etc. So you would need to go into the applications preferences and search for something along those lines and then disable it.
If this doesn't help, please clarify your question by including the specific application (and version) and also what version of macOS you're running.


Alpha-Beta cutoff

Question: I understand the basics of this search, however the beta cut-off part is confusing me, when beta <= value of alphabeta I can either return beta, break, or continue the loop.

return beta doesn't seem to work properly at all, it returns the wrong players move for a different state of the board (further into the search tree)
break seems to work correctly, it is very fast but it seems a bit TOO fast
continue is a lot slower than break but it seems more correct...I'm guessing this is the right way but pseudocode on google all use 'break' but because this is pseudocode I'm not sure what they mean by 'break'
Comment: What on earth are you talking about?
Comment: Try http://en.wikipedia.org/wiki/Alpha-beta_pruning and external links there for better understanding of alpha-beta.
Answer: Just for the fun of it I'm going to guess that you're talking about Minimax with Alpha-Beta cutoff, where

ALPHA-BETA cutoff is a method for
  reducing the number of nodes explored
  in the Minimax strategy. For the nodes
  it explores it computes, in addition
  to the score, an alpha value and a
  beta value.

Here is a page that describes this method and also provides a link to a C program that implements this method. Hopefully something here helps you with your problem, if I'm totally off with my guess please give more detail in your question.
<code>    function MINIMAX(N) is
    begin
       if N is a leaf then
           return the estimated score of this leaf
       else
           Let N1, N2, .., Nm be the successors of N;
           if N is a Min node then
              return min{MINIMAX(N1), .., MINIMAX(Nm)}
           else
              return max{MINIMAX(N1), .., MINIMAX(Nm)}
      end MINIMAX;
</code>
Answer: Beta cutoffs occur when the branch you are currently searching is better for your opponent than one you've already searched.  It was once explained to me as follows:
suppose are fighting with your enemy, and you consider a number of your choices.
After fully searching the best possible outcome of your first choice (throwing a punch), you determine the result is your opponent will eventually poke you in the eye.  We'll call this beta... the best your opponent can do so far.  Obviously, you would like to find a result that does better.
Now we consider your next option (running away in disgrace).  When exploring your opponents first possible reply, we find that the best possible outcome is you are shot in the back with a gun.  This is where a beta cutoff is triggered... we stop searching the rest of your opponents moves and return beta, because we really don't care if you find in searching his other replies he can also nuke you... you would already opt for the poke in the eye from the previous option.
Now specifically what this means is your program should return beta... if it doesn't work, you should compare to an alpha-beta search algorithm elsewhere.

Alpha-Beta cutoff


Polar Decomposition and Compact operator

Question: Let $H$ be an infinite dimensional separable Hilbert space and $\{e_n\}$ be a countable orthonormal basis for $H$.For a bounded sequence $\{a_n\}$ define $T(e_n)=a_ne_{n+1}$
and extend linearly to $\operatorname*{span}{\{e_n\}}$. Verify that $T$ extends to a bounded linear operator
on $H$.Compute the adjoint of $T$ and polar decomposition of $T$. Find conditions on $\{a_n\}$
so that $T$ is a compact operator. I have verified that $T$ extends to $H$,but I am unable to do the other parts. Any help will be appreciated.
Comment: For reference: such operators are called "weighted shifts". See [definition 27.1 here](http://books.google.ca/books?id=gtnMW_uH7DcC&pg=PA137&dq=weighted+shifts+course+operator&hl=fr&sa=X&ei=NDefUuzUHsyHkQfT4IGYAg&ved=0CDEQ6AEwAA#v=onepage&q=weighted%20shifts%20course%20operator&f=false) and the following pages. The answers to your questions follow.
Answer: Let $T_{n}x = a_{n}(x,e_{n})e_{n+1}$. Then
$$
   (T_{n}x,y) = (a_{n}(x,e_{n})e_{n+1},y)=a_{n}(x,e_{n})(e_{n+1},y)=(x,\overline{a_{n}}(y,e_{n+1})e_{n}).
$$
So $T_{n}^{\star}y=\overline{a_{n}}(y,e_{n+1})e_{n}$, and $T_{n}^{\star}T_{n}=|a_{n}|^{2}(x,e_{n})e_{n}$. The unique positive square root of $T_{n}^{\star}T_{n}$ is $|T_{n}|x = |a_{n}|(x,e_{n})e_{n}$. That should get your started.
Comment: @davyjones : thanks. I just fixed it.
Answer: Assuming that the inner products are linear with respect to the 2nd coordinate, let me introduce the bra-ket notation.
Let $x \in H$, then $\left|x\right> \colon \mathbb{C} \rightarrow H$ if defined by $\left|x\right> \alpha = \alpha x$ for all $\alpha \in \mathbb{C}$, the operator $\left< x \right| \colon H \rightarrow \mathbb{C}$ is defined by $\left< x \right| y= \left<x, y \right>$ for all $y \in H$. Clearly, $\left<x\right|^* = \left|x\right>$.
Yout $T$ is given by the formula $T = \sum_{n \geq 0} a_n \left|e_{n+1}\right>\left<e_n\right|$,
so we see that it is approximated by final rank operators, it is bounded if and only if $(a_n)$ is bounded it is compact if and only if $(a_n)$ is from $c_0$.
The adjoint is given by
$T^* = \sum_{n \geq 0} \overline{a_n} \left|e_{n}\right>\left<e_{n+1}\right|$. From here it is also easy to get the polar decomposition.


Stuck on grub rescue

Question: I removed Ubuntu from partition and remove those partitions too after that whenever I start  my window grub rescue screen pop up and not letting me enter in bios.
Answer: I'm guessing you're using UEFI boot with fast boot enabled, so there's no time to press the key that boots into setup.
Use the command fwsetup in the GRUB prompt. It should reboot the computer into setup. Then remove GRUB as a boot option.
Optionally you can remove GRUB from the EFI system partition, but there's no harm in leaving it there. You can do that by assigning the partition a letter in diskpart and deleting Ubuntu leftovers from there.
Comment: Unknown command 'fwsetup'
Comment: That would suggest your UEFI is configured for BIOS boot. You should be able to access the setup with the hard disk disconnected.
Comment: I tried it too but still nothing happening a black screen and in it, there is something appears like '
Comment: Media test failure, check cable; existing Broadcom pxe ROM;       no bootable device -- insert boot disk and press any key
Comment: Thanks now I reached to it actually f2 was not working so I tried with different keyboard and it works now
Answer: First of all it is important to know your systems specifications. It could be

a PC with BIOS, or
a PC with (U)EFI.

In case of the later, it could be configured in

native UEFI mode
compatibility/legacy mode, BIOS compatible (called CSM, short for UEFI's Compatibility Support Module)

Since modern PCs use UEFI sind around before 2010 it is most likely a UEFI-PC, but it could be in native mode or in legacy (BIOS) mode, i.e. UEFI-CSM. This difference is crucial, as it defines which partition table is used (and in turn also how the system boots):

native UEFI mode: GUID partition table (GPT)
CSM (BIOS mode): Master Boot Record (MBR)

In UEFI mode the boot sequence is totally different from the BIOS way, but GRUB can be booted in both cases and it would also look the same.
Case 1
Suppose you are in UEFI mode: (U)EFI uses a special partition with EFI boot loaders on it, called the EFI System Partition or, in short: ESP. It is per UEFI specification a FAT partition (FAT32, but FAT16 should also work). Some non-standard UEFIs also support NTFS though. Don't ever delete this partition as it will earse all the boot loaders, the ones for Windows and the ones for Linux. If you did that you're doomed, but since you see a GRUB message this shouldn't be the case...
Additionally, in UEFI mode boot loaders are registered with the firmware and this information is stored in NVRAM. In the UEFI firmware setup, sometimes still called BIOS setup (even though it's not a BIOS anymore), it can be expected that those boot options are listed, but adding such boot options is only possible from an EFI console (power user stuff, don't even try it) or from a booted operating system. The Windows installation process and the Linux installer takes care of this. Is this information lost, or is it set to a non-existing boot loader, UEFI will refuse to boot. Sometimes there is a pre-defined boot loader, normally used for removable (external) media, that should always work as a fallback for internal media: on the ESP those fallback boot loaders are \EFI\BOOT\BOOTX64.EFI (for 64-Bit EFI on x86) or \EFI\BOOT\BOOTIA32.EFI (for 32-Bit EFI on x86). (For ARM and Itanium those would be BOOTARM.EFI/BOOTAA64.EFI and BOOTIA64.EFI.)
So this is your best case scenario: Ubuntu Linux is installed in this way and the GRUB boot loader is still set as the default UEFI boot loader. UEFI loads GRUB from the ESP and GRUB doesn't find its boot configuration, because you've deleted the Linux boot partition along with GRUBs configuration.
The solution: Use the UEFI setup to list all possible boot options and boot the Windows boot loader. It may also work to use the EFI fallback, but there is a fair chance that after Ubuntu has been installed this fallback has been changed to GRUB as well, in which case selecting it will not change the results in any way. If you are able to boot from another drive, like a USB pen drive, and copy the Windows EFI boot loader \EFI\Microsoft\Boot\bootmgfw.efi over to \EFI\BOOT\BOOTX64.EFI on the ESP, then you should be able to successfully retry the EFI fallback boot option.
In any case, check your computers manual to find which key you have to press (or hold) after turning it on to get this list of boot options. Normally it is one of the function keys, like F10 or F12. Microsoft lists Esc, Delete, F1, F2, F10, F11, and F12 as common keys. Could be easy as pie, at least to get Windows booted again.
Once Windows is up and running you must use Windows' ability to set its boot loader as the EFI default in NVRAM. There are a couple of ways to do this but I recommend the manual way using BCDBoot from the command line. To do this start the Command Prompt which you will either find in the Windows Start Menu. Right-click on it and select "Run as Administrator" (might be hidden behind "More", so click that first). Alternatively it can be opened by using the Run function: on the Windows desktop hold the Windows key while pressing the R key: ⊞ Win+R. A small window "Run" opens. Type "runas /user:administrator cmd.exe" and hit Enter.
Now use BCDBoot as follows:
Bcdedit /set {fwbootmgr} displayorder {bootmgr} /addfirst

Should you have accidentally also deleted the EFI System Partition getting Windows back is only possible by using external Windows installation media, like an installation DVD or USB pen drive, or any other external recovery method. The Windows 10 installer has a recovery option to reinstall the boot configuration, which should reset the ESP accordingly.
Case 2
You are in BIOS mode. This could mean you have a very old PC that acutally has a BIOS, or you have a PC with the (Unified) Extensible Firmware Interface, thus EFI or UEFI, but in legacy BIOS mode using the Compatibility Support Module which emulates a BIOS. In essence both are the same, because:

The partition table has to be BIOS compatible, which is the Master Boot Record (MBR) in 99.9999% of all cases.
The boot sector (the first 512 bytes of the drive) has to contain a boot loader. The MBR contains such a boot loader.

If this was the case, the best way is to reset the MBR is using an external Windows installation media (installation DVD or USB pen drive) and starting the Command Prompt. This is one of the recovery options.
Once on the command line, reset the MBR using these commands:
c:
bootrec /FixMbr
bootrec /FixBoot

The first line changes to drive c:, presumably where Windows is installed on the internal drive. You may want to run bootrec /ScanOs first to list installed Windows systems. Based on this information you may need to change C: to the drive you have your Windows installation on. The second command will reset the MBR and the third line resets the partition boot sector. Maybe it is also necessary to run bootrec /RebuildBcd to rebuild the boot configuration entirely. (Refer to: Windows RE to troubleshoot.)
In any case
In general the best way to fix boot problems with an operating system is to use the original installtion media for that operating system. So, if this is Windows 10 that you need fixed, use a Windows 10 installation disc or a USB pen drive. You need a working Windows 10 system, e.g. from a friend or colleague, an empty USB pen drive with 8GB or more, and an internet connection (without data issues, preferably an unlimited data plan). Then download the Windows 10 Media Creator, run it and have it download and place the files onto the USB pen drive. Warning: Any previous contents of this USB drive will be completely erased!
You really want that (external) Windows installation media!
I hope this helped.
Good luck!
BTW, a similar question has been asked multiple times, e.g. How to restore Windows boot loader after removing Ubuntu, but this only works when one operating system is able to boot...

Stuck on grub rescue


How close was the USS Excelsior to the Klingon moon, Praxis, when it exploded in Star Trek VI: The Undiscovered Country?

Question: The shockwave from Praxis reached the Excelsior fairly quickly. Was it ever established that it was traveling in subspace or at superluminal speeds? Otherwise, if it was just traveling at the speed of light, the Excelsior would have already been on the wrong side of the Neutral Zone.
Answer: The shockwave was explicitly described as a "subspace shockwave" within the scene you're referring to.

VALTANE: I have an energy wave from two hundred and forty degrees mark six port.
SULU: Visual! My ...God. ...Shields!
(an energy wave hits the ship throwing the crew about)
LOJUR (OC): Captain, she's not answering her helm.
SULU: Starboard thrusters. Turn her into the wave!
LOJUR: Aye.
SULU: Quarter impulse power! ...Damage report.
EXCELSIOR ENGINEER: Checking all systems, Captain.
SULU: Don't tell me that was any meteor shower.
VALTANE: Negative, sir. The subspace shockwave originated at bearing three two three, mark seven five. Location. It's Praxis, sir. It's a Klingon moon.

Star Trek VI: The Undiscovered Country (1991)
Comment: Personally just from the movie I was reluctant to conclude Praxis was a moon of Kronos versus a moon in the same solar system or nearby star.  I'd assume fanon and beta Canon just went with Kronos moon.
Comment: That would make it pretty unlikely for its destruction to cause an environmental disaster on Kronos, which is the thing that motivates the Klingons to sue for peace.
Comment: @Amanadiel if a shockwave messed up a starship that was 10 light-YEARS away - that same shockwave should be vastly more powerful 1 light SECOND away.  There wouldn't be a planet let alone an atmosphere from the impact.  Admittedly it may not behave exactly like sound or gravity using inverse square law.  If the atmosphere was messed up from half of a moon forming a decaying dust ring around Kronos - that's a different problem. Realistically the dinosaur killer asteroid is estimated to left tons of debris in orbit that eventually reached Jupiter's moons - that's how big of an impact it was.
Answer: In the briefing after the Excelsior detects the explosion:

SPOCK: Good morning. Two months ago a Federation starship monitored an explosion on the Klingon moon Praxis

Later Spock mentions:

..our space stations and starbases along the Neutral Zone...

http://www.chakoteya.net/movies/movie6.html
So the Excelsior, the only Starfleet unit which detected the explosion of Praxis,  must have been closer to Praxis when Praxis exploded than any of the space stations and starbases along the Neutral Zone, even though a main purpose of of those space stations and starbases must have been to monitor events in the the Klingon Empire.
The explosion of Praxis apparently affected the atmosphere of Kronos, the Klingon home planet and so should have been in the same solar system as Kronos.  Thus it may be deduced that Kronos was much closer to the Excelsior on the other side of the border, and thus to the border, than the spacing between Federation observation outposts.
So Kronos should have been very close to the Klingon border.
Thus it is my belief that before the the first war with Earth or the Federation, the Klingon Empire was a sphere with Kronos in the center. And after the latest war with the Federation, the Klingon Empire was shaped like half a sphere, with the flat side facing Federation space, and Kronos at the center of the flat side and very close to the border.
I note that the Cardassian Union is apparently a major enough realm to be worth courting as an ally by the mighty Dominion. Thus the Cardassians should have expanded outwards in all directions from Cardassia Prime to annex tens, or hundreds. or thousands, or tens of thousands, of star systems.  So Cardassia Prime should be in the center of a spherical Cardassian Union.  And maybe it was before the Federation War that ended a few years before DS9.
I note that after the Cardassians abandon Bajor at the beginning of DS9, starfleet ships have access to Bajor and the Empoc Nor space station and Bajor is considering joining the Federation.  And that would not be possible if Bajor was surrounded by Cardassian space.  So there must be a region of non Cardassian space all the way between the Federation and Bajor.
A number of episodes, including "Explorers" indicate that Bajor is close to Cardassia Prime.  And the Deep Space Nine Technical manual says that Bajor is 5 light years from Cardassia.  Memory Alpha agrees with that distance. \
https://memory-alpha.fandom.com/wiki/Cardassian_system
That puts Cardassia Prime right on the new border of the Cardassian Union. a few years after the war with the Federation.
So it looks like the Federation annexed or liberated Cardassian planets all the way to the next system out from Cardassia Prime, and that Cardassia Prime is exposed to Federation attack in any future war - so long as Cardassia doesn't have vast allied Dominion fleets to protect Cardassia.
What does "Balance of Terror" in TOS say about the Romulan home planet Romulus?

Captain's Log, stardate 1709.2. Patrolling outposts guarding the neutral zone between planets Romulus and Remus and the rest of the galaxy, received emergency call from outpost 4. The U.S.S. Enterprise is moving to investigate and assist.

http://www.chakoteya.net/StarTrek/9.htm
And that implies that the Romulus is surrounded by the Neutral Zone, which would mean that it would be an act of War for any Romulan ship to cross the Neutral Zone to conquer any planet beyond the Neutral Zone.

The treaty, set by sub-space radio, established this Neutral Zone, entry into which by either side, would constitute an act of war. The treaty has been unbroken since that time.

So not a single Romulan ship has been detected crossing the Neutral Zone to conquer other star systems in a century.
So this implies that the Romulan Empire consists of only one star system.  But a major power like the Romulan Empire must rule tens, hundreds, thousands, or tens of thousands of star systems.
And when two officers on the Romulan ship talk, they mention:

CENTURION: We've seen a hundred campaigns together, and still I do not understand you.

Which is not very consistent with the Romulans ruling only one star system.
So a halfway plausible explanation for that contradiction would be that before the Earth-Romulan War, the Romulan Empire was a sphere containing many star systems, with Romulus in the center.  But after the war and since the treaty it is a cone of space containing many star systems, with the point pointed toward Earth, and the wider part pointed away from Earth.  And Romulus is at the point of the cone and thus vulnerable in the case of another war.
So that is my explanation why the Excelsior was able to detect the explosion of Praxis, a world which should be in the same star system as the Klingon home world Kronos.
Comment: You are seriously misreading that Romulan neutral zone log entry to the point of farcical hyperliteralism and erecting a scaffold of implausible conclusions around it in the name of "halfway plausible" explanations for a contradiction you created.  For a question about klingons where the answer is really "the Excelsior was somewhere on the border and the distance was never established."
Comment: The neutral zone doesn't extend evenly around the entire Empire. The novelisation suggests that the Excelsior was in an unexplored system near to the border of the Empire but on the side facing away from the Federation


Can Reidemeister 3 be weakened?

Question: If you take the diagram of the Reidemeister 3 move and "shortcircuit" two ends, you get (click https://i.stack.imgur.com/gfOKy.jpg if Imgur hotlink doesn't work):

I have circumstantial evidence that this weaker version is actually equivalent to R3.
(Only in a computational sense! My hypothesis: If A and B are two diagrams of the same knot, while it might not be actually possible to go from A to B by applying weak R3 moves (+R2+R1, of course), the assumption that weak R3 holds forces invariant(A)=invariant(B) for any Lie group derived invariant. Likewise, in Kauffmans abstract tensor framework, just assume weak R3, solve and get the rest of the Yang-Baxter equation for free.)
Thus: Is there work on "alternative moves"? Can you construct a counterexample? (I.e. an pseudo-invariant which is constant under weak R3+R2+R1, but not under R3? The example must have a skein equation, though.)
Comment: I believe no one has responded/voted to this yet because it comes across incomprehensible. Can you state things more clearly? (Maybe with definitions)
Comment: Blast, not even the diagram came through. I try a total workover.
Comment: @Hauke: I fixed the image reference.
Answer: I am very very skeptical that you can recover R3 from your weak R3.  Instead here's what I expect is happening in your examples.  Let V be the vector space spanned by diagrams with 6 boundary points.  There's a pairing on V given by connect up all the boundary points and apply your invariants.  You might as well treat as 0 anything in V that's in that's in the radical of this form, it won't change your invariants.  So what we want to know is whether the difference of the two sides of R3 (which I'll call v) is in the radical of this form for your particular examples.    When you take inner products of v with various other vectors in V you do the calculation by applying whatever skein relations you have.  It's quite possible that in the presence of your other specific skein relations your weak R3 is all you need in order to show that v has inner product 0 with everything.  But this would be because you've imposed enough other special skein relations.
Comment: (@Joseph - THX, I read the manual for image insertion twice and
still got it wrong...) @Noah: The other skein relations are not THAT special - I'll try my best to write up a formal proof but I never excelled in that :-) My main observation was that I can write the conditions for Biedenharn-Elliott and R3 for 3-nodes with 4 boundary points instead of the usual 5. This must "mean" something :-)

Can Reidemeister 3 be weakened?


Tube Size Available in US?

Question: Is it possible to still purchase tubes for Continental 47-622 TravelMaster tires with 28x1.75 written on the side?
I had an old Rabeneick commuter bike (have no idea of the bike's age)  shipped back from Germany that I'm trying to put back together. I've never seen valves like these....they're not Schraeder or Presta.
Answer: Yes. If it actually measures 47mm wide inflated then it's a little caught between 2 sizes, but 700x45 tubes will work fine in it. 29x1.95-2.135ish tubes would also work, but be big. If it's Dunlop/Woods valve now then get Schrader. If it's Regina get Presta.
Comment: 700x38-48 or 40-50 are quite common ranges. I don't buy expensive tubes and have only ever seen ranges of around 10mm on the width (or a bit more)
Comment: Great... Gives me a direction to head, as well as ideas to identify the valve types....have only been around road bikes so this will be interesting! Now to address the stem bolt and wedge fiasco! Appreciate the help!
Comment: 700x38-48 and 700x40-50 may exist but they are in no way common, at all. The common labeled sizes in that area are 38-45 and 40-45. And from there it goes to the 29er sizes.

Tube Size Available in US?


Changing Windows remote System Password from Linux

Question: I'm looking for a way to change the password for some user of a Windows box remotely from a Linux Box. Really I have to do it by running some program/system script on the Linux Box but without running anything more than standard services on the windows system.
Comment: Really it is a programming question, but SO people closed it as not "programming related" so I guess it belongs to ServerFault. I write that to avoid being sent back to SO.
Comment: So is a windows box or linux box? Your title and body say two different things.
Comment: The Question on SO has been edited to be more programming related, but I'm still interrested by means to do that using shell tools on Linux.
Comment: @Erika: I'm running my script on Linux and the password of a remote Windows box should be changed.
Answer: You can update the "unicodePwd" attribute of the user object using LDAP over SSL to reset a user's password. This is probably the most straightforward "cross-platform friendly" way to make such a change because, on the Linux site, you won't need any MSRPC infrastructure.
Comment: Interesting, but the asker doesn't say whether this machine is joined to a domain or not.
Comment: @gravyface: Good point. I'm so used to living in Active Directory environments that I can't imagine not having one. Definitely a good point.
Comment: Andersan: I should have said I already did that for machines that are in a domain, I'm looking for another solution for stand alone machines that are not inside a domain. But +1 anyway as I totally agree it's the best solution.
Answer: I am somewhat in doubt about what you are going to accomplish - changing a Windows user's password? By script?
If so, take a look into winexe - it uses RPC calls and allows you to run commands on the Windows machine without prior software installation (the Windows firewall must be configured for letting RPC through, tough). Running a net user <username> <password> on the Windows machine would do.
Comment: Thanks for the link. I was looking for something using the SMB API, but winexe could indeed another way to do it.
Comment: That would be really a SO question. But you always can take winexe's source code and incorporate it into your project to run a command. In theory, you should be able to use RPC for changing the SAM account information directly - I do not know if Samba's rpcclient would support that.


Android x86 Marshmallow not booting on Virtualbox and VMware Workstation

Question: I've downloaded the latest Android x86 (android-x86-6.0_20160129.iso) from here and tried to install it to the HDD on a VM in VMware Workstation and in Virtualbox.
The installation seems to proceed properly (using EXT4, and EFI Grub) and i get a message that it has installed successfully. However when I reboot it passes GRUB, picks the correct Android installation, but it does not boot. I get the result seen in the screenshot below and then a blank screen with a blinking cursor.

I've seen somehow similar questions on Android-SE (here and here), but they use older versions of Android x86 and don't seem to have solutions that work for me.
The VMs in both VMware and Virtualbox have: HDD=4GB(IDE), RAM=2GB, 2 CPUs and they boot through EFI. I've tried nomodeset and xforcevesa in the Grub boot parameters but nothing seems to work.
The .iso does boot up though all the way to the GUI in Live mode (LiveCD).
Any assistance would be greatly appreciated. I have a feeling that the solution might be something linked to the graphics settings but i'm not exactly sure.
Comment: I share your feelings (same issue here). Due to some hints, I've even increased graphics memory to 32MB (no improvement). Some posts speak of the need for 2 partitions (1=primary 100MB for grub, 2=extended with the remaining space for Android), didn't help in my case. Another source suggested manually editing/creating the `grub.cfg` as `menu.lst` doesn't work (not tried that yet). My other try with Android 5.1 hung in the boot animation ("android" text), so I gave up after 15min. What OS setting is your install based on? I've used "other Linux", as that worked in the past.
Comment: I tried "Ubuntu" and "FreeBSD" so far  ... let me mess around some others and see if that helps.
Comment: I saw a YouTube video where someone used Windows7, which really confused me.
Comment: BTW: I've just tried again, for me it doesn't even boot into live mode (ends up at the same place then). Related issue on our sister site which I already mentioned: [Android-x86 6.0 Marshmallow in VirtualBox:installation stuck on GRUB](http://superuser.com/q/1052597/143340)
Comment: @Izzy : Actually from what i've read, the solution at the link in your previous post (and from a bit of experimentation) is not exactly correct, but it works. From my understanding it's actually the creation of the GPT boot sector that allows the Grub stuff to proceed, not the presence of 2 partitions. I read somewhere that the Android x86 partition formatting fails silently if the "Create/Modify partition is not done" first, leading to the grub installer hanging because the disk wasn't even formatted to begin with. (I'll add this "footnote" also to that link)
Comment: More concrete info on testing "what the install is based on": Tried FreeBSD (32 and 64bit), OpenBSD(32 and 64bit), NetBSD(32 and 64bit), Ubuntu(32 and 64bit), Other Linux (32 and 64bit). No improvement yet.

For now i think i'll switch to the Android Virtual Device Emulator ... perhaps that might meet my needs, but hopefully someone will have a solution for Android x86 a little later.
Comment: I rather wonder how it is that it obviously works for some people – or whether those YouTube videos etc. are forged. Sounds non-deterministic, as I cannot see any pattern. Followed them step-by-step but came to different results (i.e. "not working").
Comment: I have been going in circles with this same problem. What I learned is that it may have to do with your video. Try booting live in VESA mode and if that works, then you know that is where the problem lies.
Comment: Have you tried Phoenix OS?
Answer: Found the solution!
You have to edit menu.lst file. Here is how:

boot in debug mode (usually the second option in boot menu)
when booting stops (for me it just hangs there with flashing cursor and without any prompt) enter mount -o remount,rw /mnt
enter cd /mnt/grub
enter vi menu.lst
press Shift+a
right under the first boot entry find the line starting with kernel initrd=/in (your line might look different; it depends on Android version; in general just find the line that starts with kernel)
at the end of the line type vga=834 nomodeset xforcevesa
press ESC then :wq - these commands will save the file and quit vi
enter cd /
enter umount /mnt
enter reboot -f

Now the system should reboot in the VESA mode of your choice.
This will enforces to use the VESA driver for X.
You can replace the vga=xxx by any number you want for your screen resolution.
Also tested that 832 works fine (gives 800x600 resolution).
You can find all the VESA modes when you use the iso file and pick the boot option to boot in VESA mode - it will show the list with all modes (numbers are in hex and there is also a redundant letter in front of some modes - ignore it) and you can test them there immediately to see if it works and is good to use in this menu.lst fix, but you have to convert it from hex to dec first using any hex->dec converter.
Comment: At step 10 I get: 'can't umount /mnt: Device or resource busy'
Comment: +1, Confirmed to work for `android-x86-6.0-r3.iso` on VMware Workstation.
Comment: Thanks a lot❗ it's still working on Android 8.1
Comment: Is there a non-tedious alternativ which also does not allow errors that can be caused by 1 typo?
Comment: Thanks a lot❗ it's still working on Android 8
Comment: Works for Mashmellow Stable release 3.
Comment: Thanks, it works for android-x86-8.1-r1.iso!
Comment: There is no `/mnt/grub` on `android-x86-8.1-r1`
Comment: works for vmware 12.5 on linux with android 8.1 r2
Comment: Successfully tested the suggested solution with android-x86_64-8.1-r2.iso with virtualbox.
Comment: Cool, vga=834 worked.
Comment: This works, not only on Android x86, but also on any OS built over it, like PrimeOS.
Comment: I tried this with Android 8.6. It worked but terrible performance.
I used a variation and got much better performance:
UVESA_MODE=1024x728 nomodeset xforcevesa
Answer: I'd like to extend and improve @Jay Smith answer based on personal experience.
He is right in the core thing that the cause of the issue is VGA resolution used by Android, but he is wrong in his assumption it is disposable fix and should be typed at each boot.
It can be made persistent, and should be! And I show you how:)

First of all, install the Android from iso image correctly through the wizard steps.
Do not use EFI GRUB during install.
Do not use immediate Run Android_x86 option, instead select Reboot and eject the iso. The error mentioned by @Jay Smith

The big drawback of this approach is that the next time you try to
  boot from the hard drive, GRUB will not be able to find the image

is not related to VGA issue and should be dealt separately. I also met this error and full reinstall helped, so I assume this error is somehow connected with the Run option, 'cause when I selected Reboot I didn't face the error.

After the install you will boot and will stuck into Android command prompt. Okay, go on then.
Now you should try to pick up your correct resolution.
It won't necessarily be 788 or 794, as they say here, it all depends on your hardware setup. For me 796, 794 and 792 worked for KitKat, Lollipop and Marshmallow images correspondingly, however your values could be different.
Here is the table for linking GRUB VGA values to resolutions.
To check what match you use trial and error method

Then on boot to GRUB screen choose e key to edit the option

There you will find a long-long string of options to which you should append your VGA option like that nomodeset vga=794

After editing press Enter and b to boot the desired bootrecord.

Iterate these steps N times to find proper resolution. You will recognize that by the booting of Android:)
O-la-la, excellent! We achieved the desired result and booted Android for one time. But this is only 50% of job. I guess you don't want to type this VGA crap each time? Okay, let's go on to persist our result.
Now we need to edit GRUB config to add our desired resolution. While there are ways that allow doing this within the GRUB itself (i.e. debug mode, grub cmd) I wasn't able to get it to work and propose another 100% solution.

We need working Linux installation (physical or virtual, doesn't matter). The problem here is that GRUB folder cannot be accessed from inside Android as it's protected, and it should be accessed externally. And not from Windows because it doesn't recognize ext3/ext4 partitions, only from *nix OSes.
So add this disk (VHD, VDI, VMDK or whatever) to your Linux installation for it to have access to android filesystem

Access /grub/menu.lst. Usually it is located in root folder.
There you'll find smth like

Append the desired VGA option to the bootrecord as we did earlier and that's it!

Save the file.

We've done! Now you can reattach your android disk to virtual machine and happily use it.
Comment: you can access grub folder within by following these steps:
1. open the terminal emulator
2. get root access by executing "su" command and allow it
3. make directory for the hard disk by: mkdir /mnt/sda
4. mount the hard disk by: mount /dev/block/sda1 /mnt/sda
5. browse to grub folder by: cd /mnt/sda
Comment: thanks for suggestion
Answer: Some progress here, but not the real thing. The following allowed me to boot Android x86 6.0 under VirtualBox correctly - but only once:
1) When booting the installation image, the initial screen gives you four options. Move the cursor to the last one: Installation - Install Android-x86 to harddisk".
2) Press the [Tab] key for edit options.
3) Immediately after INSTALL=1 DEBUG= type vga=788
(Make sure there is a space between DEBUG= and vga=788.)
4) Press [Enter].
5) Proceed with the disk partitioning as described in many sites in the net.
6) When offered the options Run Android x86 and Reboot, choose Run Android x86. You should see ANDROID pulsating in big letters for a few minutes, and then the Android welcome screen will come on.
The big drawback of this approach is that the next time you try to boot from the hard drive, GRUB will not be able to find the image :-( Any help fixing this would be appreciated.
Comment: Unfortunately it's one-time workaround :(...
Answer: I also had problems with Android x86 vitual box on a Windows 7 Pro x64 AMD machine. I suppose we are all going to have slightly different issues depending on our architecture/hardware but they all seem to be similiar root causes. I think more emphasis should be on the architecture/hardware then the host OS. Try 32bit without/with EFI set in System, leave hardware acceleration at default, make sure virtualisation is enabled in your bios. Don't enable 3D Graphics acceleration, you should get a warning if you enable 2D acceleration so don't enable that, if you get a black screen during initial setup try increasing the video memory up to 64mb. Finally you can download pre-built VM images here:
http://www.osboxes.org/android-x86/
All these little tweaks helped me successfully install Android x86 4.4 on a Windows 7 x64 Pro machine.
Answer: Here is a YouTube video showing how to set VESA mode in Grub.
https://www.youtube.com/watch?v=JoMs-4bsygs
My other post was deleted for some reason, but if you want to find out if VESA/VIDEO is the reason your gui isn't coming up after install, then boot from the Android x86 ISO and select VESA mode (Live boot) and if you get a gui, then check out that youtube video. It explains perfectly how to setup your grub to boot the correct VESA mode.
Comment: Pressing [esc] is not supported
Comment: My problem is in booting from the ISO.
Answer: Select "Yes" when it asks "Do you want to install boot loader GRUB".

Now you can boot into Android. (Works even rebooted)
Reference: https://shellzero.wordpress.com/2015/10/27/how-to-install-android-on-vmware-fusion-mac-os-x/
Answer: Completely new to this but I just tried installing Android 6.0 on Workstation 12 Pro and on boot just stuck at command prompt ocassionaly flashing. Tried a couple of the suggestions from abvoe to no avail. Finally went into VM settings and ticked on 3D Graphics at which it warned that it was not supported. This then allowed me to select 32mb of graphic memory. Rebooted and it worked. Tried booting several more times just to prove it and it is still working. Hope this helps.
Comment: I tried the solution given by Spider5445 and it worked for Nougat as well...thanks a ton mate! :)
Answer: While in the grub bootloader, press tab and change androidboot.hardware=android_x86 to androidboot.hardware=x86.
Answer: Your ISO is corrupt, please try redownloading it from The offical Android website link
Comment: How do you know, is a corrupt ISO the only cause for this?
Answer: I had the same problem with the installation on my hard-disk and for me the following steps helped:

Like Jay mentioned above: On the installation medium I pressed the [Tab] key.
I wrote down exactly all the arguments like
androidboot.hardware=android_x86_64 and DEBUG=2 etc. which are shown now for the installation medium boot menu entry.
I added all these arguments in my custom grub configuration and updated grub.
When booting I have to enter twice "exit" in the prompt of the console.

Doing this Android booted and started the window manager.
P.S.: Very uncool if an reviewer messes up the format of an answer and than even votes you down without getting the content.


Work done by a body

Question: This is a fundamental doubt
Can we use the formula W is equal to F*D only when the body is accelerated?
For example if the acceleration does not remain constant can we use it?
Comment: The formula doesn't contain a velocity or acceleration term. A better way to write it would be differentially $dW = Fds$. This tells you that you have to integrate the term $Fds$ to get the total work. If $F$ changes along the way $s$, then this may be a non-trivial integral.
Comment: But the formula is deived from w is equal to f*v^2/(2*a)?
Comment: The formula is the definition of work and completely independent of motion. It can be applied to moving bodies, which then gives us the usual expression for kinetic energy by integrating over the work necessary to accelerate a body from standstill to a given velocity $v$.
Answer: Work done on a body by a variable force $F(x)$ in displacing an object from a point a to b is given by
$$W=\int_a^b{F(x).ds}$$  This is the general formula for finding work done, provided $F(x)$ must be resultant force on the body that causes acceleration of body. The above integral is a path integral. If you are dealing with a constant force, then acceleration is constant, and you can see that the above integral reduce to $W=F.S$ , where $S=b-a$ is the displacement. If you are dealing with bodies have variable acceleration, then the force is a variable force (such as $F(x)=-Kx$ ) you have to take the above path integral into consideration.
Comment: Just to clarify, W is the work made by force F, the body might or might not be accelerated (it might not be accelerating if there are other forces acting upon it).

Work done by a body


samsung galaxy s duos about system data card problem

Question:
The phone memory (system data card data like images, videos, contacts) is stored on server or not?
After hard reset data is gone so that is stored someone else or in databases?
Answer: No, it is not stored anywhere.
You should create your own backup manually.
After hard reset, even the game data would be deleted.
The only data you can have left with you is the data you have already synchronized with google.
Answer: No, the phone memory isn't stored on a server, but there are some easy-to-use (and built-in) ways of backing up different kinds of data.
If you save contacts to "Google contacts" instead of "Phone contacts" when you create them, they're synced with your Google account, so they'll automatically be synced to your new phone, or after a factory reset, when you sign into the same Google account. The same applies to calendar events, if you add them to a Google calendar.
Android phones have a built-in backup system, which backs up apps' data to Google's servers. All you need to do is turn it on in the phone settings, and make sure the "Restore my data" checkbox is checked when you sign into the same Google account on the new phone, or after a factory reset. This only backs up data from apps that support it. Check with the developer of each app! It doesn't back up photos, music, &c. from the SD card.
To back up photos, use an app with a "photo upload" feature, such as Google+ or Dropbox. Once you've turned the feature on, it'll automatically upload each photo or video as soon as you take it.
If you don't do any of these things, then when you factory-reset your phone, everything on it is gone.


Implementing Filters as Tabs in a Web Dashboard

Question: We are trying to provide users with a strong filter mechanism on a Dashboard that collects visit data. It feels like we have arrived at a point where only a few pieces of the puzzle are missing and we don't know how to place them.
The user should be able to:

Define the filter parameters.
Save them for future use along with a name.
Apply them for one-time use to quickly check or search something without the need for saving them.
Modify the parameters of an existing saved filter and save it again.
Open tabs in the software itself and apply different filters (saved and unsaved) to easily switch from one type of data to another.
Close tabs.

Constraints:
There is a live view tab that is static and can't be modified or removed by the user. (Mentioned from now on as the default tab)
Solution: (So far)
1. A filter button on the dashboard that opens a side panel for filters that contains all the parameters and allows the user to save a filter, save as existing or just apply.

A Tab System that works like you'd expect. It allows the user to change the filter applied in a tab by clicking on a drop-down icon on the right side of the tab itself and selecting from the saved filters list.

A plus button at the end of the tab list which works exactly like the drop-down above, prompting the user to select which filter view to apply on the new tab avoiding any empty states or empty tabs open.

Points we still can't seem to get a grip on:

How to make the experience of applying a filter to any open tab as seamless as possible? For example, if the user is on a tab and he clicks on the Filters button and changes some parameters and clicks Apply. Should we update the view to Unsaved View? Should we keep the name of the tab same with an asterisk to denote unsaved state with a reset button? Or should we open a new tab (potentially leading to a lot of unsaved tabs open?)
If subsequently, he refreshes his page? Should the unsaved view disappear (being unsaved) or should we keep it in memory (potentially not really creating a need to use the 'Save Filter' feature)
How to treat the default tab in all this? Should we disable all filtering options in the default tab to avoid any confusion leading to some loss in discoverability of filter features that are available as they will not show in the default tab or should we show filtering options on the default tab and open any changes made on the default tab in a new tab leading to a little bit of inconsistency (changing any filters from the default tab always opens a new tab while changing any filters from other tabs only makes changes to that specific tab and then implementing a fail safe or an error state if the user tries to make changes to the default tab with the maximum limit reached)
Creating a responsive design around the solution.

It'll be great to get insights and thought process on how to go about this problem.
Answer: 1.In a modern, ideally programmed system, filters should work dynamically in real time - however, due to system limitations:
For a card with saved settings:

a) Let's assume that we search for the target element by the
X Y   Z parameters
b) We want to see the results so click apply.(the card closes
automatically and we see the result)
c) We see 30 results, but we decide to change the Y parameter to
narrow down the results

In this situation, after opening the window with filters, I think that the parameters X Y Z should be remembered from the previous operation (stored e.g. in localstorage) - however, this requires analyzing several scenarios and discussing the most appropriate solution.
Perhaps the filters should be redesigned? (as a sliding div, not a collision modal)
2. It should keep the previous state (the memorization mechanism is often used in multi-step processes)
3.Limit the source of truth and minimize the solution to a minimum - if in the context of design the solution creates inconsistencies - it will be even more difficult to implement.
Specifically I suggest keeping one card and remembering the state
4. hmm, create a new filter screen? limiting their number to the most necessary?
This point will take much more time
Comment: What do you specifically mean when you say cards in this context?
Comment: Opened filter modal (Filter view1 in your screen)
Comment: @PiotrŻak The 1st and 2nd point of this answer gives good relevance.
The other two I guess depends on the team.
Although, rightly written. Kudos


Should I turn iCloud Photos off before resetting iPhone?

Question: If iCloud photos is turn on, any addition or deletion of photos in the iPhone is reflected in iCloud. So, since I'm resetting the iPhone, which will delete all the photos on it, should I turn off iCloud photos so that my photos on iCloud remain intact?
Answer: There is no need, when you reset the phone it will of course reset the phone, but it doesn't delete everything remotely.
So long as you've ensured all your photos have synced, you should just click the reset all content & settings option. It will ask you to sign out of iCloud to disable Activation Lock and then it'll reset the device. Your photos will remain in iCloud.
Answer: iCloud is not based on phones, but on iCloud accounts. You are removing the iCloud account from your phone when you reset your phone. You don't change the account. So nothing will happen do the data in iCloud.


How to inset (or fill in) a complicated mesh?

Question: I have SVG of a tree. I want to make a 3D model of it. Also I want to add a texture on the front face (on the trunk) of this tree, to make it bumpy. But how can I add a 3d texture on it?
I extruded the perimeter, but how to fill in the rest?
Comment: Welcome to Blender.SE! Don't miss out on some bonus points from taking the tour: http://blender.stackexchange.com/tour Please ask only one question at a time. When there are multiple questions, it's hard to pick a "best" answer. If you'd like information about texturing, you can post another question. If you don't... that's fine, too. You can edit your question to make that clear.
Answer: There are a few ways that you could potentially approach this:

Manually select 4 vertices, press f to make a face, and repeat until you go crazy.
Select all of the vertices and press f to make an "n-gon", you'll quickly realize why n-gons are avoided.
Another option is the Face Tools built into Blender.
From the Manual:

Fill
The Fill option will create triangular faces from any group of selected edges or vertices, as long as they form one or more
  complete perimeters.
Note, unlike creating n-gons, fill supports holes.
Beauty Fill

Mode: Edit Mode
Menu: Mesh ‣ Faces ‣ Fill/Beautify Fill
Hotkey: Alt-Shift-F

Beautify Fill works only on selected existing faces. It [rearranges] selected triangles to obtain more "balanced" ones (i.e.
  less long thin triangles).

Check out the Manual link. It's got even more information.
Answer: When you import an SVG file it will become a curve object in blender.
You have the option to make curves filled:

(to make the example I traced the image on your post, then imported it to blender as svg and joined all of the curves into 1, but you don't need to join all of them)
Answer: This definitely looks like the perfect job for a curve object, not a mesh.
If you imported it as an SVG try re-importing it and not converting to a mesh. Blender will then take care of automatically filling the face loops.
You can then convert to mesh afterwards for further processing if needed.
Answer: To Fill in the mesh select all the vertices and hit "F" for face. this will fill in your space with an Ngon. When you go to uv unwrap it, select "project from view" so that your bump map will not get stretched. If you need help texturing it there are plenty of resources out there.
It also looks like you have extruded your vertices backward. If you want to fill in the front and back make sure and select the front ones and the back ones separately when you are filling them so that you get a clean structure.
Comment: Bad idea for something this complex. N-Gons are a no-no, but the more complex your model becomes the more you're likely to run into issues.


how to change widget type of title field in content type Drupal 7

Question: I am trying to change the widget type for title field in content type (currently it's a text field as default). Now I want to change to node reference.
Answer: i think, it is better to remove the original field 'title' and create new field for node reference type, use:
<code><?php
    function your_module_form_alter(&$form, &$form_state, $form_id) {
        if($form_id == 'your_node_form'){
            $form['title']['#access'] = FALSE;
        }
    }

?>
</code>
Answer: There is also http://drupal.org/project/auto_entitylabel which can help you hide the title and automatically fill the title field using tokens.
See this video for a howto http://codekarate.com/daily-dose-of-drupal/drupal-7-automatic-entity-label-module.
Answer: You can't use a widget as such; the title isn't a field, it's a property of the node entity type and doesn't have the capacity to use a field widget (without some serious messing about).
Also I don't think a node reference would work quite as you expect for this. The value saved by a node reference field is the ID of the referenced node, not the title, so you would simply be creating nodes whose titles are the IDs of other nodes.
You could probably look at implementing your own autocomplete for the title field if you really want to do this, but it will involve some code. Have a look at the form examples in the Examples module for some inspiration, there's some related stuff in there.
Answer: That is not possible. But you can try this:

Add an other fileld with the required widget type.
Use the automatic node title module to set the title to the value of the extra field. The module does give you the possibility to hide the original title field alltogether.


Question about Partial Sun

Question: I just planted  sister theresa hydrangea in my front lawn next to the entrance.  My front faces South.  Should I replant them  in my back yard because of the sun?
Answer: Hydrangeas do best in partial or dappled shade in soil that does not regularly dry out - a south facing position, unless it is partially shaded by other shrubs, is not the best of growing conditions, so yes, it might be better to plant elsewhere instead.

Question about Partial Sun


What's the biggest expansion of the Empire of Man before the Horus Heresy?

Question: What was the biggest expansion of the Empire of Man before the open rebellion of Horus Lupercal began (Istvaan V), i.e. what Segmentums / Sectors were controlled by the Empire of Man at that point? And how long did it take the Empire to reclaim those planets?
Comment: not sure about the last part of your question, do you mean how long did it take to get those planets back from Horus, or how long it took to get those planets back under imperial command during the great crusade?
Answer: The largest expansion of humanity took place during M15-M25 the Dark age of Technology. This is when Humanity first discovered warp travel and went out into the galaxy inhabiting and populating planets. However Humanity was still split at this point into the nation states and forces that later on the Emperor would conquer and unify into the imperium of mankind.
Due to the events at the end of that age and then the subsequent age of strife Humanity at that point had lost many planets to a combination of, the war with the iron men and the sudden appearance of and rise in the number of psykers leading to all the destruction that brings.
When the Eldar went and created a new Chaos God not only did the resulting warpstorms cut off worlds and systems from each other and earth, it also resulted in whole planets being destroyed as creatures of chaos found ways into the material realm, largely using the minds and bodies of said psykers.
Therefore by the time the Emperor was ready to start going out and liberating planets much of what was the empire of mankind was no longer salvageable and the planets he "conquered" had all largely been under human control previously, even if there human inhabitants no longer survived.
In regards to how far the Great Crusade had got before the events of the Heresy there is a map
https://warhammer40k.fandom.com/wiki/Great_Crusade?file=Imperium_Dominatus_Ancient_Map.jpg
Which shows roughly how far the empire had got in re liberating the human worlds.
However it is important to note that Humanity has never achieved the kind of spread and occupied as many planets as it did during its peak in the dark age of technology and given that many of those worlds where lost and destroyed due to the events during and after that age the empire of mankind will never be as big as humanity was then.
Something to consider is that in the 41st millennium the Empire of mankind has a very definite limit on how far it can spread, that limit is the Astronomican which has a limit of 70,000 light years outside of this distance no vessel can travel safely in the warp, and certainly could not guarantee where it would end up meaning that planets outside of this distance may be populated by Humans, but wont be part of the imperium as Earth will never be able to control them.
So to answer your question.
Humanity was at its widest spread in the middle of the dark age of technology before the war with the iron men. it has never matched this since, but, humanity was not at this point an imperium of mankind.
The Imperium of Mankind (the Emperors baby) was at its height just before the heresy began.
Comment: Minor nitpick, but they can still travel outside of the light of the Astronomican, they'll just do so completely blind. Orks do blind warp travel all the time, but they don't mind the occasional scrap with demons and getting lost.
Comment: Humanity can but the Imperium will never stretch beyond that point, answer tweaked
Comment: The radius of our galaxy is 50,000 light years, so we can go quite far. We are on the edge of it though (contrary to what Imperial maps show)
Comment: If anyone has a cannon reference for the range of the astronomicum I can add, have read 3 different ranges in 3 sources online so far.


Layout PCB High Current

Question: If i have a high current (12 amps) passing through my route is it ok to put via on it or to duplicate the route (150 mil on top and 150 mil on bottom)?
Answer: Yes, if you have 150mil on top and bottom with both carrying half of the current, then each would get ~6A (or you could consider that both are 300 mil). This would give you a ~10C rise, if that is acceptable then use that. (Remember that it is resistance and temperature rise that determine trace size)
Also Make you do a current/resistance drop on the vias that you use, as they will contribute to loss and heating. (Saturn PCB makes a great calculator for this) Make sure vias are paralleled for the current they carry.

Source: https://www.pcbcart.com/article/content/copper-trace-and-capacity-relationship.html
Comment: Also keep in mind that the current is not going to share equally between the two traces.  While not exactly the same as what you have, when using multiple pins to increase current carrying capacity, we add 25% & round up to get the number of pins needed.  For instance,if we have to pass 2 amps through a connector and each pin is rated at 0.5 A (derated), then the number of pins we would use is 1.25*(2.0/0.5) = 5 pins.  You probably want to use a similar derating factor here.
Comment: Yes, the vias add resistance, depends on size and number. It also depends on which side you pull the current from (source on topside, load on topside vs source on topside, load on bottom)
Answer: It's better to put 3 or 4 vias for such current and use larger vias or even THT size holes.
It's also better to make the trace as large as possible, if you have spare space, than stick with minimum values given by the calculation. It also depends on copper thickness. Doubling the copper thickness is like doubling the trace width, as high current is concerned.

Layout PCB High Current


Age not updating on profile

Question: I turned 18 a few months ago, and haven't been on Stack Overflow for a while. But I was surprised to see when I took a look at my profile today, the age field hasn't updated despite the fact I actually inputted my date of birth rather than my actual age. It isn't updating when I hit edit and save it again, either.
Answer: Without revealing your actual birthdate, it still hasn't happened this year according to what I as a moderator can see in your profile -- it's not for quite a few more days yet in fact.
unless you are posting this from the future!
Comment: Wait a minute...did he reverse the month and day fields, perhaps?
Comment: So yeah, I did actually end up reversing the month and day fields. That's what I get for being too used to DD/MM/YYYY.
Comment: Sounds like Prior might be eager for their birthday.
Answer: Wait a couple of hours.
The site is based on UTC and will count the years on your birthday cake based on that. So it might still be yesterday where you live based on timezones.

Age not updating on profile


How does the movement of the cyclic control stick in a helicopter affect the swashplate?

Question: Yesterday I learned that the surface that the helicopter blades create while rotating is very similiar to a gyroscope, and thus gyroscopic precession works there as well. My question is, when the pilot moves the cyclic pitch controls forward, how does that affect the swashplate? Does it rise it in back and lower in front or does it rise on one side and lower on the other?
Answer: Horizontal displacement: Tilt the rotor
With the rotor blades rotating around a vertical mast, the total lift vector of the rotor is vertical and the helicopter hovers. If a translation is desired, this vector must be tilted so that an horizontal component can appear. This is done by tilting the rotor disc. The rotor disc is the plane of rotation of the blades.

Rotor tilted forward: The helicopter moves forward.
Rotor tilt: Change blades pitch
The rotor disc is tilted using the lift difference between individual blades. For instance to tilt the rotor forward, each blade creates more lift when it is aft of the mast, less when it is forward of the mast, and the change is progressive between these two positions. The lift difference creates a torque moment on the mast, tilting the mast and the helicopter with it, at least this is our intuition.
As you mentioned, the force doesn't produce its effect instantaneously due to the gyroscopic precession. It is effective only 90° later. So the lift variation must have an advance of phase of 90°. For a forward translation, the lift is maximum when the blade is on the left, and minimum when it is on the right. The momentum is stored into the blade and released 90° later.

The variation of lift is done 90° in advance.
Lift depends on the angle of attack of the blade. Varying the amount of lift according to the position around the mast leads to varying the AoA around the mast: Increased AoA on the left, decreased on the right.

Pitch varies according to the radial position of the blade.
Change blades pitch with the swashplate
Changing the pitch of a blade is done using a system of swashplates. A stationary plate is oriented in space by the pilot using the cyclic stick.
Another plate is maintained in contact with the first one, but can turn freely with the rotor. This second plate is forced to rotate in the plane of the stationary plate, thus it oscillates constantly as it rotates. In turn, it creates an oscillation of the vertical rods (horn links). Each horn converts the rod oscillation into a pitch oscillation on the blade. The blade is now pitched according to its instantaneous radial position relative to the mast, and according to the cyclic stick command.

MBB Bo105, based on photo by Burkhard Domke (source)
Horns are linked to different angular sectors of the swashplate
The vertical rod transmits the stationary swashplate height at its current axial position. By locating the rod 90° ahead of the blade, the link takes care of the rotor precession. The mechanism is so that when the pilot pushes the cyclic forward:

The swashplate is tilted forward.
When a blade moves left of the mast, its horn link measures the height of the stationary swashplate in its aft sector, where the plate is the highest.
The horn is pushed by the link to the maximum, and the blade in turn gets the largest pitch angle.
The situation is reversed when the blade arrives on the right. The link is in contact with the forward sector of the swashplate, where the latter is at the lowest position. The blade gets a low pitch angle.

(Redrawn from source)
Advance for pitch order can be adjusted as required
By adjusting the offset of the horn link which interfaces the horn and the plate, one can adjust to the exact amount of advance required for a given blade.
Comment: The swashplate has to be rigged so that the rotor tries to align itself with it. This is because the fuselage is mostly (or completely in case of teetering rotors) just freely hanging under the rotor, so the rotor must not proceed tilting further before the fuselage has caught up with it. When the swashplate tilts forward to fly forward, the rotor tilting forward reduces the angle between it and the swashplate, so the lift asymmetry decreases until the fuselage catches up. If the swashplate tilted right instead, the rotor would continue to tilt and could hit the mechanical limit and break.
Comment: Also note that torque transferred to the mast directly by the stiffness of the blade attachments is *not* subject to the 90° offset, so in many helicopters the offset is not 90°, but only 70°–80°.


If the batsman hits the FIRST above shoulder height delivery in an over,will it be signalled one legal bouncer for the over?

Question: The second above-shoulder delivery will surely be given as a no-ball in an ODI, it doesn't matter whether it is hit or not. But if the first bouncer in an over is above shoulder height and the batsman ends up hitting it... will it be called a the one legal bouncer for the over? Because in ICC matches we have seen that such deliveries are not called as a legal bouncer for the over...but just an ordinary delivery.
Answer: It's probably worth starting by noting that your understanding of the regulations is incorrect: bowlers are allowed two fast short-pitched deliveries per over in a One Day International. Quoting from the current regulations, section 42.4.1:

Law 42.6 (a) shall be replaced by the following:
a) A bowler shall be limited to two fast short-pitched deliveries per over.

(my emphasis). Perhaps you are getting confused with Twenty20 internationals where the limit is one bouncer per over?
In any case, further reading of section 42.4.1 also gives the definition of a fast short-pitched delivery:

b) A fast short-pitched delivery is defined as a ball which passes or would have passed above the shoulder height of the striker standing upright at the
popping crease.

(again, my emphasis). This makes it clear that it doesn't matter if the batsman hits the ball or not - if the ball would have passed above shoulder height, it counts as one of the bouncers for the over. Exactly the same language exists in the Twenty20 regulations, for what it's worth.