text:
namespace AKW_Simulator
{
    partial class AboutBox
    {
        /// <summary>
        /// Erforderliche Designervariable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;

        /// <summary>
        /// Verwendete Ressourcen bereinigen.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Vom Windows Form-Designer generierter Code

        /// <summary>
        /// Erforderliche Methode für die Designerunterstützung.
        /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
        /// </summary>
        private void InitializeComponent()
        {
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutBox));
            this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
            this.logoPictureBox = new System.Windows.Forms.PictureBox();
            this.labelProductName = new System.Windows.Forms.Label();
            this.labelVersion = new System.Windows.Forms.Label();
            this.labelCopyright = new System.Windows.Forms.Label();
            this.labelCompanyName = new System.Windows.Forms.Label();
            this.okButton = new System.Windows.Forms.Button();
            this.description_txtbx = new System.Windows.Forms.TextBox();
            this.tableLayoutPanel.SuspendLayout();
            ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit();
            this.SuspendLayout();
            //
            // tableLayoutPanel
            //
            this.tableLayoutPanel.ColumnCount = 2;
            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33F));
            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 67F));
            this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 0);
            this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0);
            this.tableLayoutPanel.Controls.Add(this.labelVersion, 1, 1);
            this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 2);
            this.tableLayoutPanel.Controls.Add(this.labelCompanyName, 1, 3);
            this.tableLayoutPanel.Controls.Add(this.okButton, 1, 5);
            this.tableLayoutPanel.Controls.Add(this.description_txtbx, 1, 4);
            this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
            this.tableLayoutPanel.Location = new System.Drawing.Point(9, 9);
            this.tableLayoutPanel.Name = "tableLayoutPanel";
            this.tableLayoutPanel.RowCount = 6;
            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
            this.tableLayoutPanel.Size = new System.Drawing.Size(417, 265);
            this.tableLayoutPanel.TabIndex = 0;
            //
            // logoPictureBox
            //
            this.logoPictureBox.Dock = System.Windows.Forms.DockStyle.Fill;
            this.logoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("logoPictureBox.Image")));
            this.logoPictureBox.Location = new System.Drawing.Point(3, 3);
            this.logoPictureBox.Name = "logoPictureBox";
            this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 6);
            this.logoPictureBox.Size = new System.Drawing.Size(131, 259);
            this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
            this.logoPictureBox.TabIndex = 12;
            this.logoPictureBox.TabStop = false;
            //
            // labelProductName
            //
            this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill;
            this.labelProductName.Location = new System.Drawing.Point(143, 0);
            this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
            this.labelProductName.MaximumSize = new System.Drawing.Size(0, 17);
            this.labelProductName.Name = "labelProductName";
            this.labelProductName.Size = new System.Drawing.Size(271, 17);
            this.labelProductName.TabIndex = 19;
            this.labelProductName.Text = "Produktname";
            this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            //
            // labelVersion
            //
            this.labelVersion.Dock = System.Windows.Forms.DockStyle.Fill;
            this.labelVersion.Location = new System.Drawing.Point(143, 26);
            this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
            this.labelVersion.MaximumSize = new System.Drawing.Size(0, 17);
            this.labelVersion.Name = "labelVersion";
            this.labelVersion.Size = new System.Drawing.Size(271, 17);
            this.labelVersion.TabIndex = 0;
            this.labelVersion.Text = "Version";
            this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            //
            // labelCopyright
            //
            this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill;
            this.labelCopyright.Location = new System.Drawing.Point(143, 52);
            this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
            this.labelCopyright.MaximumSize = new System.Drawing.Size(0, 17);
            this.labelCopyright.Name = "labelCopyright";
            this.labelCopyright.Size = new System.Drawing.Size(271, 17);
            this.labelCopyright.TabIndex = 21;
            this.labelCopyright.Text = "Copyright";
            this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            //
            // labelCompanyName
            //
            this.labelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill;
            this.labelCompanyName.Location = new System.Drawing.Point(143, 78);
            this.labelCompanyName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
            this.labelCompanyName.MaximumSize = new System.Drawing.Size(0, 17);
            this.labelCompanyName.Name = "labelCompanyName";
            this.labelCompanyName.Size = new System.Drawing.Size(271, 17);
            this.labelCompanyName.TabIndex = 22;
            this.labelCompanyName.Text = "Firmenname";
            this.labelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            //
            // okButton
            //
            this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
            this.okButton.Location = new System.Drawing.Point(339, 239);
            this.okButton.Name = "okButton";
            this.okButton.Size = new System.Drawing.Size(75, 23);
            this.okButton.TabIndex = 24;
            this.okButton.Text = "&OK";
            this.okButton.Click += new System.EventHandler(this.okButton_Click);
            //
            // description_txtbx
            //
            this.description_txtbx.Dock = System.Windows.Forms.DockStyle.Fill;
            this.description_txtbx.Location = new System.Drawing.Point(140, 107);
            this.description_txtbx.Multiline = true;
            this.description_txtbx.Name = "description_txtbx";
            this.description_txtbx.ReadOnly = true;
            this.description_txtbx.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
            this.description_txtbx.Size = new System.Drawing.Size(274, 126);
            this.description_txtbx.TabIndex = 25;
            //
            // AboutBox
            //
            this.AcceptButton = this.okButton;
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(435, 283);
            this.Controls.Add(this.tableLayoutPanel);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
            this.MaximizeBox = false;
            this.MinimizeBox = false;
            this.Name = "AboutBox";
            this.Padding = new System.Windows.Forms.Padding(9);
            this.ShowIcon = false;
            this.ShowInTaskbar = false;
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
            this.Text = "AboutBox";
            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.AboutBox_FormClosing);
            this.tableLayoutPanel.ResumeLayout(false);
            this.tableLayoutPanel.PerformLayout();
            ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit();
            this.ResumeLayout(false);

        }

        #endregion

        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
        private System.Windows.Forms.PictureBox logoPictureBox;
        private System.Windows.Forms.Label labelProductName;
        private System.Windows.Forms.Label labelVersion;
        private System.Windows.Forms.Label labelCopyright;
        private System.Windows.Forms.Label labelCompanyName;
        private System.Windows.Forms.Button okButton;
        internal System.Windows.Forms.TextBox description_txtbx;
    }
}

redpajama_set_name: RedPajamaGithub


text:
« Episode 39: Interview with Curse of Cassandra!
2014 Review: Epic Growth, New Opportunities, and a Little Self Discovery. »
Comic Review: The City on the Edge of Forever – Issue # 5
January 1, 2015 by Coldspring
The City on the Edge of Forever – Issue # 5
An Uncommon Geek Review
And at last, the mini-series draws to a close.
The past four issues have delivered an interesting "what-if" to me. It's been refreshing to see a darker, rawer take on a beloved episode of Star Trek, and to get a taste of why so many people adore the writing of one Harlan Ellison. The man's work is phenomenal, there is no disputing it in my book.
Yet. After reading the conclusion of Issue # 5, I am left feeling rather flat. My ultimate verdict is that it is a good thing the screenplay was edited into what ended up on screen. The filmed version is superior, and that's not nostalgia talking.
This story, in its unedited form, is still great. The artwork is fantastic, and here in this issue are some of the best renderings of the Enterprise that I've ever seen in a comic. But, the ending, which is the most powerful, gut-wrenching part of "City," is just plain… weird, in the comic. The drama is really gutted by reducing Kirk to a passive role in Edith's death. Beckwith's doom is kind of interesting conceptually, but doesn't make sense even under the rules which this story plays by, and I came away from it with a very "meh" sort of feeling. Finally, the closing dialogue between Kirk and Spock feels really out of place. They don't seem like as close friends as we know them on the show. And really, the drawn out final scene feels shallow compared to the haunting simplicity of Kirk's final line in the filmed version.
IDW's "The City on the Edge of Forever" is still a great comic series, and I would be totally on-board with seeing more of the old stories given a fresh lease on life. I'd like to see some of the unused scripts given a chance in comic form too, though it needs to follow the example of "City" and keep true to The Original Series, and not the J.J. Abrams-verse drek that we've been forced to put up with for the last few years.
Was Harlan Ellison justifiably upset with the re-writes to his script? Perhaps. As a writer, I can imagine that I'd be pretty upset if someone made a lot of changes to one of my stories, especially without my input. But, on the other hand, Harlan wasn't just writing an original story with "City." He was writing for Star Trek, which was already the creative baby of another person. I don't think it's unreasonable to expect the script to be changed to better fit the already existing show. The filmed version is a masterwork, and Harlan Ellison's wonderful writing still shines through brilliantly, in this reviewer's opinion.
So there you have it. I prefer the TV episode to the comic, but I would still recommend this mini-series to any Star Trek or science fiction fan. And I encourage you to read through these issues for yourself, and make up your own mind: is the re-write better? Is Harlan's original script superior? Either way, you still get to enjoy an awesome, beautiful story that remains powerful and relevant to this day.
Disclaimer: Image courtesy of Memory Alpha.
Posted in comics, Review, Science Fiction, Star Trek | Tagged comic review, Harlan Ellison, IDW, Juan Ortiz, Juan Ortiz cover, star trek, Star Trek comics, Star Trek: The Original Series, The City on the Edge of Forever, The City on the Edge of Forever comic, uncommon geek comic review, Uncommon Geek Star Trek | 2 Comments
on January 3, 2015 at 7:49 pm | Reply Vinton
Not sure if I address you as Neo or Mr. Real. One of the things Ellison has mentioned — in regards to writing in an established "universe" — is that people forget his script was written for the first year, during the time that said "universe" was still being established. Actors were still "figuring out" their takes on the characters, first year scripts were still being written, the first shows were still being filmed, and Rodenberry, who didn't get any more original than "wagon train to the stars' in his original concept (other writers, consultants, even actors like Deforest Kelly, etc., brought the nuance) was mostly flying by the seat of his pants, too. So regardless of how one feels (yay or nay) about his script, criticism that begins from that point — as yours does near the end of this review — is missing the mark.
on January 3, 2015 at 8:27 pm | Reply neoethereal
Thanks for the comment, and your alternative take.
If I may retort, however, one must consider that even though Star Trek was all over the place with continuity and consistency in the first season, it was still more firmly established than a story being written as a one-off or for a purely episodic series like The Twilight Zone. Also consider that "The City on the Edge of Forever" was the second to last episode of the first season. It, of course, was written at around the same time as earlier episodes, but by the time the episode was filmed, the Trek universe and the actors' nuances were already very well established. In that context, would an unedited Harlan script have still fit?
What's more, even if you grant that the constraint of writing for an established universe is not really so much a constraint, due to Roddenberry being all over the place with his concept, one must also consider that the story was written for TV. Would the story that made it into these comics have fit within 50 minutes of television? Would the most important elements of the story still have survived the transition without Gene Coon and Gene Roddenberry making the changes that they did? These are things to keep in mind as well.

redpajama_set_name: RedPajamaCommonCrawl


text:
Contributions are welcome, and they are greatly appreciated! Every
little bit helps, and credit will always be given.

You can contribute in many ways:

## Types of Contributions

### Report Bugs

Report bugs at <https://github.com/n8henrie/eyeflask/issues>.

If you are reporting a bug, please include:

-   Your operating system name and version.
-   Any details about your local setup that might be helpful in
    troubleshooting.
-   Detailed steps to reproduce the bug.

### Fix Bugs

Look through the GitHub issues for bugs. Anything tagged with "bug" is
open to whoever wants to implement it.

### Implement Features

Look through the GitHub issues for features. Anything tagged with
"feature" is open to whoever wants to implement it.

### Write Documentation

Eyeflask could always use more documentation, whether as part of the official
EyeFlask docs, in docstrings, or even on the web in blog posts, articles, and
such.

### Submit Feedback

The best way to send feedback is to file an issue at
<https://github.com/n8henrie/eyeflask/issues>.

If you are proposing a feature:

-   Explain in detail how it would work.
-   Keep the scope as narrow as possible, to make it easier to
    implement.
-   Remember that this is a volunteer-driven project, and that
    contributions are welcome :)

## Get Started!

Ready to contribute? Here's how to set up EyeFlask
for local development.

1.  Fork the `eyeflask` repo on GitHub.
1.  Clone your fork locally:

        $ git clone git@github.com:your_name_here/eyeflask.git

1.  Install your local copy into a virtualenv. Assuming you have
    python >= 3.4 installed, this is how you set up your fork for
    local development:

        $ cd eyeflask
        $ python3 -m venv venv
        $ source venv/bin/activate
        $ pip install -e .

1.  Create a branch for local development:

        $ git checkout -b name-of-your-bugfix-or-feature

    Now you can make your changes locally.

1.  When you're done making changes, check that your changes pass flake8
    and the tests, including testing other Python versions with tox:

        $ flake8 eyeflask tests
        $ python3 setup.py test
        $ tox

    To get flake8 and tox, just pip install them into your virtualenv.

1.  Commit your changes and push your branch to GitHub:

        $ git add .
        $ git commit -m "Your detailed description of your changes."
        $ git push origin name-of-your-bugfix-or-feature

1.  Submit a pull request through the GitHub website.

## Pull Request Guidelines

Before you submit a pull request, check that it meets these guidelines:

1.  The pull request should include tests if I am using tests in the repo.
1.  If the pull request adds functionality, the docs should be updated.
    Put your new functionality into a function with a docstring, and add
    the feature to the list in README.md
1.  The pull request should work for Python 3.4 and 3.5. If I have included a
    `.travis.yml` file in the repo, check
    <https://travis-ci.org/n8henrie/fauxmo/pull_requests> and make sure that
    the tests pass for all supported Python versions.

## Tips

To run a subset of tests: `py.test tests/test_your_test.py`


text:
A pluggable interface for platform event publishing and subscription.

## Interface

It's important to be able to track events at the platform level to know what's changing where. With
hundreds of services it can be difficult to track or find a way to enforce this across services.
By tracking platform events we can essentially build a platform event correlation system.

```go
type Event interface {
	// publish an event record
	Publish(context.Context, *Record) error
	// subscribe to an event types
	Subscribe(context.Context, Handler, ...string) error
	// Name
	String() string
}

type Record struct {
	Id        string
	Type      string
	Origin    string
	Timestamp int64
	RootId    string
	Metadata  map[string]string
	Data      string
}

func NewEvent(opts ...Option) Event {
	return newOS(opts...)
}
```

## Supported Backends
- [Event service](https://github.com/micro/event-srv)


All our Pelargonium plants are grown in minimum 9cm pots and Streptocarpus in 6.6cm pots. They are well established plants (not plugs), sent in their pots, labelled and packed with care in a cardboard box. Plants can be delivered to the UK and European Union. Outside of these areas please enquire of the possibility of a delivery.
Choose any items that you wish to buy and place in the shopping basket. Complete your order when finished by entering your name and address details. An email will be sent by us confirming receipt of order.
We accept Paypal, cheques / postal orders and bank transfer payments.
Details of postage costs are shown separately.
Plants can be delivered to the UK and European Union. Outside of these areas please enquire of the possibility of a delivery.
For plants that are in stock we can deliver during frost-free periods. Any plant ordered that we feel is not in a saleable condition can be substituted by an agreed alternative or refunded.


This is a game 2 to 1. Here there are race and puzzle. While driving on your way to have questions. As the responses have to choose the direction of travel on the forks. In the case of the correct answer get points. But in the case of wrong - can happen anything! The game has an amazing three-dimensional graphics. Picture a sight for sore eyes! And the game does not brake! However, once a beauty to watch. After a few laps to pass play only a couple of minutes.


text:
\section{INTRODUCTION}

All experimental studies of cosmic rays (CR) of energies above $10^{14}$
 eV are based on an indirect method: properties of the primary particles
are reconstructed on the basis of measured characteristics of
 extensive air showers (EAS), induced by them in the atmosphere.
 The quality of such a reconstruction depends strongly
 on the present understanding of complicated EAS
 physics, especially concerning its backbone -- hadron cascade
 process. By consequence, Monte Carlo (MC) modelization of high energy
 interactions plays an important role in CR investigations.

 Among other hadronic MC generators, employed in EAS simulations,
   the QGSJET model \cite{kal93,kal94,kal97} has been extensively
  used in the field, being applied for projecting new experiments,
  analyzing and interpreting data of various experimental installations.
  Being originally based on the Quark-Gluon String model \cite{kai82}
  picture of high energy interactions, it has been generalized to treat
  nucleus-nucleus interactions \cite{kal93} and semihard processes, using
  so-called "semihard Pomeron" approach \cite{kal94,kal97} (see also
\cite{otw97,dre99,ost02}).

Current work is devoted to another important development of the scheme - a
treatment of non-linear interaction effects. The latter are described by
so-called enhanced Pomeron diagrams \cite{gri68,gri69,kan73,car74}
and proved to be of extreme importance for a correct treatment of very
 high energy hadronic interactions. The approach proposed here is based on the
 assumption that corresponding effects are dominated by "soft" (low
 momentum transfer) partonic processes \cite{dre01,ost03}. For the first time,
essential enhanced contributions have been re-summed to all orders,
both for so-called uncut (elastic scattering) diagrams and for various
unitarity cuts of those diagrams, corresponding to particular final states
of the interaction \cite{ost05}. Based on the obtained solutions, a new
hadronic interaction model QGSJET-II has been developed, explicitely treating
the corresponding effects in individual hadronic (nuclear) collisions.

\section{QGSJET MODEL}

QGSJET model treats hadronic and  nuclear collisions
in the framework of Gribov's reggeon approach \cite{gri68,gri69} -- as multiple
scattering processes -- Fig. \ref{multiple},
where individual scattering contributions are
described phenomenologically as Pomeron exchanges.
\begin{figure}[t]
\begin{center}
  \includegraphics[width=7cm,height=2.5cm,angle=0]{pylos1-1.eps}
\end{center}
\vspace*{-1.cm}
   \caption{A general multi-Pomeron contribution to hadron-hadron scattering
amplitude; elementary scattering processes (vertical thick lines)
are described as Pomeron exchanges.\label{multiple}}
\end{figure}
The latter correspond
to microscopic parton (quark and gluon) cascades, which mediate the
interaction between the projectile and the target hadron, and consist of two
parts: "soft" and "semihard" Pomerons -- Fig. \ref{genpom}. The former,
described by the corresponding
eikonal $\chi _{\rm P}(s,b)$, represents a purely "soft"
cascade of partons of low virtualities $|q^2|<Q_0^2$, with $Q_0^2$ being some
chosen virtuality cutoff, whereas the latter, with the eikonal
$\chi _{\rm sh}(s,b)$, corresponds to a cascade which at least partly develops
in a high virtuality ($|q^2|>Q_0^2$) region and is typically represented
by a piece of QCD ladder sandwiched between two soft Pomerons
 \cite{kal94,kal97,otw97}.

Calculating various unitarity cuts of elastic scattering diagrams of
 Fig. \ref{multiple} according to Ab\-ram\-ovskii-Gribov-Kancheli (AGK)
 cutting rules  \cite{agk} one can obtain expressions for total and inelastic
 cross sections as well as for relative probabilities of particular interaction
 configurations, e.g., for a given number of elementary inelastic processes
 ("cut" Pomerons), all being expressed via the total eikonal
$\chi _{\rm tot}(s,b)=\chi _{\rm P}(s,b)+\chi _{\rm sh}(s,b)$.
 This allows in turn to perform a modelization of hadronic
(nuclear) interactions via a MC method  \cite{kal97}: starting from sampling
a particular configuration, at some impact parameter $b$ (nucleon coordinates)
and with some numbers of "cut" soft and semihard Pomerons; performing
energy-momentum sharing between elementary inelastic interactions and between
 soft and hard partonic processes; simulating explicitely perturbative parton
 cascades; and finishing with a hadronization of strings stretched between
 constituent partons (Pomeron "ends") of the projectile and the target, and
 between final on-shell partons resulted from the QCD cascades above.

\begin{figure}[t]
\begin{center}
  \includegraphics[width=7cm,height=2.5cm,angle=0]{pylos1-2.eps}
\end{center}
\vspace*{-1.cm}
   \caption{A "general Pomeron" (l.h.s.) consists of the "soft"
and "semihard" Pomerons - correspondingly the 1st and the
2nd contributions on the r.h.s. \label{genpom}}
\end{figure}

\section{NON-LINEAR EFFECTS}
\begin{figure}[b]
\begin{center}
  \includegraphics[width=7cm,height=2.5cm,angle=0]{pylos1-3.eps}
\end{center}
\vspace*{-1.cm}
   \caption{Contributions to the triple-Pomeron vertex from interactions between
soft and semihard Pomerons.\label{3p-vertex}}
\end{figure}

The above-described scheme is based on the assumption that individual parton
cascades, described as Pomeron exchanges, proceed independently of each other.
This condition cease to be valid in the limit of high energies
and small impact parameters of the interaction, where a large number
of elementary scattering processes occurs and corresponding underlying
parton cascades strongly overlap and interact with each other, the
 effects being described as Pomeron-Pomeron interactions
 \cite{gri68,gri69,kan73,car74}. We make a basic assumption
that the latter are dominated by partonic
processes at comparatively low virtuality scale, $|q^{2}|<Q_{0}^{2}$
\cite{dre01,ost03}.

\begin{figure}[t]
\begin{center}
  \includegraphics[width=7cm,height=2.5cm,angle=0]{pylos1-4.eps}
\end{center}
\vspace*{-1.cm}
   \caption{Recursive equation for a {}``fan'' diagram contribution
    (constituent partons not shown). \label{ffan}}
\end{figure}

Then multi-Pomeron vertexes involve only interactions between soft
Pomerons or between soft "ends" of semihard Pomerons -- Fig. \ref{3p-vertex}.
At not too high energies it is sufficient to consider the
 contributions with just one vertex of that kind.
However, with the energy increasing one has to re-sum all essential
 higher order corrections.

 We start from calculating the "fan" diagram
 contribution, given by a recursive graphical equation of Fig. \ref{ffan}.
In addition, we define a "generalized fan" contribution as shown in
Fig. \ref{freve}; the latter includes also vertexes with both "fans" connected
to the projectile and ones connected to the target. Then,  neglecting
subdominant contributions of Pomeron loops, the final result for
hadron-hadron interaction eikonal can be represented in the graphical form
as shown in Fig. \ref{hheik} \cite{ost05}. Correspondingly,
hadron-hadron elastic scattering
amplitude is now given by the sum of diagrams of Fig. \ref{multiple}, with
simple Pomeron exchanges (vertical lines in the Figure) being replaced by the
full set of diagrams of  Fig. \ref{hheik}.

To calculate probabilities of various interaction configurations one has to
consider all unitarity cuts of the diagrams of  Fig. \ref{hheik} and to re-sum
contributions of cuts of certain types.
The results obtained have been used to construct a new MC procedure
which allows to sample explicitely interaction events of complicated
topologies
and to account for all screening corrections for particular cut Pomeron
configurations \cite{ost05}.

\begin{figure}[t]
\begin{center}
  \includegraphics[width=7cm,height=2.5cm,angle=0]{pylos1-5.eps}
\end{center}
\vspace*{-1.cm}
   \caption{Recursive equation for a "generalized fan" contribution.\label{freve}}
\end{figure}

The treatment of hadron-nucleus and nucleus-nucleus collisions is realized
in a similar way, without introducing any additional parameters. There,
an important aspect is that different Pomerons belonging to the same
enhanced graph
may be coupled to different nucleons of the projectile (target).
As a consequence, non-linear screening effects are stronger in nuclear
case; in particular, this leads to a violation of the superposition picture
for nucleus-induced air showers even for average EAS characteristics
 \cite{pylos2}.

\begin{figure*}[htb]
\begin{center}
  \includegraphics[width=14.5cm,height=2.5cm,angle=0]{pylos1-6.eps}
\end{center}
\vspace*{-1.cm}
   \caption{Total hadron-hadron interaction eikonal, including enhanced
   diagram contributions.\label{hheik}}
\end{figure*}

\section{DISCUSSION}

Apart from the basic development, described above, the new model included
 realistic nuclear density parameterizations, individually
 for each nucleus \cite{kal99},  and more reliable two-component low mass
 diffraction treatment  \cite{kal93}. All model parameters
  have been re-calibrated using a wider set of accelerator data.
  The obtained results for hadron-nucleus interactions and for EAS
 characteristics will be presented elsewhere \cite{pylos2}.
Here we illustrate the importance of Pomeron-Pomeron
 interactions  calculating total proton-proton cross section
both with and without enhanced diagram contributions --
Fig. \ref{sig-pp}.
Correspondingly,  proton structure function (SF)  $F_{2}(x,Q_0^{2})$,
$Q_0^{2}=2$ GeV$^2$,
again calculated with and without
enhanced diagrams,
is shown in Fig. \ref{f2comp} (charm contribution not included).%

It is important to note that the contribution of semihard processes
to the interaction eikonal can no longer be expressed in the usual factorized
form, which was assumed so far in all hadronic MC models.
The non-factorizable contributions arise from graphs
where at least one Pomeron is exchanged in parallel to the parton
hard process, with the simplest example given by the 1st diagram on
the r.h.s. in Fig. \ref{3p-vertex}.
 At the same moment, due to the AGK
 cancellations \cite{agk} such diagrams give zero contribution
to inclusive high-$p_{t}$ jet spectra and the scheme preserves
the QCD factorization picture for  inclusive jet production.

\begin{figure}[t]
\begin{center}
  \includegraphics[width=7cm,height=3.9cm,angle=0]{pylos1-7.eps}
\end{center}
\vspace*{-1.cm}
   \caption{Total $pp$ cross section calculated with (full curve) and without
(dashed curve) enhanced diagram contributions.
The  data are from \cite{cas98}.\label{sig-pp}}
\end{figure}

In conclusion, the new model is based on a consistent treatment of
 enhanced Pomeron diagrams and allows to get agreement between the
 measured hadronic
 cross sections and structure functions and to
account for non-linear interaction effects explicitely
 in individual hadronic and nuclear collisions.

\begin{figure}[t]
\begin{center}
  \includegraphics[width=7cm,height=3.9cm,angle=0]{pylos1-8.eps}
\end{center}
\vspace*{-1.cm}
\caption{Proton SF $F_{2}$ calculated with (full curve) and without (dashed
curve) enhanced diagram contributions.
 The data are from \cite{h1,zeus,nmc}.
\label{f2comp}}
\end{figure}

redpajama_set_name: RedPajamaArXiv


We've talked a lot on this blog about measuring Salt Lake City's PM2.5 pollution, but you may be wondering: What exactly is PM2.5, and what do we mean when we say we are "measuring" the pollution?
Let's start with the observable problem and work backwards to the science: The city is most concerned with its high levels of PM2.5, or small particulate matter, which consists of microscopic particles suspended in air. Unlike the larger PM10 particles which are usually directly emitted, PM2.5 particles tend to be produced chemically and are so small that you could line up about 3000 across the head of a pin. They can therefore easily get into our lungs and cause respiratory irritation and other health issues. They are also a key ingredient in smog. Reducing PM2.5 is a major public health concern, but we can't remove particles that are already there. The only thing we can do is prevent their formation in the first place.
Scientists already know the basic mechanism of secondary PM2.5 formation: gas-phase molecules are emitted into the air (mostly by human activities), and those molecules react with each other over the course of hours or days, growing larger and larger, until they condense into a particle. Then the particle continues to grow as more molecules get pulled into the particle.
During non-inversion conditions, the gas-phase molecules that are emitted from the surface get transported upward and away by wind, so the reaction times are slow and the PM2.5 levels stay low. But during an inversion, the topology and meteorology of Salt Lake City and the surrounding valleys trap those molecules near the surface, making a concentrated stew of pollutants, which accelerates the particle formation process, leading to high PM2.5 (see right). There's nothing we can do about meteorology; the only thing we can do is control the emissions. But which ones? It's not feasible to shut down all human activities during inversions. Also, different industries release different molecules, which form particles at varying rates. We have to make decisions about what emissions make the most sense to regulate, and what will be the most effective at slowing the particle formation.
It's a complicated question. Particles contains millions of individual molecules, of hundreds of different types, and each type of molecule reacts differently. That's a lot of chemical complexity. But we can categorize aerosols into broad types describing their most relevant components, and these categories can give us clues about where the particles came from. For example, a particle that contains a lot of ammonium nitrate (NH4NO3) probably came from reactions between gas phase ammonia (which comes primarily from livestock facilities), and nitric acid (which can come from combustion). A particle that has a lot of organic compounds (lots of carbon and oxygen atoms) is likely to have come from urban emissions, such as cars, home heating or biological activity. Aerosols that contain a lot of chlorine may have come from the Great Salt Lake. Our AMS instrument measures all these categories, while our gas phase instruments (NOxCaRD, Iodide CIMS, and the QCL) measure the gas-phase molecules such as ammonia, nitrogen oxides, and acids.
Some sample data. Note that these data are very preliminary and are subject to change as we finalize calibration factors.
So here's what we mean when we are "measuring the air pollution": We are trying to get an accurate snapshot of the chemical conditions throughout the valleys during varying times during the inversions. We are looking for point sources of emissions (such as farms and power plants), and the distribution of pollutants from more diffuse sources, such as cars in urban areas. We can see how pollutant levels are different on weekdays (when many people drive) and weekends (when they don't), and how the levels are affected by the meteorological conditions. We can also measure the height of the pollution layer, by changing altitude and noting where the number of particles suddenly drops off.
A few hundred feet above the layer.
In the plot above, you can see gas-phase NOx and particulate nitrate, which represent the freshly emitted and chemically oxidized states of nitrogen oxides, during one of our flights. Between 1 and 1:20 pm, we are well within the polluted layer (see picture on the left). At 1:25 we pop out of the layer to cross over into another valley (see picture on the right), and descend back into the layer at 1:45. As you can see, the ratio between gas-phase and particulate phase nitrogen varies depending on where we are, which will give us important information about sources of emissions and how the chemistry is evolving in each place.
The full data set will take a year or more to analyze, but it's already clear to the scientists that we are measuring some very interesting chemistry.