text:
# All Questions

1,390 questions
Filter by
Sorted by
Tagged with
303 views

### Strange! I know someone who can answer but I could not let him know!

There is a recent and interesting post on MO: erdos-harary-tuttes-dimension-of-graph-progress-in-last-48-yrs that I know a friend of mine can answer. I had in mind to let him know via this feature: ...
167 views

### Is it possible to add an option to migrate to a programming site?

There have been a number of questions in the Close part of Review lately which were basically asking for help creating an algorithm to do some mundane task (see here, here, here for example). I wonder ...
681 views

### Appropriate Reaction to a Failed Reference Request on MO

This follows Amir Asghari's advice concerning my comment on the answer to Answering my own question: Background of my question is, that I can envisage different reasons for reference requests on ...
1k views

### Mathoverflow and the mathematical community

What is the general point of view of the mathematical community about MO ? Do you talk about MO with your colleagues non-"MO users" ? What are their views? Is it acceptable to cite MO's posts in ...
166 views

### Is this question suitable for MO?

I recently posted this question on MO. However, it quickly got downvoted and there was a comment which read that "MO is not for homework." However, that question was not homework and I had not got ...
351 views

### MathOverflow Weekly Newsletter / Greatest hits from previous weeks

I don't know how many look at the MathOverflow Weekly Newsletter, but these were the "Greatest hits from previous weeks": "Video lectures of mathematics courses available online for free" from Feb ...
164 views

### What happened to my previous posts?

Recently, I logged-in to mathoverflow (after a period of inactivity) to find out that none of my previous posts shows up. Can anyone shed a light on this?
212 views

I have a couple of questions concerning the score for specific tags, and the corresponding tag badges. It appears that community wiki (CW) answers do not count towards tag badges, even when they ...
422 views

As a typical scenario, assume I ask for examples of some mathematical phenomenon and somebody answers my question and provides 2 families of examples. After several months, I figure a third family of ...
824 views

### Somebody copied my question from mathstackexchange word-for-word

While using google to search for "11th power diophantine" it gave the mathoverflow link, The diophantine eq. $x^4 +y^4 +1=z^2$ which is copied word-for-word from my mathstackexchange post, https://...
360 views

### Must I be precise when asking questions, or will readers fill gaps based on context?

Suppose I asked a question about graphs; do I always have to precisely define, what kind of graph I mean (directed/undirected, with/without parallel edges, with/without loops, connected or not, with ...
484 views

### Local vs. Global MO in relation to “Polymath” efforts

Certain polymath-flavor questions appear on MO, and are not really appropriate for the forum. Such questions are probably posted (I can only be sure for my own such posts) because MO captures a huge "...
258 views

### Undelete request, Question 67384

An answer to Source and context of $\frac{22}{7} - \pi = \int_0^1 (x-x^2)^4 dx/(1+x^2)$? posted on 9 June 2011 gained 31 upvotes before being deleted by its author on 23 August 2012. Would those who ...
821 views

### Why are trivial answers upvoted more than answers that actually contain substance?

I have noticed that a two line answer that anyone can come up with usually has more upvotes than an answer that is more difficult to come up with. Is this trend simply a result of pure laziness as ...
360 views

### Usefulness of longer tags

This thread is meant as a place to discuss the utility (or lack of it) for longer tags. Currently, tags can have a maximum of 25 ASCII characters. That leads to interesting results such as ...
669 views

### Should “The probability for a streak when tossing a coin” be reopened?

The question "The probability for a streak when tossing a coin" is on hold. [Edit: It has been reopened.] I disagree with closing the question and voted to reopen. This problem may sound like it is ...
449 views

### Is it OK to ask the reason for a question to be on hold or closed in meta?

I don't know much about the culture of MO. So I would like to ask the following question. Is it OK to ask the reason for a question in the main to be on hold or closed in the meta?
1k views

### Why do they think this question is not of research level? [closed]

This question was originally asked in MSE about a year ago. Nobody has answered it. So I posted it here. I wonder why they think it's not of research level.
397 views

### Undelete request

This is motivated by this question, see also the comments, and Will Jagy's answer. I was asked to start a formal request, so here it is. A user that has expressed no desire to participate anymore on ...
368 views

### Undelete request, question 23943

NEVER MIND --- the same moderator who suggested I post here has solved the problem by deleting my copy-paste job and undeleting the answer we wanted undeleted. [or maybe it got undeleted by some other ...
734 views

### Should we request a Private Message system?

One convenient thing on AoPS that is missing on MO is the private message system where you can send and receive private messages to other users without figuring out who they are outside the internet ...
191 views

### 'Tag-removed' tags where they possibly shouldn't be

See Why is differentiating mechanics and integration art? Which functions of one variable are derivatives ? both of which are tagged [tag-removed]. Also, both of these seem to have had these tags ...
907 views

### When a MSE user is suspended, should the suspension apply to MO as well?

I'm just asking. When an MSE account is temporarily suspended to cool down, then the expected outcome is that the user would start doing the same things on MO which led to the MSE suspension. This ...
372 views

### Should there be a general policy for putting comments on “not-suitable-for-MO” questions?

Right now, there is a question posted on MO that rightly does not belong to MO: The equivalence of the mathematical induction and the principle of the smallest. Of course, such questions comes and ...
1k views

### Tags that encourage off-topic questions

MathOverflow has a few problematic tags which are not inappropriate by themselves but suggest off-topic ideas. A prime example of this is the calculus tag. Sometimes a research-level mathematics ...
976 views

### Why adding a comment requires 50 reputation points?

When a new member tries to write a comment he sees “add comment (requires 50 reputation)” but of course he has no so many points. On the other hand, answering does not require any reputation. Then the ...
525 views

### How long until MathOverflow will be part of the Stack Exchange Data Explorer?

According to this answer and this answer, MathOverflow will eventually appear on the Stack Exchange Data Explorer. A couple of weeks have passed since these answers were given and MO is still missing ...
267 views

### Can a bounty be awarded to an answer in a comment?

Recently I have placed a bounty on this question. The question has no answer in technical terms, but it has been answered in a comment within the bounty period. Now the banner below the question says ...
813 views

### Does deleting an MO account delete other StackExchange accounts?

If a user deletes their account on MO will all the associated accounts on other StackExchange sites be deleted as well?
256 views

### On an answer containing pre-formatted text

I just came across an answer by a new user which looks very unusual to me: https://mathoverflow.net/a/139275/21095 Specifically, there is very little mathjax in this answer. Instead the vast majority ...
15k views

### Best of MathOverflow, or papers inspired by MathOverflow

This is a place to collect MathOverflow success stories! Was some of your research inspired by something on MathOverflow? Do you know questions & answers that led to interesting research? ...
217 views

### Where is the off switch for the concurrent preview now?

I feel like an idiot but I cannot find it. Meanwhile, if the post is long and has a lot of LaTeX formulae in it, and the connection is imperfect, the wysiwyg regime is a non-stop fight. I figured out ...
605 views

### Collatz Question

I voted to close this question about a "5n+1" version of the Collatz conjecture because it appears to be entirely unmotivated, with no heuristics and not even any substantial numerical evidence. I ...
738 views

### Why not 'thanks' in comments?

I've noticed a message in mathoverflow's place for comments saying that '+1' or 'thanks' comments are not appropriate. I don't agree with the second kind of comment being inappropriate. I think it's ...
281 views

### Users with multiple accounts

In the old meta we had a very useful thread where one could point to moderators multiple accounts to be merged. Since things have changed, would there be a point on having such a thread here, or what ...
1k views

### Do we have an unofficial quota on how many old questions one should bump for minor edits in a single day?

I noticed tonight that a well-intentioned user has been doing a lot of minor edits of formatting of old questions with the effect of filling most of the active question list with old questions bumped ...
987 views

### List of recurrent technical problems involving MathJax

Edit: I have retagged this question 'feature-request' in an attempt to expedite action on these issues. I request that the MathOverflow developers implement an automatic fix of the issues in the ...
128 views

### Capitalisation of “possible” in duplicate comment

There's nothing much to this question, but I thought I'd ask anyway. When a question is flagged as a duplicate, a comment of the form "possible duplicate of . . ." is posted. Why isn't it "Possible ...
2k views

### Editing titles to include $\mathfrak{LaTeX \; Math}$

Should question titles, which sometimes intentionally avoid LaTeX math for those who choose faster rendering, be edited to insist upon LaTeX math? A recent instance that prompted my question is "two ...
144 views

### Hyperlinks not working in user profile

After the migration, it appears that the hyperlinks in my profile description are no longer working. I've noticed the same problem with some other users who I seem to recall had working hyperlinks ...
571 views

### Who owns the content of MO, and why migrating a question is legal?

There is a long list of comments in Migrating a question which is already posted on the other site, and an important question is deep in that list, so I repost it here. Where in the legal agreement, ...
687 views

### Migrating a question which is already posted on the other site [closed]

When a question begins by saying "This question appeared earlier on math.stackexchange.com" and links to that earlier posting, how does it make sense to migrate it to math.stackexchange.com (thereby ...
1k views

### Is it good practice to write “@someone” in a question?

On SE and on the old MO have seen @someone in a question. Probably this notifies someone in his inbox and draws his attention (which is the goal). Does it ...
153 views

### Is there an option to hide migrated (or even on hold) questions?

It would make sense, especially for MO, to have an option to hide migrated and on hold questions in the user preferences. Is there a way to do this already? If not I think this would make a nice ...
338 views

### Option to migrate to CS Theory

We should add the option to migrate to Theoretical Computer Science when voting to close. This question is an obvious candidate.
628 views

### Is the following question on paper-writing etiquette appropriate for MO?

I'm wondering if it would be appropriate to ask a soft question on MO regarding mathematical etiquette. In more detail, I'm writing a paper that cites a well-known paper in my field, but I've been ...
257 views

### Soft question on history of Cohen Macaulay rings

A user over at MSE flagged https://math.stackexchange.com/questions/455506/why-cohen-macaulay-rings-have-become-important-in-commutative-algebra#question suggesting that it is suitable for MO. The ...
122 views

### Automatically fix outstanding mathjax issue involving backticks

After the transition to the stack exchange network, I have occasionally noticed posts being edited to replace occurrences of the following code (note the backticks): ...


text:
# mpl_interactions.interactive_axhline¶

interactive_axhline(y=0, xmin=0, xmax=1, ax=None, slider_formats=None, force_ipywidgets=False, play_buttons=False, controls=None, display_controls=True, **kwargs)[source]

Control an horizontal line using widgets.

Parameters
• y (float or function) – y position in data coordinates of the horizontal line.

• xmin (float or function) – Should be between 0 and 1, 0 being the far left of the plot, 1 the far right of the plot.

• xmax (float or function) – Should be between 0 and 1, 0 being the far left of the plot, 1 the far right of the plot.

• ax (matplotlib axis, optional) – If None a new figure and axis will be created

• slider_formats (None, string, or dict) – If None a default value of decimal points will be used. Uses the new {} style formatting

• force_ipywidgets (boolean) – If True ipywidgets will always be used, even if not using the ipympl backend. If False the function will try to detect if it is ok to use ipywidgets If ipywidgets are not used the function will fall back on matplotlib widgets

• play_buttons (bool or str or dict, optional) – Whether to attach an ipywidgets.Play widget to any sliders that get created. If a boolean it will apply to all kwargs, if a dictionary you choose which sliders you want to attach play buttons too.

• None: no sliders

• True: sliders on the lft

• False: no sliders

• ‘left’: sliders on the left

• ‘right’: sliders on the right

• controls (mpl_interactions.controller.Controls) – An existing controls object if you want to tie multiple plot elements to the same set of controls

• display_controls (boolean) – Whether the controls should display themselve on creation. Ignored if controls is specified.

Returns

controls

format: plain


text:
# Gambling

17,506pages on
this wiki
 For an overview of gambling games in Fallout universe, see Gambling games.
Gambling
Fallout, Fallout 2, Fallout Tactics
modifiesSkill at cards, dice and other games.
governed byLuck
initial value20% + (3% x Luck)
5% x Luck. (Fallout 2)
0%+3xLK+2xIN Fallout Tactics
related perksGambler

The knowledge and practical skills related to wagering. The skill at cards, dice and other games.

— In-game description

Gambling is a Fallout, Fallout 2 and Fallout Tactics skill.

## Initial LevelEdit

Fallout:

$\text{Initial level}\%=20+(3\times\text{Luck})$

Fallout 2:

$\text{Initial level}\%=5\times\text{Luck}$

Example: A starting Luck of 5.

Fallout:

$20+(3\times5)=35\%$

Fallout 2:

$5\times5=25\%$

## DescriptionEdit

This skill increases the odds of winning at roulette, slots or the "Mole-Rat Mambo" (Fallout 2, Redding. Interestingly, it does NOT increase the odds of winning at craps, Fallout 2. Den. One can easily save right before betting, and bet all of their caps on a craps roll, win > save, lose > reload, without needing any investment in Gambling.

In Fallout Tactics, at least without the patch, just your main character will be able to gamble. The process is also bugged: you can offer nothing for all, then hit the gambling button rapidly. In 10 seconds you can win, even with 30%. You can exploit this at the bunkers, as you can gamble with the quartermaster, and sell his items back.

In Fallout, gambling can be used as an exploit with some small heavy objects and some spare time. Go to the Hub and go south till you hit the bar, the Maltese Falcon. Talk to the black guy by the roulette table; when the dialog comes up hold down the 1 and 3 on your keyboard in order to cycle through the gambling dialog. Using weights on the keys will automate this task. Money will accumulate as the character repeatedly gambles, and over time will net your character a large amount of money. This requires a minimum of 60% gambling to turn a profit. The higher the skill, the more caps per hour one can expect to get. With this, one does not need to invest any points in Barter, as one has an unlimited source of income.

In Fallout 2, one can perform a similar exploit as above at any slot machine. Simply use a weight of some kind to hold down either the 1,2,3,4, or 5 key. The keys correspond to different betting amounts (1,2,5,10,25). The higher the number, the higher one needs in gambling in order to win more than 50% of the time. Even a 50% gambling skill can earn money with the lowest value, though it takes a while to earn any decent amount. By 80%, one can bet \$10 and win consistently, easily earning in an hour or so all the money one is likely to need for an entire game.

This skill can be increased with the Gambler perk, which adds 20% to the gambling skill.


text:
### Baby Circle

A small circle fits between two touching circles so that all three circles touch each other and have a common tangent? What is the exact radius of the smallest circle?

### Logosquares

Ten squares form regular rings either with adjacent or opposite vertices touching. Calculate the inner and outer radii of the rings that surround the squares.

### Two Trees

Two trees 20 metres and 30 metres long, lean across a passageway between two vertical walls. They cross at a point 8 metres above the ground. What is the distance between the foot of the trees?

# Incircles

##### Age 16 to 18 Challenge Level:

Ruoyi Sun, Sarah and Elizabeth from the North London Collegiate School Puzzle Club sent this neat solution.

"We found that by drawing the angle bisectors to find the centre of the incircle, and then drawing in 3 radii, we had created three pairs of congruent triangles. Therefore we found that part of the hypotenuse of the 3-4-5 triangle must have length $4-r$ and the other part $3-r$. We formed an equation $$3 - r + 4 -r = 5$$ hence $r = 1.$ For the 5-12-13 triangle the equivalent formula is $$5 - r + 12 - r = 13$$ and hence $r = 2.$"

Sue Liu of Madras College went further to find a formula for other Pythagorean triples for right angled triangles with incircles of radius $k$ for any integer $k$ and this is Sue's method.

"Clearly the largest circle that fits into a triangle is the incircle where the circle touches the three sides of the triangle. For a right angled triangle we can draw radii of length $r$ from the centre of the incircle perpendicular to each of the three sides $a$, $b$ and $c$. By equating areas we get $${1\over 2}ar +{1\over 2}br +{1\over 2}cr ={1\over 2}ab.$$ $$r = {ab\over a + b + c}.$$ For the 3-4-5 triangle $r = 12/(3 + 4 + 5) = 1$ so the incircle has radius 1. For the 5-12-13 triangle $r = 60/(5 + 12 + 13) = 2$ and the inradius is 2. The next part of the question asks us to find right angled triangles with incircle radius 3 and sides which are a primitive Pythagorean triples. Pythagorean triples ${a, b, c}$ are given parametrically by $$a = 2mn, \ b = m^2 - n^2, \ c = m^2 + n^2$$ where the integers $m$ and $n$ are coprime, one even and the other odd, and $m> n.$ We can consider a triangle with side lengths $2mn, \ m^2 - n^2, \ m^2 + n^2$ Again by equating areas as before, $${1\over 2} (2mnr + (m^2 - n^2)r + (m^2 + n^2)r) = {1\over 2}(m^2 - n^2)2mn$$ Hence $$r = {2mn(m^2 - n^2) \over 2m(m + n)} = n(m -n).$$ By taking $n=1$ and $m=k + 1$ or alternatively $n = k$ and $m = k + 1$ we get $r = k$ for any integer $k$ (and of course the triangle has inradius $k$ even when $k$ is not an integer). For $r = 3$ we have $n = 1$ and $m = 4$ giving the triangle with sides 8, 15 and 17 or alternatively $n =3$, $m = 4$ in which case $a = 24$, $b = 7$ and $c = 25$. For $r = 4$ we can take $n = 4$, $m = 5$ which gives the Pythagorean triple $a = 40$, $b = 9$ and $c = 41$."

Sue's generalisation of this problem to isosceles triangles is given as a Further Inspiration.


text:
# Koch snowflake in Python with numpy and pygame

I've drawn a Koch snowflake with Python 3. I'm new to the Python world and would appreciate all feedback on how to make the code more Pythonic as I'm not used to these idioms, styles and modules. All other feedback is of course also greatly appreciated.

The snowflake is constantly redrawn in preparation for the future. This main loop is based on the pygame.draw example but feels a bit clunky with done=False;while not done etc.

import pygame
import numpy
from math import pi, sin, cos

# some constants
FPS = 10
WINDOW_SIZE = [400,400]
LINE_WIDTH = 1
MIN_LINE_LENGTH = 1 # when to terminate recursion

# main loop
def main():
# init pygame and window
pygame.init()
screen = pygame.display.set_mode(WINDOW_SIZE)
# loop until user exits
done = False
clock = pygame.time.Clock()
while not done:
# limit frame rate
clock.tick(FPS)
# check if user exited
for event in pygame.event.get():
if event.type == pygame.QUIT:
done=True
# clear screen
screen.fill([255,255,255])
# calculate the three corners of the snowflake,
# an equilateral triangle centered on the screen
screen_center = numpy.array([ WINDOW_SIZE[0]/2, WINDOW_SIZE[1]/2 ])
radius = WINDOW_SIZE[1]/2 # not really radius? but distance from center to corner
snowflake_top   = screen_center + vector_from_polar( radius, pi/2 )
snowflake_left  = screen_center + vector_from_polar( radius, pi/2 + 2*pi/3 )
snowflake_right = screen_center + vector_from_polar( radius, pi/2 + 4*pi/3 )
# draw the snowflake
draw_koch_line( screen, snowflake_top,   snowflake_left  )
draw_koch_line( screen, snowflake_left,  snowflake_right )
draw_koch_line( screen, snowflake_right, snowflake_top   )
# flip buffers
pygame.display.flip()

# vector_from_polar: constructs a vector from its angle and mangitude
def vector_from_polar( magnitude, angle ):
return magnitude * numpy.array( [ numpy.cos( angle ), numpy.sin( angle ) ] )

# draw_koch_line: (approximately) draws a Koch line between the points specified
def draw_koch_line(screen, line_start, line_end ):
if numpy.linalg.norm( line_end - line_start ) / 3 < MIN_LINE_LENGTH:
# last iteration: draw the line
pygame.draw.line(screen, [0,0,0], line_start, line_end, LINE_WIDTH )
else:
# find the normal to this line
line_normal = numpy.array([
line_end[1]-line_start[1],
line_start[0]-line_end[0] ])
# find the three points of the "triangle" used to define the segments
triangle_left  = 2/3*line_start + 1/3*line_end # 1/3 of this line
triangle_right = 1/3*line_start + 2/3*line_end # 2/3 of this line
triangle_top   = 1/2*line_start + 1/2*line_end + \
numpy.sqrt(3)/2/3 * line_normal # point "above" the line
# recurse for each segments
draw_koch_line(screen, line_start,     triangle_left)
draw_koch_line(screen, triangle_left,  triangle_top)
draw_koch_line(screen, triangle_top,   triangle_right)
draw_koch_line(screen, triangle_right, line_end)

main()

• math.sqrt etc is faster than nump.sqrt when working with scalars. Small lists and tuples are also faster than arrays. Arrays are good when large or multidimensional, but have an overhead that isn't needed when small. – hpaulj May 26 '16 at 22:01
• Replace done with not_done or working. :) – hpaulj May 26 '16 at 22:03
• @hpaulj Thank you, I didn't know about the overhead. I used numpy to make the vector addition look neater. How do you suggest I do it with lists instead? Simply a[0]=b[0]+c[0];a[1]=b[1]+c[1]? Also, thanks for letting me know math.sqrt is faster. – Anna May 27 '16 at 8:41

This is good code — I only have a couple of minor points.

1. Since nothing changes or animates, there's no need to have a top-level loop or a clock. You can just draw the snowflake and then wait for the user to quit (calling event.wait instead of event.get so that the program isn't busy doing nothing).

2. It's clearer to write pygame.Color('white') and pygame.Color('black') instead of [255, 255, 255] and [0, 0, 0].

# find the normal to this line
line_normal = numpy.array([
line_end[1]-line_start[1],
line_start[0]-line_end[0] ])

consider using the cross product:

line_normal = numpy.cross(line_end - line_start, [0, 0, 1])

4. There's repeated code in the computation of the triangle points that could be factored out into a function:

def interpolated(x, start, end):
"""Return vector interpolated between start and end by x."""
return (1 - x) * start + x * end

and then:

triangle_left  = interpolated(1/3, line_start, line_end)
triangle_right = interpolated(2/3, line_start, line_end)

• Thank you very much for all of your comments! I didn't know pygame understood color words. And that's a clever cross product use I didn't think of! – Anna May 24 '16 at 15:39
• Note that numpy.cross(two_dimensional_vec, three_dimensional_vec) will produce a three-dimensional result. – 200_success May 24 '16 at 17:13
• @200_success: Yes, you have to pick out the first two components. – Gareth Rees May 24 '16 at 17:26
• github.com/numpy/numpy/blob/master/numpy/core/numeric.py - cross code is in the middle of this file. – hpaulj May 27 '16 at 7:30


text:
arminstraub.com

Special values of generalized log-sine integrals

Special values of generalized log-sine integrals
Jonathan M. Borwein, Armin Straub — Proceedings of ISSAC 2011 (International Symposium on Symbolic and Algebraic Computation) — 2011, Pages 43-50

It was my great honor to receive the ISSAC 2011 Distinguished Student Author award for this paper.

Mathematica package

The Mathematica package LsToLi is available for download; so is a preliminary package for Sage.

Abstract

We study generalized log-sine integrals at special values. At $$\pi$$ and multiples thereof explicit evaluations are obtained in terms of multiple polylogarithms at $$\pm1$$. For general arguments we present algorithmic evaluations involving polylogarithms at related arguments. In particular, we consider log-sine integrals at $$\pi/3$$ which evaluate in terms of polylogarithms at the sixth root of unity. An implementation of our results for the computer algebra systems Mathematica and Sage is provided.

363.87 KB Preprint (PDF, 8 pages) 3906

BibTeX

@article{logsin-issac-2011,
author = {Jonathan M. Borwein and Armin Straub},
title = {Special values of generalized log-sine integrals},
journal = {Proceedings of ISSAC 2011 (International Symposium on Symbolic and Algebraic Computation)},
year = {2011},
pages = {43--50},
doi = {10.1145/1993886.1993899},
}


text:
• ### On-orbit Operations and Offline Data Processing of CALET onboard the ISS(1803.05834)

March 15, 2018 physics.ins-det, astro-ph.IM
The CALorimetric Electron Telescope (CALET), launched for installation on the International Space Station (ISS) in August, 2015, has been accumulating scientific data since October, 2015. CALET is intended to perform long-duration observations of high-energy cosmic rays onboard the ISS. CALET directly measures the cosmic-ray electron spectrum in the energy range of 1 GeV to 20 TeV with a 2% energy resolution above 30 GeV. In addition, the instrument can measure the spectrum of gamma rays well into the TeV range, and the spectra of protons and nuclei up to a PeV. In order to operate the CALET onboard ISS, JAXA Ground Support Equipment (JAXA-GSE) and the Waseda CALET Operations Center (WCOC) have been established. Scientific operations using CALET are planned at WCOC, taking into account orbital variations of geomagnetic rigidity cutoff. Scheduled command sequences are used to control the CALET observation modes on orbit. Calibration data acquisition by, for example, recording pedestal and penetrating particle events, a low-energy electron trigger mode operating at high geomagnetic latitude, a low-energy gamma-ray trigger mode operating at low geomagnetic latitude, and an ultra heavy trigger mode, are scheduled around the ISS orbit while maintaining maximum exposure to high-energy electrons and other high-energy shower events by always having the high-energy trigger mode active. The WCOC also prepares and distributes CALET flight data to collaborators in Italy and the United States. As of August 31, 2017, the total observation time is 689 days with a live time fraction of the total time of approximately 84%. Nearly 450 million events are collected with a high-energy (E>10 GeV) trigger. By combining all operation modes with the excellent-quality on-orbit data collected thus far, it is expected that a five-year observation period will provide a wealth of new and interesting results.
• ### Decaying Fermionic Dark Matter Search with CALET(1702.02546)

May 9, 2017 astro-ph.HE
The ISS-based CALET (CALorimetric Electron Telescope) detector can play an important role in indirect search for Dark Matter (DM), measuring the electron+positron flux in the TeV region for the first time directly. With its fine energy resolution of approximately $2\%$ and good proton rejection ratio ($1:10^5$) it has the potential to search for fine structures in the Cosmic Ray (CR) electron spectrum. In this context we discuss the ability of CALET to discern between signals originating from astrophysical sources and DM decay or annihilation. We fit a parametrization of the local interstellar electron and positron spectra to current measurements, with either a pulsar or 3-body decay of fermionic DM as the extra source causing the positron excess. The expected CALET data for scenarios in which DM decay explains the excess are calculated and analyzed. The signal from this particular 3-body DM decay which can explain the recent measurements of from the AMS$-02$ experiment is shown to be distinguishable from a single pulsar source causing the positron excess by 5 years of observation with CALET, based on the shape of the spectrum. We also study the constraints from extra-galactic diffuse $\gamma$-ray data on this DM-only explanation of the positron excess and show that especially for the possibly remaining parameter space a clearly identifiable signature in the CR electron spectrum exists.
• ### CALET Upper Limits on X-ray and Gamma-ray Counterparts of GW 151226(1607.00233)

Sept. 2, 2016 astro-ph.HE
We present upper limits in the hard X-ray and gamma-ray bands at the time of the LIGO gravitational-wave event GW 151226 derived from the CALorimetric Electron Telescope (CALET) observation. The main instrument of CALET, CALorimeter (CAL), observes gamma-rays from ~1 GeV up to 10 TeV with a field of view of ~2 sr. The CALET gamma-ray burst monitor (CGBM) views ~3 sr and ~2pi sr of the sky in the 7 keV - 1 MeV and the 40 keV - 20 MeV bands, respectively, by using two different scintillator-based instruments. The CGBM covered 32.5% and 49.1% of the GW 151226 sky localization probability in the 7 keV - 1 MeV and 40 keV - 20 MeV bands respectively. We place a 90% upper limit of 2 x 10^{-7} erg cm-2 s-1 in the 1 - 100 GeV band where CAL reaches 15% of the integrated LIGO probability (~1.1 sr). The CGBM 7 sigma upper limits are 1.0 x 10^{-6} erg cm-2 s-1 (7-500 keV) and 1.8 x 10^{-6} erg cm-2 s-1 (50-1000 keV) for one second exposure. Those upper limits correspond to the luminosity of 3-5 x 10^{49} erg s-1 which is significantly lower than typical short GRBs.
• ### Measurements of Primary and Atmospheric Cosmic-Ray Spectra with the BESS-TeV Spectrometer(astro-ph/0403704)

March 31, 2004 astro-ph
Primary and atmospheric cosmic-ray spectra were precisely measured with the BESS-TeV spectrometer. The spectrometer was upgraded from BESS-98 to achieve seven times higher resolution in momentum measurement. We report absolute fluxes of primary protons and helium nuclei in the energy ranges, 1-540 GeV and 1-250 GeV/n, respectively, and absolute flux of atmospheric muons in the momentum range 0.6-400 GeV/c.
• ### Measurements of atmospheric muon spectra at mountain altitude(astro-ph/0205427)

Nov. 29, 2003 astro-ph
We report new measurements of the atmospheric muons at mountain altitude. The measurement was carried out with the BESS detector at the top of Mt. Norikura, Japan. The altitude is 2,770 m above sea level. Comparing our results and predictions given by some interaction models, a further appropriate model has been investigated. These studies would improve accuracy of atmospheric neutrino calculations.
• ### Measurements of Proton, Helium and Muon Spectra at Small Atmospheric Depths with the BESS Spectrometer(astro-ph/0304102)

May 6, 2003 astro-ph
The cosmic-ray proton, helium, and muon spectra at small atmospheric depths of 4.5 -- 28 g/cm^2 were precisely measured during the slow descending period of the BESS-2001 balloon flight. The variation of atmospheric secondary particle fluxes as a function of atmospheric depth provides fundamental information to study hadronic interactions of the primary cosmic rays with the atmosphere.
• ### Measurement of low-energy antiproton detection efficiency in BESS below 1 GeV(physics/0105003)

Sept. 23, 2002 physics.ins-det
An accelerator experiment was performed using a low-energy antiproton beam to measure antiproton detection efficiency of BESS, a balloon-borne spectrometer with a superconducting solenoid. Measured efficiencies showed good agreement with calculated ones derived from the BESS Monte Carlo simulation based on GEANT/GHEISHA. With detailed verification of the BESS simulation, the relative systematic error of detection efficiency derived from the BESS simulation has been determined to be $\pm$5%, compared with the previous estimation of $\pm$15% which was the dominant uncertainty for measurements of cosmic-ray antiproton flux.
• ### Precise Measurements of Atmospheric Muon Fluxes with the BESS Spectrometer(astro-ph/0205344)

May 21, 2002 astro-ph
The vertical absolute fluxes of atmospheric muons and muon charge ratio have been measured precisely at different geomagnetic locations by using the BESS spectrometer. The observations had been performed at sea level (30 m above sea level) in Tsukuba, Japan, and at 360 m above sea level in Lynn Lake, Canada. The vertical cutoff rigidities in Tsukuba (36.2 N, 140.1 E) and in Lynn Lake (56.5 N, 101.0 W) are 11.4 GV and 0.4 GV, respectively. We have obtained vertical fluxes of positive and negative muons in a momentum range from 0.6 to 20 GeV/c with systematic errors less than 3 % in both measurements. By comparing the data collected at two different geomagnetic latitudes, we have seen an effect of cutoff rigidity. The dependence on the atmospheric pressure and temperature, and the solar modulation effect have been also clearly observed. We also clearly observed the decrease of charge ratio of muons at low momentum side with at higher cutoff rigidity region.
• ### Measurements of Cosmic-ray Low-energy Antiproton and Proton Spectra in a Transient Period of the Solar Field Reversal(astro-ph/0109007)

Jan. 25, 2002 astro-ph
The energy spectra of cosmic-ray low-energy antiprotons and protons have been measured by BESS in 1999 and 2000, during a period covering the solar magnetic field reversal. Based on these measurements, a sudden increase of the antiproton to proton flux ratio following the solar magnetic field reversal was observed, and it generally agrees with a drift model of the solar modulation.
• ### Precise Measurement of Cosmic-Ray Proton and Helium Spectra with the BESS Spectrometer(astro-ph/0002481)

Feb. 25, 2000 astro-ph
We report cosmic-ray proton and helium spectra in energy ranges of 1 to 120 GeV and 1 to 54 GeV/nucleon, respectively, measured by a balloon flight of the BESS spectrometer in 1998. The magnetic-rigidity of the cosmic-rays was reliably determined by highly precise measurement of the circular track in a uniform solenoidal magnetic field of 1 Tesla. Those spectra were determined within overall uncertainties of +-5 % for protons and +- 10 % for helium nuclei including statistical and systematic errors.
• ### Development of a Large-Area Aerogel Cherenkov Counter Onboard BESS(hep-ex/9805001)

May 1, 1998 hep-ex
This paper describes the development of a threshold type aerogel Cherenkov counter with a large sensitive area of 0.6 m$^2$ to be carried onboard the BESS rigidity spectrometer to detect cosmic-ray antiprotons. The design incorporates a large diffusion box containing 46 finemesh photomultipliers, with special attention being paid to achieving good performance under a magnetic field and providing sufficient endurance while minimizing material usage. The refractive index of the aerogel was chosen to be 1.03. By utilizing the muons and protons accumulated during the cosmic-ray measurements at sea level, a rejection factor of 10$^4$ was obtained against muons with $\beta \approx 1$, while keeping 97% efficiency for protons below the threshold.


text:
>

## Letter to a New Teacher.

I was recently connected (via email) by a friend to a new teacher who is struggling.

I’m never quite sure what to say. For what it’s worth, here was my response:

> stress and anger management.

Heh. That seemed to define my first year.

The crappy thing about teaching is that (I’m convinced) no one knows how to teach how to do it. For all the talk of “education”, the people who are supposed masters are basically throwing us inn the deep end of the pond, and seeing who stays afloat.

That being said, here are a couple of ideas that stuck with me from my first year:

- You are responsible for the kids in your classroom. If they’re not learning, its your fault. Sure, it’s easy to blame parents or gangs or whatever else, but the truth of it is that for most of those kids, there is a teacher somewhere on that campus who’s made them want to learn. Be like those teachers, not the ones who constantly complain about the kids. This sucks to hear, but I’ve seen too many teachers with good potential get ruined because they couldn’t believe that changing what they did would change the kids.

- Observe observe observe. Use your conference period. Find out who’s good at classroom management, and go watch them teach. If you don’t see them in the first week of school, you won’t see how they got there. But you will see that it’s possible. (To which – every new teacher should be required to watch the 5 best classroom managers on campus for the first week of school, lesson planning be damned.)

- Only change one thing at a time. If you feel out of control, accept most of it for what it is, and only work on changing one thing about yourself at a time. The first thing I worked on was not answering a kid who just yelled at me – I had to teach myself to wait for them to raise their hand. I had post it notes reminding me of that everywhere. The kids laughed at me, didn’t change much, but eventually learned that they had to respond to me rather than the other way around.

- Make your expectations clear, in excruciating detail. Repeatedly. I spend about a week at the beginning of the year teaching them (as opposed to just telling them) my expectations. And still, every day, I need to remind my 5th period what they’re supposed to do before the tardy bell rings. Every week when I give a test, I go over the 3 rules. Even then, I’ll have a kid who starts talking before the test was completely over. But it happens rarely. If a kid ever does something I don’t want them to do, and I haven’t taught them about that, I take it as my fault. Sure it seems like they should know how to do some stuff as a student, but the reality is that they want to know that you know how they’re supposed to act before they’re willing to put in the effort.

Prevention is worth tons of cure, and I haven’t so much learned to manage my anger as find ways to prevent things that might make me angry from happening. I spent a full month of seven hour days during the summer after my first year making a list of things the kids did that drove me nuts, and then coming up with alternate behaviors to teach them, and then lessons to teach those things. Eventually, I got good at catching the precursors to those things as well as communicating those expectations, to the point where I can substitute a class from hell and have them eating out of my hand in 5 minutes.

That’s down the road, though. right now, pick one thing about yourself to change, and start practicing it.

And remember to get enough sleep.

1. Nick B | March 21, 2011 at 7:26 pm | Permalink

I appreciate you sharing this letter. I love reading wholehearted advice from other teachers.

2. David | April 2, 2011 at 9:15 pm | Permalink

Could you share a list of the expectations you cover in the first week? Also, could you elaborate on what you mean by teaching these expectations…perhaps by example?

3. H. | April 6, 2011 at 1:56 pm | Permalink

Agreeing with David. Be nice and share, pretty please!

4. Barb | May 25, 2011 at 2:40 pm | Permalink

Oh my gosh … How true!!! I had a kid today who didn’t do anything because he didn’t have a pencil … I need to have a container handy so that doesn’t happen again … the only thing is, I feel that it doesn’t make them responsible for their behaviour. What I did solve though is that time is being used productively or rather not wasted for something so silly. I don’t get enough sleep but I really like your list idea about things that drive me crazy … I’m in hell right now (walked into an LTO in the middle) so I have learned pretty much what you’ve said in your post …

5. Sue VanHattum | May 25, 2011 at 6:39 pm | Permalink

Regarding responsibility, maybe you can charge a nickel (or whatever pencils cost these days). I let my college students use an older edition of the text, so it’ll be cheap ($4), and they still don’t buy it. So I’ve bought a bunch of copies and sold them to students. Anything to get them started… I also sell Overcoming Math Anxiety. I used to loan it to students, but I wouldn’t get my copies back. I buy lots of copies at$4 each, and charge them the same. (I love betterworldbooks.com.)


text:
# Higher Order Unification

efficient full higher order unification zipperposition

Unification Under a Mixed Prefix - miller

equality over lambda terms is similar to universalc quantification unification of stlc as logic programming This is really interesting. Interpretting lambda unificatsion as a harrop program. This is similar to what I was suggesting in harrop egglog. forall ((x = y) -> p = q) -> \x p = \y q structural vs generic equality.

Anti abstracting - if F is only applied to things it can’t contain.

Functions-as-constructors higher-order uniﬁcation:extended pattern uniﬁcatio DSP mathing. FCU unification hamana sol https://www.cs.gunma-u.ac.jp/~hamana/

What is the problem with pure alpha matching? de Bruijn indexing makes it feel like it should just be ordinary structural matching. Here’s the problem though. What is the scope of the pattern variables? If you only use the pattern variable once, maybe not a problem. Ok linear patterns. But then if you’re matching in order to instantiate this variable into something

match \ F with \0. If we make F = 0 that’s ok \ F F with \ 0 0 is ok also becaoue both instances of F are in scope of the same thing The rewrite rule \ F -> \ F is highly fishy though.
Perhaps it is best to use named variables rule : \x F -> \y F matched with \z. z First off match fails since \x. _ != \z. _ ok but then what about alpha renaming matchee to \x. x Then we get F = x. Fine. But then the other side gets \y. x where x wasn’t even in scope?

If everything is under the binder somehow (and it isn’t entirely clear what this means. We internalize rules as bodies of lambdas? Rules here are not implications. Maybe they are pseudo equalities?) \x. (F -> F)

Logically, the pattern variables could be considered existentially quantified on the exterior of the rule ex F. \x F -> \y F. This is possibly to match. F can only match things that already are around (in the signature) as the point of ex F.

Raising

A Logic Programming Language with Lambda-Abstraction, Function Variables, and Simple Unification - Miller

Higher-Order Dynamic Pattern Unification for Dependent Types and Records - Andreas Abel and Brigitte Pientka

MLTS

# Pattern Matching

Arguably pattern matching should be it’s own article. Depending on which you see first, you may consider unification two way pattern matching or pattern matching as one way unification. I think pattern matching is the much simpler topic

# Resources

adam gundry literate haskell “(for the free theory, abelian groups and higher-order pattern unification)” goes along with thesis

What is the pattern fragment? L_lambda subset “existential variables” applied to unique bound variables. reminscent of haskell pattern matching using distinct variables

http://conal.net/papers/elliott90.pdf conal elliott’s thesis

Jozef g explanation

https://conservancy.umn.edu/bitstream/handle/11299/57268/Qi_umn_0130E_10758.pdf?sequence=1 lambda prolog implementation


text:
# Analyse:Jem/Fragment 005 04

32.145Seiten in
diesem Wiki

 Typus Verschleierung Bearbeiter Graf Isolan Gesichtet
Untersuchte Arbeit:
Seite: 5, Zeilen: 4-11, 15-17
Quelle: Sirignano 1999
Seite(n): 4, Zeilen: 3-10, 13-15
Surface tension will tend to minimize the droplet surface area, given its volume, resulting in a spherical shape for sufficiently small droplets. The size of a spherical droplet is represented by its diameter d. In most sprays, droplets of many sizes will exist. Droplet breakup, droplet coalescence, vaporization, and condensation will cause a temporal variation in droplet sizes. A distribution of the instantaneous diameter f(d) is typically used to describe a spray. The number distribution f0(0) gives the frequency of droplets possessing a certain diameter. [...] f{d) will not be a continuous function. However, for a spray with many droplets the function is well approximated as a continuously varying function Surface tension will tend to minimize the droplet surface area, given its volume, resulting in a spherical shape for sufficiently small droplets. The size of a spherical droplet will be represented most commonly by its diameter d or radius R. In most sprays, droplets of many different sizes will exist. Vaporization, condensation, droplet coalescence, and droplet shattering will cause a temporal variation in droplet sizes. For a spray, a distribution function of the instantaneous diameter f(d) is typically used to describe a spray. This function gives the number of droplets possessing a certain diameter. [...] In practice, f(d) will not be a continuous function. However, for a spray with many droplets (millions can be common) the function is well approximated as a continuously varying function.
 Anmerkungen Though mostly identical nothing has been marked as a citation. Sichter (Graf Isolan)


text:
Integral, why antiderivative is area under curve

1. Jun 7, 2014

2. Jun 7, 2014

kidsasd987

well, no it makes sense. sorry. I will delete this thread


text:
# Radon-Nikodym derivative as a limit of ratios

This question is related to Radon-Nikodym derivatives as limits of ratios.

Let $F$, $G$ be sigma-finite measures (or at least probability measures) on $\mathbb{R}$ such that $F \ll G$.

The theorem quoted in the link tells that the Radon-Nikodym derivative checks
$$\frac{\mathrm{d}F}{\mathrm{d}G} (x) = \lim_{h\to 0^+} \frac{F(x-h, x+h)}{G(x-h, x+h)}$$
for $G$-almost every $x$.

Do we have a similar equality with one-sided balls? In other words, is the following equality
$$\frac{\mathrm{d}F}{\mathrm{d}G} (x) = \lim_{h\to 0^+} \frac{F [x, x+h)}{G [x, x+h)}$$
true for $G$-almost every $x$?

Thank you very much.


text:
# VBA Class to persist and restore Excel Application properties

Very often on Stack Overflow, and even on Code Review, I've seen questions and answers that have code that begins by persisting Excel properties like DisplayAlerts and ScreenUpdating to public or private variables, and the restores them at the end of the procedure.

Public bScreenUpdating As Boolean
Public bEnableEvents   As Boolean
Public xlCalc          As XlCalculation

Public Sub PersistAppSettings()
bScreenUpdating = Application.ScreenUpdating
bEnableEvents = Application.EnableEvents
xlCalc = Application.Calculation
End Sub

Public Sub DisableAppSettings()
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
End Sub

Public Sub RestoreAppSettings()
With Application
.ScreenUpdating = bScreenUpdating
.EnableEvents = bEnableEvents
.Calculation = xlCalc
End With
End Sub

That works well enough when the procedure is viewed in isolation, but it mightn't work very well once the call stack gets deeper. That's potentially a lot of private variables to declare and assign, and it can quickly get confusing about when and where properties are set and unset.

Also, there are at least 4 properties that are regularly persisted, but usually only 3 of the 4 are persisted. Namely:

Calculation, DisplayAlerts, EnabledEvents and ScreenUpdating

Furthermore, if the restore procedure is never called, due to an error or code branching, then the settings are never restored.

The solution? Use a class. I've written a class, and a test harness that shows how it can be used in a stack, and without explicitly restoring the properties. The class exposes properties that allow you to disable certain Excel properties from being restored, and a series of constants allow you to define the default behaviour of the class.

I'd appreciate a review of the class and the test harness. Are there other Excel Properties that could be added?

Class Module: CExcelProperties

'These constants define the default restoration behaviors for the class
Private Const DEFAULT_RESTORE_CALCULATION = True
Private Const DEFAULT_RESTORE_ENABLE_EVENTS = True
Private Const DEFAULT_RESTORE_SCREEN_UPDATING = True

'Set this to true to ensure a persisted state is restored, even if the consumer forgets to restore
Private Const RESTORE_ON_TERMINATE = True

'Private members stored in a Type
Private this As TMembers

Private Type TMembers
Calculation As XlCalculationState
EnableEvents As Boolean
ScreenUpdating As Boolean
RestoreCA As Boolean
RestoreDA As Boolean
RestoreEE As Boolean
RestoreSU As Boolean
IsPersisted As Boolean
IsRestored As Boolean
End Type

'Set the default restoration behaviours on intialize
Private Sub Class_Initialize()
this.RestoreCA = DEFAULT_RESTORE_CALCULATION
this.RestoreEE = DEFAULT_RESTORE_ENABLE_EVENTS
this.RestoreSU = DEFAULT_RESTORE_SCREEN_UPDATING
End Sub

'By default, restore the settings if we didn't do it explicitly
Private Sub Class_Terminate()
If this.IsPersisted And Not this.IsRestored And RESTORE_ON_TERMINATE Then
Me.Restore
End If
End Sub

Public Property Get RestoreCalculation() As Boolean
RestoreCalculation = this.RestoreCA
End Property

Public Property Let RestoreCalculation(Value As Boolean)
this.RestoreCA = Value
End Property

Public Property Get RestoreDisplayAlerts() As Boolean
End Property

Public Property Let RestoreDisplayAlerts(Value As Boolean)
this.RestoreDA = Value
End Property

Public Property Get RestoreEnableEvents() As Boolean
RestoreEnableEvents = this.RestoreEE
End Property

Public Property Let RestoreEnableEvents(Value As Boolean)
this.RestoreEE = Value
End Property

Public Property Get RestoreScreenUpdating() As Boolean
RestoreScreenUpdating = this.RestoreSU
End Property

Public Property Let RestoreScreenUpdating(Value As Boolean)
this.RestoreSU = Value
End Property

Public Sub Save()
If Not this.IsPersisted Then
'Save all of the settings
With Application
this.Calculation = .Calculation
this.EnableEvents = .EnableEvents
this.ScreenUpdating = .ScreenUpdating
End With
this.IsPersisted = True
Else
Err.Raise -1000, "CExcelProperties", "Properties have already been persisted."
End If
End Sub

Public Sub Restore()
'Only restore the settings that we want restored
'(which by default is all of them)
With Application
If this.RestoreCA Then
.Calculation = this.Calculation
End If
If this.RestoreDA Then
End If
If this.RestoreEE Then
.EnableEvents = this.EnableEvents
End If
If this.RestoreSU Then
.ScreenUpdating = this.ScreenUpdating
End If
End With
this.IsRestored = True
End Sub

Standard Module:

Sub TestHarness()

Dim cProps As CExcelProperties

Set cProps = New CExcelProperties

'Save the current properties
cProps.Save

'Run something that further adjusts the Application properties
Call SubProcess

cProps.Restore

End Sub

Sub SubProcess()

Dim cProps As CExcelProperties

Set cProps = New CExcelProperties

'Save the current properties
cProps.Save

'Limit the restoration to exclude calculation
cProps.RestoreCalculation = False

'Deliberately don't restore, and the terminate event should restore the properties for us

End Sub

• I love this. Definitely going to have to make me one of these ^^
– Kaz
Jan 17, 2016 at 13:58
• Might consider Application.Visible as well. I change that one from time to time and would benefit from it resetting correctly if the code fails. Jan 28, 2016 at 15:56
• I would add this property too to have a better visual for dashboards or an interactive sheet with charts or shapes etc: Application.DisplayFormulaBar
– Ibo
Oct 9, 2019 at 20:39

I like the idea very much - encapsulating this concern in its own class is very OOP and certainly helps writing cleaner VBA.

I like that you're wrapping all fields in a private type, leaving only this as a private field, which makes implementing (and more importantly, reading!) the properties a pleasure. I would have made the private type's member names match the properties identically though: RestoreCA and the other abbreviated members feel a bit sloppy, there's not really a reason to not spell them out completely. Doing so would have been perfectly consistent.

I'm not sure why RESTORE_ON_TERMINATE is a constant rather than a configurable property though; code shouldn't need to change, especially not for changing a constant value. Rename it to DEFAULT_RESTORE_ON_TERMINATE and add the corresponding members, and you're never going to need to change it.

I think I would nest the condition in Class_Terminate, to check for this.RestoreOnTerminate and skip the other checks entirely when it's false.

I don't think any of the comments provide any value - your code is clear and readable, and speaks for itself already; the comments are somewhat redundant, I'd remove them.

The name Save isn't consistent with the terminology you're using, I'd rename it to Persist... but either is somewhat confusing, since you're not physically persisting anything, merely remembering values for the lifetime of the object - but Remember would be even more awkward, so you're forgiven ;-)

The With blocks are fine, but I wouldn't have them... but this might only be because I dislike additional nesting levels more than repetitive/explicit calls to the same object. Or it could be my C# eyes being used to such explicit calls. Or it could be just me not liking the VB With keyword at all - in that case don't mind me, your code is fine.

I don't like the hard-coded -1000 error number there. A smart little ducky once showed me a neat little trick that stuck with me:

Public Enum ExcelPropertiesError
End Enum

And now you can do this:

Err.Raise Error_AlreadyInitialized '...

And the client code that's handling it can use the enum instead of hard-coding error numbers everywhere, and if you have more errors to raise, you just add an enum member and VBA automatically makes it vbObjectError + 43 :-)

Your tests are insufficient. Get Rubberduck and write actual unit tests that cover all execution paths: you want one test to cover one thing, or rather, you want each test to have one reason to fail - and more importantly you want your tests to fail when something changes in the class under test, that changes the behavior that the test is documenting.

For example, you'll want a test that fails when Error_AlreadyInitialized isn't raised when you call Save twice.

You'll want a test for each property you're persisting, that fails when the getter doesn't return the value that was persisted; you'll want a test for each getter again, that fails when it doesn't return the expected value after it was saved and then modified.

Also, you'll want a test that covers this nasty gotcha:

Sub DoSomething()
Dim props As New CExcelProperties
props.Save
'does it restore?
End Sub

You'll also want to test what happens when more than once instance is alive at different depths in the call stack; you might want to consider making the class have a PredeclaredId and living inside a separate project than the client code that uses it, so that is can't be instantiated and every call is made on the same, default instance - how would the Terminate handler deal with that?

Nitpicks:

• Call is obsolete, forget it even exists. Use the modern implicit call syntax for calling functions and procedures instead:

SubProcess 'instead of Call SubProcess

• The value parameter of each getter is implicitly passed ByRef, and should be passed ByVal. That's something Rubberduck lets you fix with a single click.

• The constants were designed so that a developer could alter the default behaviors without having to edit any code. It's logical, for my workload, to save and restore the calculation property, but it mightn't be a property that you want to change, or want to have to turn off every time, so the constants were a way of making the class adaptable to a developer's preferred default behavior. I like your point about the Restore on Terminate being exposed as a property. I actually added the Terminate event in the CR textbox, so I wasn't in IDE/OOP mentality when I added it. Jan 17, 2016 at 8:57
• Likewise the members of the this type, and their usage, were typed in the CR textbox, so abbreviating them was easier than typing them in full without Intellisense. So yes, the Type members should match the property names. Jan 17, 2016 at 9:00
• I've used your error numbering approach in my own implementation, but I wanted to keep the example focused on the persistence. Adding in a bunch of error handling is necessary, but I didn't want it to clutter the code. Jan 17, 2016 at 9:03
• I believe your nasty Initialize gotcha is the issue I added to RubberDuck earlier! Jan 17, 2016 at 9:15
• Ideally you put up your actual code for review, so as to avoid "yes but my real code does X" replies ;-) ...and yeah, that gotcha is something Rubberduck should warn about; I'm just saying, tests should document a class' behavior/specs, so when all tests pass you know it's working as intended, and you know what the intent is just by looking at test names, not by looking at the class' implementation. Jan 17, 2016 at 14:18


text:
On the Integrability of Geodesic Flows of Submersion Metrics

@article{Jovanovic2002OnTI,
title={On the Integrability of Geodesic Flows of Submersion Metrics},
author={B. Jovanovic},
journal={Letters in Mathematical Physics},
year={2002},
volume={61},
pages={29-39}
}
• B. Jovanovic
• Published 2002
• Mathematics, Physics
• Letters in Mathematical Physics
Suppose we are given a compact Riemannian manifold (Q,g) with a completely integrable geodesic flow. Let G be a compact connected Lie group acting freely on Q by isometries. The natural question arises: will the geodesic flow on Q/G equipped with the submersion metric be integrable? Under one natural assumption, we prove that the answer is affirmative. New examples of manifolds with completely integrable geodesic flows are obtained.
8 Citations
Magnetic flows on homogeneous spaces
• Physics, Mathematics
• 2006
We consider magnetic geodesic flows of the normal metrics on a class of homogeneous spaces, in particular (co)adjoint orbits of compact Lie groups. We give the proof of the non-commutativeExpand
Integrable geodesic flows on Riemannian manifolds: Construction and Obstructions
• Mathematics, Physics
• 2003
This paper is a review of recent and classical results on integrable geodesic flows on Riemannian manifolds and topological obstructions to integrability. We also discuss some open problems.
Torus Actions and Integrable Systems
This is a survey on natural local torus actions which arise in integrable dynamical systems, and their relations with other subjects, including: reduced integrability, local normal forms, affineExpand
Partial reductions of Hamiltonian flows and Hess?Appel'rot systems on SO(n)
We study reductions of the Hamiltonian flows restricted to their invariant submanifolds. As examples, we consider partial Lagrange–Routh reductions of the natural mechanical systems such as geodesicExpand
Symmetries and integrability
This is a survey on finite-dimensional integrable dynamical sys- tems related to Hamiltonian G-actions. Within a framework of noncommu- tative integrability we study integrability of G-invariantExpand
0 60 90 05 v 1 2 S ep 2 00 6 Magnetic Flows on Homogeneous Spaces ∗
• 2008
We consider magnetic geodesic flows of the normal metrics on a class of homogeneous spaces, in particular (co)adjoint orbits of compact Lie groups. We give the proof of the non-commutativeExpand
Some multidimensional integrable cases of nonholonomic rigid body dynamics
In this paper we study the dynamics of the constrained $n$--dimensional rigid body (the Suslov problem). We give a review of known integrable cases in three dimensions and present their higherExpand
A pr 2 00 3 Some multidimensional integrable cases of nonholonomic rigid body dynamics ∗
In this paper we study the dynamics of the constrained n–dimensional rigid body (the Suslov problem). We give a review of known integrable cases in three dimensions and present their higherExpand

References

SHOWING 1-10 OF 21 REFERENCES
Integrable geodesic flows on the suspensions of toric automorphisms
• Mathematics
• 1999
For any toric automorphism with only real eigenvalues a Riemannian metric with an integrable geodesic flow on the suspension of this automorphism is constructed. A qualitative analysis of such a flowExpand
On the topology of manifolds with completely integrable geodesic flows
We show that if M is a compact simply connected Riemannian manifold whose geodesic flow is completely integrable with periodic integrals, then M is rationally elliptic, i.e. the rational homotopy ofExpand
Noncommutative Integrability, Moment Map and Geodesic Flows
• Mathematics, Physics
• 2001
The purpose of this paper is to discuss the relationship betweencommutative and noncommutative integrability of Hamiltonian systemsand to construct new examples of integrable geodesic flowsExpand
New examples of manifolds with completely integrable geodesic flows
• Mathematics
• 1990
Abstract We construct Riemannian manifolds with completely integrable geodesic flows, in particular various nonhomogeneous examples. The methods employed are a modification of Thimm′s method,Expand
Integrable geodesic flows on homogeneous spaces
• Mathematics
• 2001
It is proved that the geodesic flow of a bi-invariant metric on an arbitrary homogeneous space of a compact Lie group is Liouville-integrable in the non-commutative sense.
Integrable geodesic flows with positive topological entropy
• Mathematics, Physics
• 2000
An example of a real-analytic metric on a compact manifold whose geodesic flow is Liouville integrable by $C^\infty$ functions and has positive topological entropy is constructed.
New examples of manifolds with strictly positive curvature
Berger [-3], Wallach [10] and Berard Bergery [2] have classified all simply connected smooth manifolds which allow a homogeneous Riemannian metric of strictly positive curvature. Besides the rank oneExpand
Generalized Liouville method of integration of Hamiltonian systems
• Mathematics
• 1978
In this paper we shall show that the equations of motion of a solid, and also Liouville's method of integration of Hamiltonian systems, appear in a natural manner when we study the geometry of levelExpand
Theory of Tensor Invariants of Integrable Hamiltonian Systems. II. Theorem on Symmetries and Its Applications
Abstract: The theorem on symmetries is proved that states that a Liouville-integrable Hamiltonian system is non-degene\-rate in Kolmogorov's sense and has compact invariant submanifolds if and onlyExpand
Annals of global analysis and geometry
• Mathematics
• 1983
▶ Examines global problems of geometry and analysis ▶ Looks at interactions between differential geometry and global analysis and their application to problems of theoretical physics ▶ Contributes toExpand


text:
# Tags

A tag is a keyword or label that categorizes your question with other, similar questions. Using the right tags makes it easier for others to find and answer your question.

 Type to find tags:
 permutations× 1894 For questions related to permutations, which can be viewed as re-ordering a collection of objects. operator-theory× 1869 the branch of functional analysis that focuses on bounded linear operators, but it includes closed operators and nonlinear operators. Operator theory is also concerned with the stu… recurrence-relations× 1854 Questions regarding functions defined recursively, such as the Fibonacci sequence. algebraic-number-theory× 1750 Questions related to the algebraic structure of algebraic integers manifolds× 1726 For questions on manifolds of dimension $n$, a topological space that near each point resembles $n$-dimensional Euclidean space. computer-science× 1655 All mathematical questions about computer science, including theoretical computer science, formal methods, verification, and artificial intelligence. For questions about Turing computability, please u… galois-theory× 1607 Galois theory allows one to reduce certain problems in field theory, especially those related to field extensions, to problems in group theory. For questions about field theory and not Galois theory, … power-series× 1602 Questions about the properties of functions of the form $\sum_{n=0}^{\infty}a_n x^n$, where the $a_n$ are real or complex numbers, and $x$ is real or complex (or more generally an element of a Banach … binomial-coefficients× 1587 Coefficients involved in the Binomial Theorem. $\binom{n}{k}$ counts the subsets of size $k$ of a set of size $n$. random-variables× 1561 Questions about maps from a probability space to a measure space which are measurable. special-functions× 1554 Questions on special functions, useful functions that frequently appear in pure and applied mathematics (usually not including "elementary" functions). convex-analysis× 1531 the study of properties of convex sets and convex functions. For questions about optimization of convex functions over convex sets, please use the (convex-optimization) tag. hilbert-spaces× 1530 For question involving Hilbert spaces, that is, complete normed spaces whose norm comes from an inner product. self-learning× 1530 Questions about studying mathematics without formal instruction. differential-topology× 1521 the field dealing with differentiable functions on differentiable manifolds. It is closely related to differential geometry and together they make up the geometric theory of d… improper-integrals× 1472 Questions involving improper integrals, defined as the limit of a definite integral as an endpoint of the interval of integration approaches either a specified real number or ∞ or −∞, or as both endpo… banach-spaces× 1462 a complete normed vector space: A vector space equipped with a norm such that every Cauchy sequence converges. definition× 1441 the core of mathematical precision; they come to answer "what is X" in mathematics. Into this category fit questions regarding equivalence of definitions; clarifications regarding comp… physics× 1311 Questions related to mathematical physics which include application of mathematics to problems in physics and the development of mathematical methods suitable for such applications and for the formula… intuition× 1265 the instinctive impression regarding mathematical ideas which originate naturally without regard to formal mathematical proofs. It may or may not stem from a cognitive ration… taylor-expansion× 1261 Questions regarding the Taylor series expansion of univariate and multivariate functions, including coefficients and bounds on remainders. A special case is also known as the Maclaurin series. diophantine-equations× 1256 Questions on finding integer/rational solutions of polynomial equations. lie-groups× 1243 a group (in the sense of abstract algebra) that is also a differentiable manifold, such that the group operations (addition and inversion) are smooth, and so we can study them with diff… contest-math× 1239 Problems from or inspired by mathematics competitions. Questions regarding mathematics competitions. dynamical-systems× 1234 In dynamical systems, the motion of a particle in some geometric space, governed by some time dependent rules, is studied. The process can be discrete (where the particle jumps from point to point) or… recreational-mathematics× 1230 Puzzles, curiosities, brain teasers and other mathematics done "just for fun". divisibility× 1200 for questions about divisibility, that is, determining when one thing is a multiple of another thing. normal-distribution× 1199 Questions on the Gaussian, or normal probability distribution, which may include multi-dimensional normal distribution. euclidean-geometry× 1176 geometry assuming the parallel postulate of Euclid: in a plane, given a line and a point not on that line, there is exactly one line parallel to the given line through the given point. fourier-series× 1159 Questions on Fourier series, the expansion of a function in terms of basis functions that satisfy an orthogonality relation. Usually, complex exponentials/sines and cosines are used. lie-algebras× 1141 For questions about Lie algebras, an algebraic structure whose main use is in studying geometric objects such as Lie groups and differentiable manifolds. compactness× 1136 is for questions about compactness and its many variants (e.g. sequential compactness, countable compactness) as well locally compact spaces; compactifications (e.g. one-point, Sto… graphing-functions× 1128 Questions regarding the plotting or graphing of functions. Questions about graphs with vertices and edges should use the (graph-theory) tag instead. (STUB) circle× 1114 Questions on the circle, a curve composed of points that are at a fixed distance from a fixed point. relations× 1104 intended for questions concerning partial orders, equivalence relations, properties of relations (transitive, symmetric,...), composition of relations and similar stuff. More-or-less the t… exponential-function× 1100 For question involving exponential functions and questions on exponential growth or decay.