text:
Incompleteness in the natural world

Gödel Incompleteness Theorem (Photo credit: janoma.cl)

A post inspired by Godel, Escher, Bach, Complexity: A Guided Tour, an article in this week’s New Scientist about the clash between general relativity and quantum mechanics and personal humiliation.

The everyday incompleteness: This is the personal humiliation bit. For the first time ever I went on a “Parkrun” today – the 5km Finsbury Park run, but I dropped out after 2.5km 2km – at the top of a hill and about 250 metres from my front door – I simply thought this is meant to be a leisure activity and I am not enjoying it one little bit. I can offer some excuses – it was really the first time ever I had run outdoors and so it was a bit silly to try a semi-competitive environment for that, I had not warmed up properly and so the first 500 metres were about simply getting breathing and limbs in co-ordination - mais qui s’excuse, s’accuse.

But the sense of incompleteness I want to write about here is not that everyday incompleteness, but a more fundamental one – our inability to fully describe the universe, or rather, a necessary fuzziness in our description.

Let’s begin with three great mathematical or scientific discoveries:

The diagonalisation method and the “incompleteness” of the real numbers: In 1891 Georg Cantor published one of the most beautiful, important and accessible arguments in number theory – through his diagonalisation argument, that proved that the infinity of the real numbers was qualitatively different from and greater than the infinity of the counting numbers.

The infinity of the counting numbers is just what it sounds like – start at one and keep going and you go on infinitely. This is the smallest infinity – called aleph null ($\aleph_0$).

Real numbers include the irrationals – those which cannot be expressed as fractions of counting numbers (Pythagoras shocked himself by discovering that $\sqrt 2$ was such a number). So the reals are all the numbers along a counting line – every single infinitesimal point along that line.

Few would disagree that there are, say, an infinite number of points between 0 and 1 on such a line. But Cantor showed that the number was uncountably infinite – i.e., we cannot just start counting from the first point and keep going. Here’s a brief proof…

Imagine we start to list all the points between 0 and 1 (in binary) – and we number each point, so…

1 is 0.00000000…..
2 is 0.100000000…..
3 is 0.010000000……
4 is 0.0010000000….
n is 0.{n – 2 0s}1{000……}

You can see this can go on for an infinitely countable number of times….

and so on. Now we decide to ‘flip’ the o or 1 at the index number, so we get:

1 is 0.1000000….
2 is 0.1100000….
3 is 0.0110000….
4 is 0.00110000….

And so on. But although we have already used up all the counting numbers we are now generating new numbers which we have not been able to count – this means we have more than $\aleph_0$ numbers in the reals, surely? But you argue, let’s just interleave these new numbers into our list like so….

1 is 0.0000000….
2 is 0.1000000…..
3 is 0.0100000….
4 is 0.1100000….
5 is 0.0010000….
6 is 0.0110000….

And so on. This is just another countably infinite set you argue. But, Cantor responds, do the ‘diagonalisation’ trick again and you get…

1 is 0.100000…..
2 is 0.110000….
3 is 0.0110000….
4 is 0.1101000…
5 is 0.00101000…
6 is 0.0110010….

And again we have new numbers, busting the countability of the set. And the point is this: no matter how many times you add the new numbers produced by diagonalisation into your counting list, diagonalisation will produce numbers you have not yet accounted for. From set theory you can show that while the counting numbers are of order (analogous to size) $\aleph_0$, the reals are of order $2^{\aleph_0}$, a far far bigger number – literally an uncountably bigger number.

Gödel’s Incompleteness Theorems: These are not amenable to a blog post length demonstration, but amount to this – we can state mathematical statements we know to be true but we cannot design a complete proof system that incorporates them – or we can state mathematical truths but we cannot build a self-contained system that proves they are true. The analogy with diagonalisation is that we know how to write out any real number between 0 and 1, but we cannot design a system (such as a computer program) that will write them all out – we have to keep ‘breaking’ the system by diagonalising it to find the missing numbers our rules will not generate for us. Gödel’s demonstration of this in 1931 was profoundly shocking to mathematicians as it appeared to many of them to completely undermine the very purpose of maths.

Turing’s Halting Problem: Very closely related to both Gödel’s incompleteness theorems and Cantor’s diagonalisation proof is Alan Turing’s formulation of the ‘halting problem’. Turing proposed a basic model of a computer – what we now refer to as a Turing machine – as an infinite paper tape and a reader (of the tape) and writer (to the tape). The tape’s contents can be interpreted as instructions to move, to write to the tape or to change the machine’s internal state (and that state can determine how the instructions are interpreted).

Now such a machine can easily be made of go into an infinite loop e.g.,:

• The machine begins in the ‘start’ state and reads the tape.  If it reads a 0 or 1 it moves to the right and changes its state to ‘even’.
• If the machine is in the state ‘even’ it reads the tape. If it reads a 0 or 1 it moves to the left and changes its state to ‘start’

You can see that if the tape is marked with two 0s or two 1s or any combination of 0 or 1 in the first two places the machine will loop for ever.

The halting problem is this – can we design a Turing machine that will tell us if a given machine and its instructions will fall into an infinite loop? Turing proved  we cannot without having to discuss any particular methodology … here’s my attempt to recreate his proof:

We can model any other Turing machine though a set of instructions on the tape, so if we have machine $T$ we can have have it model machine $M$ with instructions $I$: i.e., $T(M, I)$

Let us say $T$ can tell whether $M$ will halt or loop forever with instructions $I$ – we don’t need to understand how it does it, just suppose that it does. So if $(M, I)$ will halt $T$ writes ‘yes’, otherwise it writes ‘no’.

Now let us design another machine $T^\prime$ that takes $T(M,I)$ its input but here $T^\prime$ loops forever if $T$ writes ‘yes’ and halts if $T$ writes ‘no’.

Then we have:

$M(I)$ halts or loops – $T(M, I)$ halts – $T^\prime$ loops forever.

But what if we feed $T^\prime$ the input of $T^\prime(T(M, I)$?

$M(I)$ halts or loops – $T(M, I)$ halts – $T^\prime(T(M,I))$ loops forever – $T^\prime(T^\prime(T(M,I)))$ – ??

Because if the second $T^\prime(T^\prime(T(M,I)))$ halted then that would imply that the first had halted – but it is meant to loop forever, and so on…

As with Gödel we have reached a contradiction and so we cannot go further and must conclude that we cannot build a Turing machine (computer) that can solve the halting problem.

Quantum mechanics: The classic, Copenhagen, formulation of quantum mechanics states that the uncertainty of the theory collapses when we observe the world, but the “quantum worlds” theory suggests that actually the various outcomes do take place and we are just experiencing one of them at any given time. The experimental backup for the many worlds theory comes from quantum ‘double-slit’ experiments which suggest particles leave traces of their multiple states in every ‘world’.

What intrigues me: What if our limiting theories – the halting problem, Gödel’s incompleteness theorem, the uncountable infinite, were actually the equivalents of the Copenhagen formulation and, in fact, maths was also a “many world” domain where the incompleteness of the theories was actually the deeper reality – in other words the Turing machine can both loop forever and halt? This is probably, almost certainly, a very naïve analogy between the different theories but, lying in the bath and contemplating my humiliation via incompleteness this morning, it struck me as worth exploring at least.

Schrödinger’s cat: for real

Quantum Mechanics is, along with General Relativity, the foundation stone of modern physics and few explanations of its importance are more famous than the “Schrödinger’s cat” thought experiment.

This seeks to explain the way “uncertainty” operates at the heart of the theory. Imagine a cat in a box with a poison gas capsule. The capsule is set off if a radioactive decay takes place. But radioactivity is governed by quantum mechanics – we can posit statistical theories about how likely the radioactive decay is to take place but we cannot be certain – unless we observe. Therefore the best way we can state of the physical state of the cat – so long as it remains unobserved – is to say it is both alive and dead.

Now physicists still argue about what happens next – the act of observing the cat. In the classical, or Copenhagen, view of quantum mechanics the “wave equation collapses” and observing forces the cat into a dead or alive state. In increasingly influential “many worlds” interpretations anything that can happen does and an infinite number of yous sees an infinite number of dead or alive cats. But that particular mind bender is not what we are about here. (NB we should also note that in the real world the cat is “observed” almost instantaneously by the molecules in the box – this is a mind experiment not a real one, except… well read on for that).

The idea of the cat being alive and dead at once is what is known as “quantum superposition” – in other words both states exist at once, with the prevalence of one state over another being determined by statistics and nothing else.

Quantum superposition is very real and detectible. You may have heard of the famous interferometer experiments where a single particle is sent through some sort of diffraction grating and yet the pattern detected is one of interference – as though the particle interfered with itself – in fact this indicates that superposed states exist.

In fact the quantum theories suggest that superposition should apply not just to single particles but to everything and every collection of things in the universe. In other words cats could and should be alive and dead at the same time. If we can find a sufficiently large object where superimposition does not work then we would actually have to rethink the quantum theories and equations which have stood us in such good stead (for instance making the computer you are reading this on possible).

And Stefan Nimmrichter of the Vienna Centre for Quantum Science Technology and Klaus Hornberger of the University of Duisberg-Essen have proposed we use this measurement – how far up the scale of superposition we have got as a way of determining just how successful quantum mechanics’s laws are (you can read their paper here).

They propose a logarithmic scale (see graph) based on the size of the object showing superposition – so the advance from the early 60s score of about 5 to today’s of about 12 might mean we can be one million times more confident in quantum theory’s universal application. (A SQUID is a very sensitive magnetometer which relies on superconductivity.)

And they say that having a 4kg ‘house cat’ be superposed in two states 10cm apart (which might be taken for a good example of lying dead versus prowling around) would require a score of about 57 – in other words about $10^{45}$ more experimental power than currently available.

That probably means no one reading this is ever likely to see a successful demonstration that Schrödinger’s cat is rather more than a thought experiment, but it does give us a target to aim at!

Time’s arrow

English: Lee Smolin at Harvard University (Photo credit: Wikipedia)

The forward march of time is possibly the most basic and shared human experience. Whatever else may happen in our lives none of us can make time run backwards  (the title of this post recalls Martin Amis‘s brilliant novel premised on this idea – time running backwards – if you’ve read it you will understand why we are never likely to see it filmed, as 90 minutes of backwards time would be just too much to take.)

Yet, as Lee Smolin points out in this week’s New Scientist, our most fundamental theories of physicsquantum mechanics and general relativity – are time free: they work just as well if time runs the other way round. Physicists square this circle by insisting on only time-forward solutions and by imposing special conditions on our universe. We have even invented a physical category – which has no material existence per se – called entropy and demanded that it always increase.

The accepted physics leaves us in the difficult position of believing that “the future” is not the future at all – it exists and has always existed but we are barred from getting there “ahead of time”. It’s a deep contradiction, though whether this is a flaw in the theories or in human comprehension is what the debate (such as it exists, those who challenge QM and GR are very much in the minority) is all about.

In Smolin’s view (or perhaps my interpretation of it) all of this violates the “Copernican principle” – that we observers are nothing special – that has guided much of physics’s advances of the last five centuries. So what if it is actually telling us that our theories are wrong and like Newtonian gravity is to general relativity, they are merely approximations?

Smolin’s argument is just this. He says we should base our theories on the fundamental observation that time flows in only one direction and so find deeper, truer theories based on unidirectional time.

One possible way the Higgs boson might be produced at the Large Hadron Collider. Similar images at: http://atlas.web.cern.ch/Atlas/GROUPS/PHYSICS/Conferences/2003/aspen-03_dam.ppt (Photo credit: Wikipedia)

The Scientific American reports that the mass of the Higgs Boson indicates that our Universe is merely meta-stable and that, via quantum tunnelling it is possible that our universe could transition to a different, lower energy state: in other words the universe (as we know it) would end.

The half-life of our current meta-stable state is reckoned to be many, many billions of years and so, we are assured, the changes of this actually happening to us in any given time are essentially zero.

But surely, if we accept the “many worldsinterpretation of quantum mechanics, this means that our current universe has already decayed (and is, indeed, decaying all the time). We just hope and believe (based on the evidence) that we happen to live in a typical one of those many worlds and so the chances of us seeing our universe decay are negligible. But what if that were wrong?

Patenting reality

(I was about to post something about this when I noticed the Stephen Fry nomination of Turing’s Universal Machine as a great British “innovation” and decided to write about that first … but the two dovetail as I hope you can see.)

Patent (Photo credit: brunosan)

I was alerted to this by an article in the latest edition of the New Scientist (subscription link) -on whether scientific discoveries should be patentable. The New Scientist piece by Stephen Ornes argues strongly and persuasively that the maths at the heart of software should be protected from patents. But having now read the original article Ornes is replying to, I think he has missed the full and horrific scale of what is being proposed by David Edwards, a retired associate professor of maths for the University of Georgia at Athens.

Of course I am not suggesting that Edwards himself is evil, but his proposal certainly is: because he writes, in the current issue of the  Notices of the American Mathematical Society (“Platonism is the Law of the Land”) that not just mathematical discoveries should be patentable but, in fact, all scientific discoveries should be: indeed he explicitly cites general relativity as an idea that could have been covered by a patent.

Edwards is direct in stating his aim:

Up until recently, the economic consequences of these restrictions in intellectual property rights have probably been quite slight. Similarly, the economic consequences of allowing patents for new inventions were also probably quite slight up to about 1800. Until then, patents were mainly import franchises. After 1800 the economic consequences of allowing patents for new inventions became immense as our society moved from a predominately agricultural stage into a predominately industrial stage. Since the end of World War II,our society has been moving into an information stage, and it is becoming more and more important to have property rights appropriate to this stage. We believe that this would best be accomplished by Congress amending the patent laws to allow anything not previously known to man to be patented.

Part of me almost wants this idea to be enacted, because like the failure of prohibition of alcohol it would teach an unforgettable lesson. But as someone who cares about science and the good that science could do for humanity it is deeply chilling.
For instance, it is generally accepted that there is some flaw in our theories of gravity (general relativity) and quantum mechanics in that they do not sit happily beside one another. Making them work together is a great task for physicists. And if we do it – if we find some new theory that links these two children of the 20th century – perhaps it will be as technologically important as it will be scientifically significant (after all, quantum mechanics gave us the transistor and general relativity the global positioning system). But if that theory was locked inside some sort of corporate prison for twenty or twenty-five years it could be that the technological breakthroughs would be delayed just as long.

The nine billion names of God

English: A GIF animation about the summary of quantum mechanics. Schrödinger equation, the potential of a “particle in a box”, uncertainty principle and double slit experiment. (Photo credit: Wikipedia)

If you are an easily offended religious fundamentalist you should probably stop reading this now.

The nine billion names of God” is a famous science fiction short story by Arthur C. Clarke. In essence the plot is that some researchers complete a piece of work and suddenly notice that the world is being switched off.

A piece of whimsy, obviously. But what if it were something that could really happen (I am now risking a listing under “questions to which the answer is no” by John Rentoul)? If your scientific experiment reached a conclusion would you just let it run on, or switch it off (or maybe wait till your paper was accepted and then switch it off!)

The issue here is the question of whether or not the universe, as we see it, is in fact all just a gigantic computer simulation. As I have written before, if we accept that computing power will continue to grow without limit we are almost bound to accept it is much more likely we are inside a simulated than a real universe. Of course, if the universe was confirmed as a simulation it would make no physical difference to us (though I suspect the psychological blow to humanity would be profound), so long as nobody turned the simulation off.

Testing whether it is true that the universe is simulated requires finding a fundamental minimal size beyond which we cannot further explore the universe: this is because computing a simulation relies on the fundamental digital nature of a computer – you cannot get below one bit, however you have scaled the bits. Now, chance, God, the simulators (take your pick) have made this quite difficult via the Heisenberg Uncertainty Principle:

$\sigma_x\sigma_p \geq \frac{\hbar}{2}$

Where $\sigma_x$ is the uncertainty in a particle’s position, $\sigma_p$ uncertainty in momentum and $\hbar$ a very small number – $1.055$ x $10^{-34}$ Joule seconds. In most situations the very smallness of $\hbar$ means the uncertainty principle is of no concern but once we start to reduce $\sigma_x$ (ie look at extremely small parts of space) then $\sigma_p$ starts to soar and the amount of energy needed to conduct experiments also flies through the roof.

But nature also gives us extreme energies for free in the form of cosmic rays and these could hold the clue as to whether the universe is grainy (hence a simulation) or smooth (at least at currently detectable sizes).

Footnote: the fundamental weakness in the argument seems to me to be the fact that computing is increasingly showing that an unlimited increase in computing power is unlikely. But if you want to know more about this I really do recommend Brian Greene’s The Hidden Reality.

A question for a cosmologist about brane death

Image via Wikipedia

The “string theory revolution” began in 1984 and I graduated with my astrophysics degree in 1987, perhaps unsurprisingly, having been taught nothing about it at all.

But now, reading The Hidden Reality: Parallel Universes and the Deep Laws of the Cosmos, (a good book) I discover that we may all be living on a brane – a three dimensional slab of reality “floating” inside ten dimensional space. And indeed there may be many of these branes perhaps just milimetres away from all of us, each of which might appear to its inhabitants (if its physical laws allow for any inhabitants, of course), as a fully dressed universe in its own right.

Now, so the theory goes, photons and indeed all particles of the electroweak or grand unified force (assuming it exists) cannot move between the branes, but gravitons, the theoretical (and undetected so far) quantum messengers of the gravitational force can. Indeed this ability of gravitons to stray into other dimensions is what is believed to make the gravitational force seem so weak to us.

But what if a highly massive object in another brane were to pass close by us. Such an object could have a very strong gravitational field that we would feel in this universe/brane and which could have drastic effects, perhaps putting us all at risk of “brane death”. Couldn’t it?

Well, I suspect I have misunderstood the mathematics of this. The fact we don’t see galaxies ripped to pieces by the super massive black holes at the centres of galaxies in other branes is rather more likely to lead me to believe that I have missed a point about how this works than to conclude the theory is that easily disproved.

Perhaps a reader might enlighten me?

How random is random?

Image via Wikipedia

What is a truly random event?

We are used to the idea that flipping a coin is likely to generate a random sequence of heads or tails but, of course, it is perfectly possible to predict, using the rules of classical mechanics, the outcome of a series of coin tosses if we know the values of a not very long list of parameters. In other words, the outcome of flipping a coin is entirely deterministic, it is just that humans are unlikely to be able to faithfully replicate the same flick over and over again.

Quantum events – such as the $\alpha$-particle decay are, as far as our knowledge today tells us, truly random – in the sense they have a probability of occurring in a given time period but we have no way of knowing if a given nucleus will decay at any given time.

This is really a very profound finding – it implies that two physical objects, in this case atomic nuclei, behave in completely different ways despite all the physical parameters describing their existence being the same. That sounds like the exact opposite of everything that science has taught us about the nature of the universe.

Thinking about this, one can quickly come to agree with Einstein that it must be based on a flawed understanding of physical reality as “God does not play dice”. But it is also the best explanation we have for that physical reality.

But why would a nucleus decay in one time period and not another? Can this really be an event without specific cause? Just a ‘randomly‘ chosen moment? But chosen by what?

Of course, some will say by “God” but that really is metaphysics – a completely untestable and unverifiable proposition that merely kicks the physical puzzle in a domain beyond physics.


text:
# Calling the NAG C Library Mark 23 from C#

The information here is applicable to the DLLs supplied with CLW3223DAL.

Please note that we recommend using the NAG Library for .NET from within C#. If this does not contain the NAG routines that you require, the NAG Fortran Library for Win32 Applications or the NAG C Library (as described here) may be used.

The NAG C Library uses the following data types as parameters. These are:

1. scalars of type double, int and complex. These are passed either by value or by reference (as pointers to the particular type).
2. enum types.
3. arrays of type double, int and complex.
4. a large number of structures, generally passed as pointers.
5. in a few instances arrays (type double**) that are allocated within NAG routines and have to be freed by users. Also, in one instance, an array (type char***) of strings which is allocated internally.
6. function parameters, also known as call-backs, that are pointers to functions with particular signatures.

As a first step towards making the C Library functions available to the .NET environment, an assembly of imports is needed. This contains:

1. signatures of all the functions we want to call from the NAG C Library.
2. structures with their attributes specified both in terms of their layout and their properties when passed as parameters(in, out or both). This is necessary as structures are a value type in .NET while in C they can be reference types also. Also pointers are more or less a taboo in C#. We avoid the explicit use of pointers by using instead the C# IntPtr type which is in fact equivalent to void * in C. The IntPtr fields can be handled later using marshalling methods.
3. signatures of all call-back types.
4. enum types derived from the C header file, nag_types.h.

The file clcsdnet.cs contains signatures of NAG C Library routines and call-back functions. It also contains layouts of structures used in the library, e.g. the NagError structure which is used by almost all the routines in the library. One of the most useful areas of the library is optimisation. We have provided the layout for the Nag_E04_Opt structure along with the signatures for nag_opt_nlp (e04ucc) and the call-backs, e04ucc_objfun_DELEGATE and e04ucc_confun_DELEGATE, which are required by this routine. enum types have also been provided.

We have also provided basic C# classes for illustrative purposes. These can be found in the files listed below. For example a sample C# class calling e04ucc can be found in e04ucce.cs. Each of the illustrative classes has a Main method exercising the NAG C example as shown in the C Library manual.

These examples may be compiled from the command line (e.g. from a Visual Studio Command Prompt) in the following manner:

csc /unsafe d01sjce.cs clcsdnet.cs

Note that because calling NAG C Library functions involves the use of pointers (see above), the "unsafe" compiler option must be specified.

The function declarations in clcsdnet.cs are based on the stand-alone version of the NAG C Library DLL (CLW3223DA_nag.dll); to specify the version of the DLL which uses the MKL BLAS/LAPACK instead (CLW3223DA_mkl.dll), replace CLW3223DA_nag.dll by CLW3223DA_mkl.dll in the DllImport attribute.

Remember also that to be able to run the program after you have compiled it, the NAG C Library DLL will need to appear somewhere in your current path. For example, if the DLLs are in C:\Program Files\NAG\CL23\clw3223dal\bin, then your PATH environment variable must contain this folder. If you are using the MKL-based version of the NAG C Library (CLW3223DA_mkl.dll), then the folder containing the MKL DLLs should also be on your path, but should appear later in the path than the bin folder for the NAG C Library DLLs, e.g.

C:\Program Files\NAG\CL23\clw3223dal\bin;C:\Program Files\NAG\CL23\clw3223dal\MKL_ia32_10.3\bin;<rest of path>

Tested with Visual Studio 2005 (Visual C# 2005 Compiler version 8.0), Visual Studio 2008 (Visual C# 2008 Compiler version 3.5) and Visual Studio 2010 (Visual C# 2010 Compiler version 4.0).

format: plain


text:
## Algebra 1: Common Core (15th Edition)

Recall the equation: $a^{-n}= \frac{1}{a^{n}}$. Thus, we simplify this expression and solve: $a^{3}b^{-1}=\frac{a^{3}}{b}$ We now plug in 2 for a and -4 for b to obtain: $\frac{2^{3}}{-4}=8/-4=-2$


text:
# Derivative of cos(4x)cos(2x)

## Derivative of cos(4x)cos(2x). Simple step by step solution, to learn. Simple, and easy to understand, so dont hesitate to use it as a solution of your homework.

If it's not what You are looking for type in the derivative calculator your own function and let us solve it.

## Derivative of cos(4x)cos(2x):

(cos(4*x)*cos(2*x))'(cos(4*x))'*cos(2*x)+cos(4*x)*(cos(2*x))'cos(4*x)*(cos(2*x))'-sin(4*x)*(4*x)'*cos(2*x)cos(4*x)*(cos(2*x))'-sin(4*x)*((4)'*x+4*(x)')*cos(2*x)cos(4*x)*(cos(2*x))'-sin(4*x)*(0*x+4*(x)')*cos(2*x)cos(4*x)*(cos(2*x))'-sin(4*x)*(0*x+4*1)*cos(2*x)4*(-sin(4*x))*cos(2*x)+cos(4*x)*(cos(2*x))'cos(4*x)*(cos(2*x))'-4*sin(4*x)*cos(2*x)cos(4*x)*-sin(2*x)*(2*x)'-4*sin(4*x)*cos(2*x)cos(4*x)*-sin(2*x)*((2)'*x+2*(x)')-4*sin(4*x)*cos(2*x)cos(4*x)*-sin(2*x)*(0*x+2*(x)')-4*sin(4*x)*cos(2*x)cos(4*x)*-sin(2*x)*(0*x+2*1)-4*sin(4*x)*cos(2*x)cos(4*x)*2*(-sin(2*x))-4*sin(4*x)*cos(2*x)cos(4*x)*-2*sin(2*x)-4*sin(4*x)*cos(2*x)-4*sin(4*x)*cos(2*x)-(2*cos(4*x)*sin(2*x))`
The calculation above is a derivative of the function f (x)

## Related pages

2cosxcos 2picommon multiples of 9fraction percent to fraction calculatorcscxcotxx squared 4x84 as a product of prime factorsfactor 3x 2-1prime factors of 198derivative sin4x2y 3x 4factor tree for 72what is the prime factorization of 525solve equations calculator with stepswrite prime factorizationsolve this quadratic equation x2 5x 3 0lcm with variables calculatorgraph of y 2x 1subtracting fractions calculator that shows worktgx ctgxcos 6xroman numerals 1973common multiples of 15180-138solve quadratic calculatorsolve 5x 25fraction least to greatest calculatorprime factors of 720factor the expression 6x 2 5x 175x4what is the prime factorization of 825sinx sin3x cosx cos3xformula for sin 3xwhat is value of log0how much is 20000 pesosroman numeral for 78what is 375 as a decimal6sec722.520.1875 as fractionsolve tanx 1what is 60 percent as a decimalprime factorization for 240factor 25x 2-16prime factorization of 225x6300solving decimal equations calculatorsimplify the square root of 121133-50graph of y tan xln x 2 derivativewhat is 0.625 as a fraction in simplest formderivative of cos3x739.2prime factorization 240convert percent to a decimal calculatorprime factorization of 440sqr3sec 5x2x 3y 12 solve for yderivative of 3 cos x4999 in roman numeralsax3 bx2 cx d 0differentiate cos x 29y-1 y-25the prime factorization of 200what is the prime factorization for 98antiderivative of cos 3xprime factorization 352002 in roman numeralsexpression calculator with stepswhat is 3y squaredthe least common denominator calculator96 roman numeralprime factorization of 5041n231


text:
Integral UConn Intermediate
2018

Problem - 4535

Compute $$I=\int \frac{x\cos{x}-\sin{x}}{x^2 + \sin^2{x}} dx$$

The solution for this problem is available for $0.99. You can also purchase a pass for all available solutions for$99.


text:
# Really simple system of equations

1. Oct 2, 2008

### yoleven

1. The problem statement, all variables and given/known data
1. 2500-Tac cos $$\Phi=0$$
2. Tac sin$$\Phi-500=0$$

2. Relevant equations

3. The attempt at a solution
I have 2 equations. I need to solve for $$\Phi$$ to get Tac. I have got to the point of :
Tac=500/sin$$\Phi$$
2500-500/sin$$\Phi*(cos\Phi)=0$$

after this i cant go any further

I am looking at the solution of 11.31°. But I need to solve to get it.
1. The problem statement, all variables and given/known data

2. Relevant equations

3. The attempt at a solution

2. Oct 3, 2008

### tiny-tim

Hi yoleven!

(have a phi: φ )

Your second line should be 2500 - 500cosφ/sinφ = 0.


text:
SEARCH HOME
 Math Central Quandaries & Queries
 Question from Greg, a parent: If a company had a net loss in 2005 of $11,234 and net income of$3231 in 2006, what is the percentage annual growth in income between the two years?

The answer is about -129% but this is very likely to be misunderstood.

We do the same calculation as if we had more usual numbers, say a gain of $100 followed by a gain of$110. We normally use the earlier date as the "baseline"; so the answer is ($110-$100)/$100 = 1/10 converted to a percentage, or 10%. In your question the answer is ($3231 - (-$11234))/(-$11234), or about -1.29 converted to a percentage.

In general, percentage changes are fairly intuitive when the ratio between the two numbers is fairly close to 1 (not -1 !) For situations deviating from this it is better not to use percentage notation.

-RD

Math Central is supported by the University of Regina and The Pacific Institute for the Mathematical Sciences.


text:
## Shifted Randomized Singular Value Decomposition

Sep 25, 2019 Blind Submission readers: everyone Show Bibtex
• Keywords: SVD, PCA, Randomized Algorithms
• TL;DR: A randomized algorithm to estimate the SVD of a shifted data matrix without explicitly constructing the matrix in the memory.
• Abstract: We extend the randomized singular value decomposition (SVD) algorithm (Halko et al., 2011) to estimate the SVD of a shifted data matrix without explicitly constructing the matrix in the memory. With no loss in the accuracy of the original algorithm, the extended algorithm provides for a more efficient way of matrix factorization. The algorithm facilitates the low-rank approximation and principal component analysis (PCA) of off-center data matrices. When applied to different types of data matrices, our experimental results confirm the advantages of the extensions made to the original algorithm.


text:
# Changing the Look of Elements of the Graph

## Lines

In a line chart, you may distinguish different lines by colour or pattern. You may also wish to change the thickness of the line.

### Line pattern

The pattern of the line may be changed via option lpattern, such as in

line sales1 sales2 year, lpattern(solid dash)

with the first line being drawn as a solid line and the second as a dashed line. Other pattern styles are dot, dash_dot, shortdash, shortdash_dot, longdash, longdash_dot  or blank. The last option is just in case you wish to draw an invisible line for some reason or other. You may also create your own line pattern with the help of a "formula", such as in

line sales1 sales2 year, lpattern("_-." "__#")

You may combine elements _ (underscore = long dash), - (hyphen = medium dash), . (dot = short dash) and # (= small amount of blank space). "l" (small l) will draw a solid line.

### Line width

The width, or thickness, of the line may be changed via option lwidth, such as in

line sales1 sales2 year, lwidth(medium)

Apart from some keywords that are available (such as medthin, vthin [for very thin], or thick [which will be too thick in most cases]), you can use numbers, as in lwidth(*1.2), which will multiply the default width by a factor of 1.2, or in lwidth(1.2), with the value in parentheses difficult to interpret in substantial terms (it refers to a percentage of the width or height of the graph, whichever is smaller -- but to translate this into line width is not easy).

## Filling colours

Often, you may add an option referring to the colours used to fill bars or boxes.

### Histograms

With histograms, try the fcolor() option. You may refer either to a colour, such as in

histogram age, fcolor(green)

or a degree of whiteness, as in

histogram age, fcolor(gs16)

Find more about filling colours by typing help colorstyle.

### Bar charts

graph bar (percent), over(education) bar(1, bfcolor(white) blcolor(black))

will yield white, i.e. blank, bars that are delineated by black lines. That is, bfcolor refers to the "filling" of the bar, whereas blcolor stands for "bar line".

Note, however, that the look of the bar can be modified in other ways as well, and these interact with bfcolor and blcolor. These modifications come from the intens[ity] and lintens[ity] options (for intensity [of color] and line intensity). These options refer to the overall graph, i.e., they are not associated with a specific bar (bar(1, ...) but stand alone. intens(0) will reduce the intensity of the filling colour to zero (i.e., to white), whereas intens(255) will yield the full flavour. intens(*#) will change the intensity compared to the default value. intens(*.5) will yield half the intensity and intens(*2) will double it.

The same holds for lintens[ity], but note that whatever you do with this option, it will be overriden by a blcolor option associated with a bar, as described in the example above.

Finally, the thickness of the line that outlines the bar can be influenced with lwidth(), which is used as a sup-option to the bar() option, just like bfcolor or blcolor. For a description, see the first section (on line charts) of this entry.

### Box plots

As far as box plots are concerned, I'm not certain whether (and if so, how) you may change the colour of the box. However, the intensity() option allows you to regulate the amount of colour used for the box. intensity(0) will deliver a white box, with a maximum of 100 for the highest intensity.

## Marker symbols

### The symbols

Scatter plots, "connected" line plots and probably a number of others will depict data points by symbols such a dots (circles), squares, triangles etc. You may specify the desired symbol by way of adding an option to the respective graph command, as in

twoway connected unempl year, msymbol(O)

So, what is msymbol(O) standing for? Well, perhaps you have guessed that the O (note that this is letter O, not number zero!) represents a circle, and yes, you're right. But there is a bit more to it. So let's get briefly into systematics.

(1) There are six symbols: Circles, diamands, triangles, squares, plusses (i.e., +), and x.

(2) With the exception of the plus sign, for each symbol there is a large and a small version.

(3) The geometrical symbols (i.e., all with the exception of the plus sign and the letter X/x) may be either solid (i.e., filled with colour) or hollow.

Now, in the example above, I used the capital (or "large") letter O, which means that I requested a large circle. So, for a large diamond/triangle/square/X, use capital letters D, T, S, and X, respectively, whereas for the small versions, use small letters. And what about the solid or the hollow version? Well, by default the symbols are solid, and therefore nothing is required to obtain a solid symbol. In contrast, if you prefer a hollow symbol, add letter "h". So, a large hollow circle will be obtained via msymbol(Oh).

For completeness's sake, let me mention that instead of the abbbreviations outlined in the preceding, you may also use the full names. So, instead of msymbol(O) I could have used msymbol(circle) (with a small letter at the start). To obtain a small circle, write msymbol(smcircle), and to make it hollow, add msymbol(smcircle_hollow). Note that, whereas the full names for the large symbols typically start with a small letter, this is not the case for a large X; here the "full name" likewise is a large, i.e., capital, X, whereas the full name for the small x is smx.

### Defining the look of the symbol

You can determine the look of the marker symbols in very much detail. Here, I will mention only the basic options:

 msize() the size of the marker symbol (see text below table) mcolor() colour of the marker, both inside and out (i.e., the outline) mlcolor() colour of the outline mfcolor() colour inside the symbol (the "filling" color) mlwidth() the thickness of the outline mlstyle() the overall style of the outline (run help linestyle) mstyle() the overall style of the marker (run help markerstyle)

A note on marker size: This can be indicated, among other things, either in relative (msize(*2) will make it twice as large as by default) or in absolute terms (as in msize(tiny)). For more information, run help markersizestyle.

### General marker styles

There are some general marker styles that define several elements of the marker symbols at the same time. They may be used as in

scatter unempl dgp, mstyle (p4)

There are fifteen differents styles, p1 to p15. Note that their look also depends on the overall scheme you may be using. Find out more with help markerstyle.

A horizontal line at a given value of y, say, 1.5, may be added with option

yline(1.5)

Several numbers may be enclosed within the parentheses, producing several lines.

A vertical line at a given value of x, say, 3, not suprisingly is added with option

xline(3)

Again, several values may be enclosed within the parentheses, producing several lines.

© W. Ludwig-Mayerhofer, Stata Guide | Last update: 28 Dec 2018


text:
# Approximating a sphere with a regular tetrahedron

I'm studying computer graphics independently through a textbook and I've come across this (seemingly challenging) problem in chapter 1. It is stated as follows:

A different method of approximating a sphere starts with a regular tetrahedron, which is constructed from four triangles. Find its vertices, assuming that it is centered at the origin and has one vertex on the y-axis. Derive an algorithm for obtaining increasingly closer approximations to a unit sphere based on subdividing the faces of the tetrahedron.

I struggled with this problem for a while before looking up the answer. I couldn't get enough of an idea to even get started with this kind of task. After a few hours I looked up the answer in the back of the book:

We derive this algorithm in chapter 6. First we can form the tetrahedron by finding four equally spaced points on a unit sphere centered at the origin. One approach is to start with one point on the z-axis $(0,0,1)$. We can then place the other three points in a plane of constant z. One of these three points can be places on the y axis. To satisfy the requirement that the points be equidistant. The point must be $(0, 2\sqrt{2/3}, -1/3)$. The other two points can be found by symmetry to be at $(-\sqrt{6/3}, -\sqrt{2/3}, -1/3)$ and $(\sqrt{6/3}, -\sqrt{2/3}, -1/3)$.

My question(s) from this are:

1. What gave him the idea to inscribe the tetrahedron in a unit sphere? I suppose because we are trying to approximate one it makes sense to use it as a guide.

2. How does he choose the points and derive the answer? Admittedly my geometry is a little rusty, but I felt completely defeated by this question.

3. How can I properly visualize this process so I can repeat it on future questions?

• The answer looks wrong to me: point $(0,2\sqrt3, -1/3)$ is not on the y-axis. – Aretino Jun 24 '18 at 18:17
• I think the point's y coordinate you're referring to is $2\sqrt(2/3)$, right? – lolo Jun 24 '18 at 18:18
• Yes, right: $(0, 2\sqrt{2/3},-1/3)$. – Aretino Jun 24 '18 at 19:12
• It should be mentioned that the resulting triangles get smaller and also sharper. That is, one of the angles is very small. This is not a good triangulation. See this recent MSE question 2817605 "How to discretize a sphere?" for better options. – Somos Jun 24 '18 at 19:41

The question isn't so much about the maths, but the process. The tetrahedron is bounded by the sphere, and its four vertices touch the surface of the sphere.

Replace each triangular face, with three more triangular faces, with the new shared vertex on the surface of the sphere. The original three vertices remain, because they touch the sphere.

Do that again, and again until the calculation is too small to be significant.

Using a computer language, this can be done by recursion.

What gave him the idea to inscribe the tetrahedron in a unit sphere? I suppose because we are trying to approximate one it makes sense to use it as a guide.

This is the problem definition: increase the number of vertices of the polyhedron until it is almost like a sphere.

How does he choose the points and derive the answer? Admittedly my geometry is a little rusty but I felt completely defeated by this question.

He chooses a new point extended from the origin, through the centre of a face, to touch the required sphere.

How can I properly visualize this process so I can repeat it on future questions?

The tetrahedron is the simplest polyhedron. The exercise is to imagine how the centre of each of its faces can be extended out to touch the sphere, replaced by three new faces.

The process continues until the polyhedron so much resembles a sphere that it is not worth continuing.

• Is there a way I can visualize this easily in say wolfram alpha or mathematica? – lolo Jun 24 '18 at 20:17
• Sorry I can't find a video showing the expansion. The nearest static imagery I can find is this – Weather Vane Jun 24 '18 at 21:01


text:
# Which sentence uses a colon correctly? the three things i like to do most are: spend time with family, ride horses, and

###### Question:

Which sentence uses a colon correctly?
the three things i like to do most are: spend time with family, ride horses, and play video games.
i need an assistant who can do the following: answer the phone, type, and schedule meetings.
the campers need to bring: sleeping bags, lanterns, and cooking utensils.

### The average of paula's two test scores must be 80 or more for her to get at least a b in the class. she got a 72 on here

The average of paula's two test scores must be 80 or more for her to get at least a b in the class. she got a 72 on here first test. what grades can she get on the second test to make at least a b in the class...

### The perimeter of a rectangular field is 324 yards. If the width of the field is 76 yards, what is its length?

The perimeter of a rectangular field is 324 yards. If the width of the field is 76 yards, what is its length?...

### Describe how an El Niño event affected the weather, food production, water supply, or human health.Use

Describe how an El Niño event affected the weather, food production, water supply, or human health. Use at least one image to illustrate the effect(s). Please don't Copy and Paste....

### Can deaf people see when they dream

Can deaf people see when they dream...

### Help pleaseesolar panels are used to gather energy to heat a swimming poolA. chemical to radiantB. mechanical to thermalC. thermal to nuclear D.

Help pleasee solar panels are used to gather energy to heat a swimming pool A. chemical to radiant B. mechanical to thermal C. thermal to nuclear D. radiant to thermal...

### What is a regressive tax? a. a tax that is higher on harmful activities b. a tax that

What is a regressive tax? a. a tax that is higher on harmful activities b. a tax that takes money from people when they die c. a tax that charges more to those with lower incomes d. a tax that charges rich people more 2b2t...

### Ihave 4 question i need with but ut will only let me post 1 at a time so can yall me

Ihave 4 question i need with but ut will only let me post 1 at a time so can yall me $Ihave 4 question i need with but ut will only let me post 1 at a time so can yall me$...

### How are ataturk and erdogan similar?

How are ataturk and erdogan similar?...

### All of the following are functions of the Urinary System, expect*O Maintaining the proper balance of water, salts, and acids in

All of the following are functions of the Urinary System, expect* O Maintaining the proper balance of water, salts, and acids in the body by filtering the blood as it flows through the kidneys. O Constantly filtering the blood to remove urea, creatinine, uric acid, and other waste materials from th...

### Why do you think dancers need strong, flexible feet and a high releve?

Why do you think dancers need strong, flexible feet and a high releve?...

### Why were some citizens against the Allen and Sedition Acts

Why were some citizens against the Allen and Sedition Acts...

### Explain how the new deal addressed the problems of the great depression.

Explain how the new deal addressed the problems of the great depression. $Explain how the new deal addressed the problems of the great depression.$...

### Help meee pleaaase!!

Help meee pleaaase!! $Helppppppp meee pleaaaseeee!!$...

PLEASE HELP PRE CALCLUS $PLEASE HELP PRE CALCLUS$...

### Judy makes 2/5 of a beaded necklace on Monday she makes 3/10 of the necklace on Tuesday she makes 1/5 of the necklace on Wednesday

Judy makes 2/5 of a beaded necklace on Monday she makes 3/10 of the necklace on Tuesday she makes 1/5 of the necklace on Wednesday what fraction of the necklace has Judy made so far...
What are the coordinates for the midpoint of segment XY?￼ A. (-0.5,-1.5) B. (-0.5,1.5) C. (0.5,-1.5) D. (0.5,1.5) $What are the coordinates for the midpoint of segment XY?￼ A. (-0.5,-1.5) B. (-0.5,1.5) C. (0.5,-1$...


text:
# Looking for a canonical (matroid polytope) subdivision of the hypersimplex

A matroid polytope is the convex hull of the indicator vectors of the bases of a matroid, and a matroid polytope subdivision (MPS) is a polyhedral subdivision of a matroid polytope whose cells are also matroid polytopes. I recently heard there is a “canonical” (non-trivial) MPS of the matroid polytope of the uniform matroid of rank $k$ on $n$ elements (a.k.a. the $n$-th hypersimplex of $k$-th order = convex hull of all indicator vectors of $k$-element subsets of $\{1,...,n\}$ in $\mathbb{R}^n)$ intro matroid polytopes of Schubert matroids (a.k.a. generalized Catalan matroids, shifted matroids).

Does anyone have a reference for this statement?

• Lattice path matroids aren't Schubert matroids; they're intersections of Schubert with opposite Schubert matroids. Apr 22, 2014 at 14:42
• You're right, I modified accordingly. Apr 22, 2014 at 15:19

The uniform matroid itself is a Schubert matroid, so the trivial subdivision where we don't subdivide at all meets this criterion.

There is no way we can use all the Schubert matroids. Let $M$ be the Schubert matroid whose bases are all $k$-element subsets of $\{ 1,2, \ldots, n \}$ except for $\{ 1,2,3,\ldots, k \}$. If we remove the polytope of $M$ from $\Delta(k,n)$, what remains is a matroid polytope which has no nontrivial matroid subdivision. Namely, it corresponds to the matroid (call it $N$) where the elements $\{ k+1, k+2, \ldots, n \}$ are all parallel to each other, and the total rank is $k$. So, if we use $M$ in our matroidal subdivision, then all that is left over is $N$.

I'm not sure how to define "canonical" in this setting, but none of the common matroid subdivisions use only Schubert matroids. What is the source of this claim?

Based on your comments below, I am pretty sure I know what you are looking for. I think you want a certain subdivision of $\Delta(k,n)$ with $\binom{n-2}{k-1}$ facets. I illustrate with an example for $(k,n) = (4,9)$: One of the $\binom{7}{3}$ facets of the subdivision will be the matroid represented by the columns of any matrix of the form $$\begin{pmatrix} 1 & 0 & 0 & 0 & \ast & \ast & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & \ast & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & \ast & \ast & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 & \ast & \ast & \ast \\ \end{pmatrix}.$$ To describe all the $\binom{7}{3}$ facets, let the path of $\ast$'s range over all possible paths from the upper left to the lower right of the $4 \times 5$ rectangle.

Let $G$ be a subset of $\{ 1, \ldots, k \} \times \{ k+1, \ldots, n \}$. Let $(e_1, e_2, \ldots, e_k)$ be the vertices of the simplex $\Delta^{k-1}$ and let $(f_{k+1}, \ldots, f_n)$ be the vertices of $\Delta^{n-k-1}$. Set $$P(G) = \mathrm{Hull} \{ (e_i, f_j) : (i,j) \in G \} \subseteq \Delta^{k-1} \times \Delta^{n-k-1}.$$ Every polyhedral subdivision of $\Delta^{k-1} \times \Delta^{n-k-1}$ is a division into pieces of the kind $P(G)$. You get simplices if and only if $G$, considered as a bipartite graph on $\{ 1, \ldots, k \} \cup \{ k+1, \ldots, n \}$, is a tree. The "staircase subdivision" of $\Delta^{k-1} \times \Delta^{n-k-1}$ corresponds to the set of $\binom{n-2}{k-1}$ paths through a $k \times (n-k)$ grid. So the above example is $G = \{ (1,5), (1,6), (2,6), (3,6), (3,7), (4,7), (4,8), (4,9) \}$.

Now, given $G$, we can also define a matroid $M(G)$ by building a $(0, 1, \ast)$ matrix as above. (This construction is called the "principal transversal matroid".) If we have a collection $G_i$ so that $(P(G_i))$ form a polyhedral subdivision of $\Delta^{k-1} \times \Delta^{n-k-1}$, then the matroid polytopes of the $M(G_i)$ are a subdivision of $\Delta(k,n)$. We discuss this construction in Section 2 of Dressians, tropical Grassmannians and their rays, although not as clearly as I wish we had.

I can say a ton more about this, but I don't want to go on forever. Let me just point out where the staircase confusion presumably came from: Schubert matroids look like $$\begin{pmatrix} 1 & 0 & 0 & 0 & \ast & \ast & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & \ast & \ast & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & \ast & \ast & \ast & 0 & 0 \\ 0 & 0 & 0 & 1 & \ast & \ast & \ast & \ast & \ast \\ \end{pmatrix}.$$ So they also are described by paths through a rectangle, but not in the same way. (And there are $\binom{n}{k}$ of them, not $\binom{n-2}{k-1}$.)

• (I forgot to exclude the trivial subdivision...) The source was a colleague of mine, who also mentioned that such MPS was analogous to the stratification of the Grassmanian of $k$-planes in $\mathbb{R}^n$. He didn't remember where he saw that statement, hence I came to MO. Apr 22, 2014 at 14:41
• Matroids loosely correspond to closed T-invariant subvarieties of the Grassmannian, unlike the Bruhat cells, which are only locally closed. I really don't see a possible analogy here. Apr 22, 2014 at 14:44
• I see. My background is in combinatorics, and I arrived at that question because I wanted to know about the MPSs of the (k,n)-hypersimplex that give a staircase triangulation of the cartesian product of a (k-1)-simplex with a (n-k-1)-simplex when looking at a vertex figure. When I spoke "staircase" and "hypersimplex", my colleague somehow came up with "Schubert matroid", which now I learn doesn't make much sense... Apr 22, 2014 at 20:31
• @CamiloSarmiento Now I think I know what you are looking for, see my edit. I can talk about matroid subdivisions basically forever; if you have some specific questions about this, let me know and I can say much more. Apr 23, 2014 at 12:50
• @DavidSpeyer Precisely! :) . So it is a mere coincidence that both the cells of the MPS you described, and the Schubert matroids, can be "indexed" by staircases (although on different grids)? Apr 23, 2014 at 13:48


text:
# Vector*Matrix

Preferred way to use vector * matrix

The vector * matrix multiplication operation has quite a reasonable cost, despite the number of calculations that need to happen.

However, optimisations such as taking advantage of knowing that `w` is 1, do not reduce the cost.

```fragColor = t * m1; // 4x4 matrix, eight cycles
{mov}
{wdf}
{sop, sop, sopmov}
{sop, sop, sopmov}
{sop, sop}
{sop, sop, sopmov}
{sop, sop, sopmov}
{sop, sop}
fragColor.xyz = t.xyz * m2; // 3x3 matrix, four cycles
{sop, sop, sopmov}
{sop, sop}
{sop, sop, sopmov}
{sop, sop}```


text:
# Principled BSDF

The Principled BSDF that combines multiple layers into a single easy to use node. It is based on the Disney principled model also known as the «PBR» shader, making it compatible with other software such as Pixar’s Renderman® and Unreal Engine®. Image textures painted or baked from software like Substance Painter® may be directly linked to the corresponding parameters in this shader.

This «Uber» shader includes multiple layers to create a wide variety of materials. The base layer is a user controlled mix between diffuse, metal, subsurface scattering and transmission. On top of that there is a specular layer, sheen layer and clearcoat layer.

Nota

The emphasis on compatibility with other software means that it interprets certain input parameters differently from older Blender nodes.

## Ingressi

Base Color

Diffuse or metal surface color.

Subsurface

Mix between diffuse and subsurface scattering. Rather than being a simple mix between Diffuse and Subsurface Scattering, it acts as a multiplier for the Subsurface Radius.

Average distance that light scatters below the surface. Higher radius gives a softer appearance, as light bleeds into shadows and through the object. The scattering distance is specified separately for the RGB channels, to render materials such as skin where red light scatters deeper. The X, Y and Z values are mapped to the R, G and B values, respectively.

Subsurface Color

Subsurface scattering base color.

Subsurface IOR Cycles Only

Index of refraction for Subsurface Scattering.

Subsurface Anisotropy Cycles Only

Controls the directionality of subsurface scattering.

Metallic

Blends between a non-metallic and metallic material model. A value of 1.0 gives a fully specular reflection tinted with the base color, without diffuse reflection or transmission. At 0.0 the material consists of a diffuse or transmissive base layer, with a specular reflection layer on top.

Specular

Amount of dielectric specular reflection. Specifies facing (along normal) reflectivity in the most common 0 - 8% range.

Suggerimento

To compute this value for a realistic material with a known index of refraction, you may use this special case of the Fresnel formula: $$specular = ((ior - 1)/(ior + 1))^2 / 0.08$$

For example:

• water: ior = 1.33, specular = 0.25

• glass: ior = 1.5, specular = 0.5

• diamond: ior = 2.417, specular = 2.15

Since materials with reflectivity above 8% do exist, the field allows values above 1.

Specular Tint

Tints the facing specular reflection using the base color, while glancing reflection remains white.

Normal dielectrics have colorless reflection, so this parameter is not technically physically correct and is provided for faking the appearance of materials with complex surface structure.

Roughness

Specifies microfacet roughness of the surface for diffuse and specular reflection.

Anisotropic Cycles Only

Amount of anisotropy for specular reflection. Higher values give elongated highlights along the tangent direction; negative values give highlights shaped perpendicular to the tangent direction.

Anisotropic Rotation Cycles Only

Rotates the direction of anisotropy, with 1.0 going full circle.

Suggerimento

Compared to the Anisotropic BSDF node, the direction of highlight elongation is rotated by 90°. Add 0.25 to the value to correct.

Sheen

Amount of soft velvet like reflection near edges, for simulating materials such as cloth.

Sheen Tint

Mix between white and using base color for sheen reflection.

Clearcoat

Extra white specular layer on top of others. This is useful for materials like car paint and the like.

Clearcoat Roughness:

Roughness of clearcoat specular.

IOR

Index of refraction for transmission.

Transmission

Mix between fully opaque surface at zero and fully glass like transmission at one.

Transmission Roughness Cycles Only

With GGX distribution controls roughness used for transmitted light.

Emission

Light emission from the surface, like the Emission shader.

Emission Strength

Strength of the emitted light. A value of 1.0 will ensure that the object in the image has the exact same color as the Emission Color, i.e. make it “shadeless”.

Alpha

Controls the transparency of the surface, with 1.0 fully opaque. Usually linked to the Alpha output of an Image Texture node.

Normale

Controls the normals of the base layers.

Clearcoat Normal

Controls the normals of the Clearcoat layer.

Tangent

Controls the tangent for the Anisotropic layer.

## Proprietà

Distribution

Microfacet distribution to use.

GGX

A method that is faster than Multiple-scattering GGX but is less physically accurate. Selecting it enables the Transmission Roughness input.

Multiple-scattering GGX

Takes multiple bounce (scattering) events between microfacets into account. This gives a more energy conserving results, which would otherwise be visible as excessive darkening.

Subsurface Method

Rendering method to simulate subsurface scattering.

Nota

Eevee does use not support the Random Walk methods.

Christensen-Burley

An approximation to physically-based volume scattering. This method is less accurate than Random Walk however, in some situations this method will resolve noise faster.

Provides accurate results for thin and curved objects. Random Walk uses true volumetric scattering inside the mesh, which means that it works best for closed meshes. Overlapping faces and holes in the mesh can cause problems.

Random Walk

Behaves similarly to Random Walk (Fixed Radius) but modulates the Subsurface Radius based on the Color, Subsurface Anisotropy, and Subsurface IOR. This method thereby attempts to retain greater surface detail and color than Random Walk (Fixed Radius).

BSDF


text:
## The beta distribution

Definition Using the mean Using ranges for the prior Informative vs. uninformative priors Mean, median, variance Highest Density Interval References Addenda Definition The Beta distribution represents a probability distribution of probabilities. It is the conjugate prior of the binomial distribution (if the prior and the posterior distribution are in the same family, the prior and posterior…

## Likelihood and Probability

The difference between probability and likelihood is central, among others, to understanding MLE. Randy Gallistel has posted a succinct treatment of this topic: The distinction between probability and likelihood is fundamentally important: Probability attaches to possible results; likelihood attaches to hypotheses [my emphasis]. Explaining this distinction is the purpose of this first column. Possible results…


text:
# Traces and commutators

The following is a true (and well-known) theorem: $$\newcommand{\Tr}{\mathop{\rm Tr}}$$

Suppose $$A$$ and $$B$$ are bounded operators on a Hilbert space, and $$AB$$ and $$BA$$ are trace class.  Then $$\Tr(AB)=\Tr(BA)$$.

This is easy to prove if one of the operators $$A,B$$ is itself of trace class, or if they both are Hilbert-Schmidt (the obvious calculation works).  In the general case it is a bit harder.  The “usual” argument proceeds via Lidskii’s trace theorem – the trace of any trace-class operator is the sum of the eigenvalues – together with the purely algebraic fact that the nonzero eigenvalues of $$AB$$ and $$BA$$ are the same (including multiplicities).  Continue reading


text:
How do you go from transit times to Earth-Sun distance?

In the early 18th century, Halley described a method to determine the value of the astronomical unit by observing a transit of Venus from multiple locations on Earth. How do you go from the transit time at two different locations to the distance between the Sun and the Earth? I found many descriptions in rather vague terms of this method, but what is the math behind it?

1 Answer

We know, precisely, the ratio between the Earth-Venus and Venus-Sun distances. Kepler's laws give us this.

We know, in terms of apparent size in the sky, the precise size of the Sun in degrees - just by looking at it.

Placing Venus between the Sun and the Earth, we can look at it from one point in the Earth (call it $$N$$) and see Venus against the Sun at a point I'll call $$n$$. Repeating from another place (call it $$S$$) at a different latitude, we get another point, $$s$$. If we know how far apart these two points are in the sky, we can use the relative distance of Venus to tell us the angle, at Venus, of the lines $$N$$-Venus-$$n$$ and $$S$$-Venus-$$s$$. Since we know the distance in kilometres between $$N$$ and $$S$$, that means we can solve the triangle and get the distance in kilometres between Venus and $$N$$ or $$S$$. (I am tacitly omitting a few steps here, such as the fact that the "distance" between $$N$$ and $$S$$ is a north-south distance and not a great-circle distance along the surface of the Earth). Having the distance between Venus and $$N$$ or $$S$$, we can multiply that up (since we know the ratio accurately) to the distance between the Sun and $$N$$ or $$S$$.

So it remains to find the distance in the sky between $$n$$ and $$s$$. Direct measurement cannot be done accurately enough. Accordingly we use transit time as a proxy. A line going through the middle of the Sun is longer than a line slicing across the top or bottom of it. So transit time tells us how far north or south of the Sun's diameter the point $$s$$ or $$n$$ is travelling.

Three transit times are actually needed, not two. To see this, suppose that the times for $$s$$ and $$n$$ were equal. All we would then know, strictly speaking, is that they were symmetrically disposed about the diameter - not how far north or south of the diameter they were. But since we know how fast Venus travels across the face of the Sun we can calculate the duration of a hypothetical transit along the diameter, and that figure can then be combined with just two actual observations.

To summarise:

• Transit durations give latitudes on the Sun's disc.
• Latitudes on the Sun's disc give an angular distance between two transit points. – The ratio of orbit sizes transforms this into the angle of a long thin triangle based at Venus and joining the two observation points on the Earth. – Trigonometry gives the Venus-Earth distance in terrestrial units. – The ratio of orbit sizes, again, gives the Sun-Earth distance in terrestrial units.
• How do you go from transit durations to latitudes? – usernumber Nov 14 '20 at 7:35


text:
#### Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Options

# Possible GPGPU task: linear/bilinear regression on El Nino dataset

This post describes a possible use for the GPGPU server that Dara was suggesting Azimuth might want to try to use. Any comments/improvements from anyone welcome!

I'm aware that it's non-trivial to get good GPGPU performance :-) My background in the area is having spent the last 2 years working on ARM's compiler for OpenCL. While it's different to an NVIDIA system (ARM has a unified memory architecture rather than on-chip memory like a desktop GPU) I've had moderate experience in getting code running both correctly and performantly upon a GPU.

With regards to what, the thoughts I'd had is looking at doing various kinds of regression upon the El Nino dataset. You'll have seen the writing on the wiki I've done on Bilinear regression. Having done some research on how other people solve things my view on the best way to do the fitting is:

1. Alternate between fixing the left factors and solving for the right factors, and fixing the right factors and solving for the left factors. This has the advantage that with one set fixed the problem becomes "linear regression", hence the same code can also be used for linear regression just by not doing the alternation. (A paper appears to say the alernating approach still converges.)

2. Since the sparsity weights I'd like to try include $L_1$ and $L_{1/2}$ priors, it looks like the best way of solving the individual linear regression problems is Co-ordinate descent, which requires more descent steps but of a drastically simpler kind. It looks like co-ordinate descent performs quite well when parallelised.

With such a program written I'd be inclined to see what results are obtained for predicting the El Nino 3.4 index (or some variant) using:

1. Linear regression, linear regression with $L_2$ prior, linear regression with $L_1$ prior, linear regression with $L_{1/2}$ prior.

2. Bilinear regression, bilinear regression with $L_2$ prior, bilinear regression with $L_1$ prior, bilinear regression with $L_{1/2}$ prior.

It's quite possible that this won't demonstrate anything beyond medium prediction performance, but it might reveal some interesting stuff. It's also some results that John could use at NIPS as a baseline for "standard ML techniques" to compare Ludescher et al against.

For the size of data we've got I think it's only suitable either for a very beefy multicore CPU or a GPGPU setup. (I can probably do some correctness testing and debugging on tiny problems using pocl to run OpenCL on my laptop's CPU before having to run on an actual GPU.)

• Options
1.

Hello David

These are fine, however I would like to ask you to make a specific application on specific set of data. You can see how since I arrived I have tried to organize my coding.

If possible, and please do not feel pressure, make a narrowly specific application of these algorithms to address a specific problem.

There are 1000000000s blogs and websites on machine learning and yet I can count on fingers of one hand where I could download any useful code to solve actual problems.

This might not be your cup of tea, but I suggest you consider if you may

Dara

Comment Source:Hello David These are fine, however I would like to ask you to make a specific application on specific set of data. You can see how since I arrived I have tried to organize my coding. If possible, and please do not feel pressure, make a narrowly specific application of these algorithms to address a specific problem. There are 1000000000s blogs and websites on machine learning and yet I can count on fingers of one hand where I could download any useful code to solve actual problems. This might not be your cup of tea, but I suggest you consider if you may Dara
• Options
2.
edited September 2014

David wrote:

It’s also some results that John could use at NIPS as a baseline for “standard ML techniques” to compare Ludescher et al against.

Yes, I support this project and I'll be glad to help!

My recent post in El Niño project - thinking about the next steps was part of my plan to avoid complete embarrassment or nerve-racking suspense by making sure that without much new effort I can put together some reasonable talk at NIPS. But this sounds like a great extra initiative.

Maybe I can use my (limited) skill in climate science to help you prepare a very specific coding challenge for Dara. First, a basic question. When you talk about

predicting the El Nino 3.4 index (or some variant) using:

• Linear regression, linear regression with $L_2$ prior, linear regression with $L_1$ prior, linear regression with $L_{1/2}$ prior.

• Bilinear regression, bilinear regression with $L_2$ prior, bilinear regression with $L_1$ prior, bilinear regression with $L_{1/2}$ prior.

are you talking about predicting the El Niño 3.4 index at some time given just previous values of this index, or - more demanding but potentially much more rewarding - given previous values of the temperature at a grid of points in the Pacific. The latter is the sort of data that Ludescher et al use, so it could help "benchmark" their program.

Comment Source:David wrote: > It’s also some results that John could use at NIPS as a baseline for “standard ML techniques” to compare Ludescher et al against. Yes, I support this project and I'll be glad to help! My recent post in [El Niño project - thinking about the next steps](http://forum.azimuthproject.org/discussion/1382/el-nino-project-thinking-about-the-next-steps/?Focus=12497#Comment_12497) was part of my plan to avoid complete embarrassment or nerve-racking suspense by making sure that without much new effort I can put together some reasonable talk at NIPS. But this sounds like a great extra initiative. Maybe I can use my (limited) skill in climate science to help you prepare a very specific coding challenge for Dara. First, a basic question. When you talk about > predicting the El Nino 3.4 index (or some variant) using: > * Linear regression, linear regression with $L_2$ prior, linear regression with $L_1$ prior, linear regression with $L_{1/2}$ prior. > * Bilinear regression, bilinear regression with $L_2$ prior, bilinear regression with $L_1$ prior, bilinear regression with $L_{1/2}$ prior. are you talking about predicting the El Niño 3.4 index at some time given just previous values of this index, or - more demanding but potentially much more rewarding - given previous values of the temperature at a grid of points in the Pacific. The latter is the sort of data that Ludescher _et al_ use, so it could help "benchmark" their program.
• Options
3.

Maybe I can use my (limited) skill in climate science to help you prepare a very specific coding challenge for Dara.

YES!

Comment Source:>Maybe I can use my (limited) skill in climate science to help you prepare a very specific coding challenge for Dara. YES!
• Options
4.

I have the same question as John.

The practical definition of "prediction" can be interpreted in different ways. I interpret as what John is saying is that we can treat this in either of two ways -- or both, for that matter:

1. Predict ENSO at the current time (or at historical times) based on correlated events from other measures, spatial or otherwise.

2. Predict ENSO at future times based on some sort of physical model or heuristic model that we can glean from past history.

We can use #1 to help with #2, but only if we have models for the other correlated measures. This is a subtle yet important detail. For example, we can find all sorts of correlations with rainfall, other indices such as NAO, AMO, etc., but unless we have models for those other measures, we can't use those to predict the future -- instead, we are simply chasing our tail and staying in the present.

Does that make sense as a reframing of the question ?

Comment Source:I have the same question as John. The practical definition of "prediction" can be interpreted in different ways. I interpret as what John is saying is that we can treat this in either of two ways -- or both, for that matter: 1. Predict ENSO at the current time (or at historical times) based on correlated events from other measures, spatial or otherwise. 2. Predict ENSO at future times based on some sort of physical model or heuristic model that we can glean from past history. We can use #1 to help with #2, but only if we have models for the other correlated measures. This is a subtle yet important detail. For example, we can find all sorts of correlations with rainfall, other indices such as NAO, AMO, etc., but unless we have models for those other measures, we can't use those to predict the future -- instead, we are simply chasing our tail and staying in the present. Does that make sense as a reframing of the question ?
• Options
5.
edited September 2014

So the idea is to find some real-valued value that's related to El Nino to try and predict from the values of the time series in the Pacific Basin. I'm not sure whether the El Nino 3.4 index is the best thing to predict: it seems to be a 3-month average whereas for Ludescher et al's "is there an El Nino" it's a value over 5 months, so maybe an average of 5 (or maybe 7) would be more useful for comparing with Ludescher et al?

Comment Source:So the idea is to find some real-valued value that's related to El Nino to try and predict from the values of the time series in the Pacific Basin. I'm not sure whether the El Nino 3.4 index is the best thing to predict: it seems to be a 3-month average whereas for Ludescher et al's "is there an El Nino" it's a value over 5 months, so maybe an average of 5 (or maybe 7) would be more useful for comparing with Ludescher et al?
• Options
6.

Is it also possible to move away from linear to non-linear, it is clear that the data we are concerned about is not linear nor could be approximately linearly

Dara

Comment Source:Is it also possible to move away from linear to non-linear, it is clear that the data we are concerned about is not linear nor could be approximately linearly Dara
• Options
7.

There are 1000000000s blogs and websites on machine learning and yet I can count on fingers of one hand where I could download any useful code to solve actual problems.

Dara, I recommend looking at the examples section of the scikit learn documentation. Also if ypu or other people are interested in doing machine learning or scientific computing in python I highly recommend using the Anaconda python distribution. It gives you most of the commonly used quantitative python libraries like scikt, pandas ipython, scipy numpy, ... (195 libraries) out of the box. Stop installing dependencies becoming the biggest part of a project :).

Comment Source:> There are 1000000000s blogs and websites on machine learning and yet I can count on fingers of one hand where I could download any useful code to solve actual problems. Dara, I recommend looking at the [examples section](http://scikit-learn.org/dev/auto_examples/index.html) of the scikit learn documentation. Also if ypu or other people are interested in doing machine learning or scientific computing in python I highly recommend using the [Anaconda](http://docs.continuum.io/anaconda/) python distribution. It gives you most of the commonly used quantitative python libraries like scikt, pandas ipython, scipy numpy, ... (195 libraries) out of the box. Stop installing dependencies becoming the biggest part of a project :).
• Options
8.
edited September 2014

Maybe I can use my (limited) skill in climate science to help you prepare a very specific coding challenge for Dara.

I think formulating a good prediction problem is the most important issue for the project at this point.

Daniel

Comment Source:> Maybe I can use my (limited) skill in climate science to help you prepare a very specific coding challenge for Dara. I think formulating a good prediction problem is the most important issue for the project at this point. Daniel
• Options
9.

Hello Daniel

We used SCIKIT for an entire year and while it works for demos with small data (except Neural Networks code incomplete) we discovered that for realistic applications we could not train the sample data set.

We did have a full installation with Anaconda, the account you were given had access accordingly. We installed everything!

I give you examples why we dropped its usage.

For SVM/SVR it provides access to limited KERNELS which are not producing accurate enough forecasts, so we wanted to add our own WAVELET KERNEL and it was a nightmare! Finally a world class Python programmer gave up!

For Knn we wanted to use our own metrics or other known metrics, again same.

No parallelization support, therefore for large datasets it is useless.

NO SYMBOLIC COMPUTATIONS at all! This is a huge issue when one does algorithms and needs to wrestle the algebras.

Neural Network is still not supported which is a big problem.

For professional use and serious research, the kinds John requires I do not recommend SCIKIT. If you want to teach classes for undergrads, maybe a good option.

So we decided to write our own code and contribute to their source tree, and it looked like there are political issues amongst the organizers and certain developments are blocked e.g. Neural Networks. We found their API interface cumbersome for quick contributions.

Finally I switched to Mathematica and C.

Sorry.

I AM WILLING TO PROVIDE THE PYTHON ANACONDA INSTALLATIONS REQUIRED FOR SCIKIT, if a competent programmer could show some serious results, but personally I cannot contribute with SCIKIT

DAra

Comment Source:Hello Daniel We used SCIKIT for an entire year and while it works for demos with small data (except Neural Networks code incomplete) we discovered that for realistic applications we could not train the sample data set. We did have a full installation with Anaconda, the account you were given had access accordingly. We installed everything! I give you examples why we dropped its usage. For SVM/SVR it provides access to limited KERNELS which are not producing accurate enough forecasts, so we wanted to add our own WAVELET KERNEL and it was a nightmare! Finally a world class Python programmer gave up! For Knn we wanted to use our own metrics or other known metrics, again same. No parallelization support, therefore for large datasets it is useless. NO SYMBOLIC COMPUTATIONS at all! This is a huge issue when one does algorithms and needs to wrestle the algebras. Neural Network is still not supported which is a big problem. For professional use and serious research, the kinds John requires I do not recommend SCIKIT. If you want to teach classes for undergrads, maybe a good option. So we decided to write our own code and contribute to their source tree, and it looked like there are political issues amongst the organizers and certain developments are blocked e.g. Neural Networks. We found their API interface cumbersome for quick contributions. Finally I switched to Mathematica and C. Sorry. I AM WILLING TO PROVIDE THE PYTHON ANACONDA INSTALLATIONS REQUIRED FOR SCIKIT, if a competent programmer could show some serious results, but personally I cannot contribute with SCIKIT DAra
• Options
10.

Just to emphasize I am not ANTI-scikit and grind no axes with its founders

Dara

Comment Source:Just to emphasize I am not ANTI-scikit and grind no axes with its founders Dara
• Options
11.

Daniel wrote:

I think formulating a good prediction problem is the most import issue for the project at this point.

Daniel is 100% correct on this.

Comment Source:Daniel wrote: >I think formulating a good prediction problem is the most import issue for the project at this point. Daniel is 100% correct on this.
• Options
12.

Hi Dara,

I have had very good experiences with scikit. In my work I mainly use the linear model and tree ensemble subpackages of scikit. These can handle any dataset that can reasonably fit in memory (same limitation as R and I think Mathematica). I have it it to train random forests on dense datasets with 250000 rows by 4000 columns, and linear models on sparse data sets with 250000 rows and 500000 columns. The linear models train in minutes or even seconds.

I also use some of the unsupervised libraries like k-means and various matrix decompositions. Matrix decomposition take more time and cannot handle datasets like the above, but all the weather pattern decompositions I posted here on were done with scikit.

You can train SVMs with arbitrary kernels by using sklearn.kernel_approximation.Nystroem followed by a linear method like the SGDClassifier. For large datasets this is much more efficient than say svmlib. I have used this method to train gaussian svms on datasets of the size quoted above. I am not aware of any other public libraries that can train nonlinear kernels on large data sets. SVMs with non-linear kernels are usually very inefficient, since the original algorithms for these use dual space methods which are quadratic in the number of rows. There are modern faster approximate methods (like the Nystroem kernel above), but I am not aware of libraries implement these. Fast primal space libraries like liblinear and vowpal-wabbit only handle linear classifiers, although vowpal-wabbit has recently added a multilayer option, but that is not a kernel method.

Scikit does not scale to the google/twitter/facebook kind of big data, but it easily handles of the size we have been looking at here. It has laso scaled better than R on problems I have worked with.

Daniel

Comment Source:Hi Dara, I have had very good experiences with scikit. In my work I mainly use the linear model and tree ensemble subpackages of scikit. These can handle any dataset that can reasonably fit in memory (same limitation as R and I think Mathematica). I have it it to train random forests on dense datasets with 250000 rows by 4000 columns, and linear models on sparse data sets with 250000 rows and 500000 columns. The linear models train in minutes or even seconds. I also use some of the unsupervised libraries like k-means and various matrix decompositions. Matrix decomposition take more time and cannot handle datasets like the above, but all the weather pattern decompositions I posted here on were done with scikit. You can train SVMs with arbitrary kernels by using sklearn.kernel_approximation.Nystroem followed by a linear method like the SGDClassifier. For large datasets this is much more efficient than say svmlib. I have used this method to train gaussian svms on datasets of the size quoted above. I am not aware of any other public libraries that can train nonlinear kernels on large data sets. SVMs with non-linear kernels are usually very inefficient, since the original algorithms for these use dual space methods which are quadratic in the number of rows. There are modern faster approximate methods (like the Nystroem kernel above), but I am not aware of libraries implement these. Fast primal space libraries like liblinear and vowpal-wabbit only handle linear classifiers, although vowpal-wabbit has recently added a multilayer option, but that is not a kernel method. Scikit does not scale to the google/twitter/facebook kind of big data, but it easily handles of the size we have been looking at here. It has laso scaled better than R on problems I have worked with. Daniel
• Options
13.

Hello Daniel

I am sure these experiences are viable for those who know SCIKIT and how to use it. I seem to have failed.

I can provide the servers with SCIKIT and iPython notebooks for serious programmers, personally cannot spend more time on SCIKIT. Easily we could exchange data and run scripts between the platforms. So no loss.

With regards to weather patterns, the traditional time-series data we have are tiny i.e. the ones we used for our examples past few months.

I am moving on to volumetric satellite data e.g. GPM.

Again I do not wish my comments to reflect on SCIKIT nor being critical about what you said.

Dara

Comment Source:Hello Daniel I am sure these experiences are viable for those who know SCIKIT and how to use it. I seem to have failed. I can provide the servers with SCIKIT and iPython notebooks for serious programmers, personally cannot spend more time on SCIKIT. Easily we could exchange data and run scripts between the platforms. So no loss. With regards to weather patterns, the traditional time-series data we have are tiny i.e. the ones we used for our examples past few months. I am moving on to volumetric satellite data e.g. GPM. Again I do not wish my comments to reflect on SCIKIT nor being critical about what you said. Dara
• Options
14.
edited September 2014

John wrote:

Are you talking about predicting the El Niño 3.4 index at some time given just previous values of this index, or - more demanding but potentially much more rewarding - given previous values of the temperature at a grid of points in the Pacific?

Paul Pukite wrote:

I interpret as what John is saying is that we can treat this in either of two ways – or both, for that matter:

• Predict ENSO at the current time (or at historical times) based on correlated events from other measures, spatial or otherwise.

• Predict ENSO at future times based on some sort of physical model or heuristic model that we can glean from past history.

This is not the distinction I was highlighting. I was talking about

1) predicting the El Niño 3.4 index at time $t$ given just values of the El Niño 3.4 index at times before $t - \Delta t$ for some $\Delta t$,

versus

2) predicting the El Niño 3.4 index at time $t$ given values of many other quantities at times before $t - \Delta t$ for some $\Delta t$,

Ludescher et al do 2). Until December (at least) I want to focus on doing things similar to what they do. But I imagine it's quite standard to use machine learning techniques to do tasks like 1). In my reply to Daniel Mahler, I proposed a version of 2) that I hope will be easy:

3) predicting the El Niño 3.4 index at time $t$ given the "average link strength" at times between $t - \Delta_1 t$ and $t - \Delta_2 t$, for some numbers $\Delta_1 t$ and $\Delta_2 t$.

This is a problem of predicting one time series given another, presumably much less data-intensive that predicting one time series given many others, like the temperatures at all these grid points:

I am not wanting to focus on physical models just yet. It's a very interesting challenge, and I know that's what you like to do. But I don't think I can do it before December! After December I will feel more free to tackle big ambitious projects.

Comment Source:John wrote: > Are you talking about predicting the El Niño 3.4 index at some time given just previous values of this index, or - more demanding but potentially much more rewarding - given previous values of the temperature at a grid of points in the Pacific? Paul Pukite wrote: > I interpret as what John is saying is that we can treat this in either of two ways – or both, for that matter: > * Predict ENSO at the current time (or at historical times) based on correlated events from other measures, spatial or otherwise. > * Predict ENSO at future times based on some sort of physical model or heuristic model that we can glean from past history. This is not the distinction I was highlighting. I was talking about 1) predicting the El Niño 3.4 index at time $t$ given just values of the El Niño 3.4 index at times before $t - \Delta t$ for some $\Delta t$, versus 2) predicting the El Niño 3.4 index at time $t$ given values of many other quantities at times before $t - \Delta t$ for some $\Delta t$, Ludescher _et al_ do 2). Until December (at least) I want to focus on doing things similar to what they do. But I imagine it's quite standard to use machine learning techniques to do tasks like 1). In [my reply to Daniel Mahler](http://forum.azimuthproject.org/discussion/1382/el-nino-project-thinking-about-the-next-steps/?Focus=12521#Comment_12521), I proposed a version of 2) that I hope will be easy: 3) predicting the El Niño 3.4 index at time $t$ given the "average link strength" at times between $t - \Delta_1 t$ and $t - \Delta_2 t$, for some numbers $\Delta_1 t$ and $\Delta_2 t$. This is a problem of predicting one time series given another, presumably much less data-intensive that predicting one time series given _many_ others, like the temperatures at all these grid points: <img width = "400" src = "http://math.ucr.edu/home/baez/ecological/el_nino/ludescher_el_nino_cooperativity_1a.jpg" alt = ""/> I am not wanting to focus on physical models just yet. It's a very interesting challenge, and I know that's what you like to do. But I don't think I can do it before December! After December I will feel more free to tackle big ambitious projects.


text:
# [OS X TeX] Scripting

Sat Jun 29 06:38:14 CEST 2002

Hi Folks

I want to write a script which will take a Word file and convert some of
the most common character formatting in that file and replace it with
latex commands. So, for example if a string of characters is italisized
in word the script will replace it with that string surrounded by
\textit{}. And so on for some other bits of formatting that will not
convert with find/replace in Word.

Does anyone have any suggestions, for a scripting novice, of which
scripting language would best accomplish this? Should I learn Perl,
Applescript or what?

-----------------------------------------------------------------
Threaded list archives can be found at:
<http://www.masda.vxu.se/~pku/MacOSX_TeX/>
-----------------------------------------------------------------
To UNSUBSCRIBE, send email to <info at email.esm.psu.edu> with
"unsubscribe macosx-tex" (no quotes) in the body.
For additional HELP, send email to <info at email.esm.psu.edu> with
"help" (no quotes) in the body.
-----------------------------------------------------------------