text:
Paul's Online Notes
Home / Calculus II / Vectors / Basic Concepts
Show Mobile Notice Show All Notes Hide All Notes
Mobile Notice
You appear to be on a device with a "narrow" screen width (i.e. you are probably on a mobile phone). Due to the nature of the mathematics on this site it is best views in landscape mode. If your device is not in landscape mode many of the equations will run off the side of your device (should be able to scroll to see them) and some of the menu items will be cut off due to the narrow screen width.

### Section 5-1 : Basic Concepts

Let’s start this section off with a quick discussion on what vectors are used for. Vectors are used to represent quantities that have both a magnitude and a direction. Good examples of quantities that can be represented by vectors are force and velocity. Both of these have a direction and a magnitude.

Let’s consider force for a second. A force of say 5 Newtons that is applied in a particular direction can be applied at any point in space. In other words, the point where we apply the force does not change the force itself. Forces are independent of the point of application. To define a force all we need to know is the magnitude of the force and the direction that the force is applied in.

The same idea holds more generally with vectors. Vectors only impart magnitude and direction. They don’t impart any information about where the quantity is applied. This is an important idea to always remember in the study of vectors.

In a graphical sense vectors are represented by directed line segments. The length of the line segment is the magnitude of the vector and the direction of the line segment is the direction of the vector. However, because vectors don’t impart any information about where the quantity is applied any directed line segment with the same length and direction will represent the same vector.

Consider the sketch below.

Each of the directed line segments in the sketch represents the same vector. In each case the vector starts at a specific point then moves 2 units to the left and 5 units up. The notation that we’ll use for this vector is,

$\vec v = \left\langle { - 2,5} \right\rangle$

and each of the directed line segments in the sketch are called representations of the vector.

Be careful to distinguish vector notation, $$\left\langle { - 2,5} \right\rangle$$, from the notation we use to represent coordinates of points, $$\left( { - 2,5} \right)$$. The vector denotes a magnitude and a direction of a quantity while the point denotes a location in space. So don’t mix the notations up!

A representation of the vector $$\vec v = \left\langle {{a_1},{a_2}} \right\rangle$$ in two dimensional space is any directed line segment, $$\overrightarrow {AB}$$, from the point $$A = \left( {x,y} \right)$$ to the point $$B = \left( {x + {a_1},y + {a_2}} \right)$$. Likewise a representation of the vector $$\vec v = \left\langle {{a_1},{a_2},{a_3}} \right\rangle$$ in three dimensional space is any directed line segment, $$\overrightarrow {AB}$$, from the point $$A = \left( {x,y,z} \right)$$ to the point $$B = \left( {x + {a_1},y + {a_2},z + {a_3}} \right)$$.

Note that there is very little difference between the two dimensional and three dimensional formulas above. To get from the three dimensional formula to the two dimensional formula all we did is take out the third component/coordinate. Because of this most of the formulas here are given only in their three dimensional version. If we need them in their two dimensional form we can easily modify the three dimensional form.

There is one representation of a vector that is special in some way. The representation of the vector $$\vec v = \left\langle {{a_1},{a_2},{a_3}} \right\rangle$$ that starts at the point $$A = \left( {0,0,0} \right)$$ and ends at the point $$B = \left( {{a_1},{a_2},{a_3}} \right)$$ is called the position vector of the point $$\left( {{a_1},{a_2},{a_3}} \right)$$. So, when we talk about position vectors we are specifying the initial and final point of the vector.

Position vectors are useful if we ever need to represent a point as a vector. As we’ll see there are times in which we definitely are going to want to represent points as vectors. In fact, we’re going to run into topics that can only be done if we represent points as vectors.

Next, we need to discuss briefly how to generate a vector given the initial and final points of the representation. Given the two points $$A = \left( {{a_1},{a_2},{a_3}} \right)$$ and $$B = \left( {{b_1},{b_2},{b_3}} \right)$$ the vector with the representation $$\overrightarrow {AB}$$ is,

$\vec v = \left\langle {{b_1} - {a_1},{b_2} - {a_2},{b_3} - {a_3}} \right\rangle$

Note that we have to be very careful with direction here. The vector above is the vector that starts at $$A$$ and ends at $$B$$. The vector that starts at $$B$$ and ends at $$A$$, i.e. with representation $$\overrightarrow {BA}$$ is,

$\vec w = \left\langle {{a_1} - {b_1},{a_2} - {b_2},{a_3} - {b_3}} \right\rangle$

These two vectors are different and so we do need to always pay attention to what point is the starting point and what point is the ending point. When determining the vector between two points we always subtract the initial point from the terminal point.

Example 1 Give the vector for each of the following.
1. The vector from $$\left( {2, - 7,0} \right)$$ to $$\left( {1, - 3, - 5} \right)$$.
2. The vector from $$\left( {1, - 3, - 5} \right)$$ to$$\left( {2, - 7,0} \right)$$.
3. The position vector for $$\left( { - 90,4} \right)$$
Show All Solutions Hide All Solutions
a The vector from $$\left( {2, - 7,0} \right)$$ to $$\left( {1, - 3, - 5} \right)$$. Show Solution

Remember that to construct this vector we subtract coordinates of the starting point from the ending point.

$\left\langle {1 - 2, - 3 - \left( { - 7} \right), - 5 - 0} \right\rangle = \left\langle { - 1,4, - 5} \right\rangle$

b The vector from $$\left( {1, - 3, - 5} \right)$$ to$$\left( {2, - 7,0} \right)$$. Show Solution

Same thing here.

$\left\langle {2 - 1, - 7 - \left( { - 3} \right),0 - \left( { - 5} \right)} \right\rangle = \left\langle {1, - 4,5} \right\rangle$

Notice that the only difference between the first two is the signs are all opposite. This difference is important as it is this difference that tells us that the two vectors point in opposite directions.

c The position vector for $$\left( { - 90,4} \right)$$ Show Solution

Not much to this one other than acknowledging that the position vector of a point is nothing more than a vector with the point’s coordinates as its components.

$\left\langle { - 90,4} \right\rangle$

We now need to start discussing some of the basic concepts that we will run into on occasion.

#### Magnitude

The magnitude, or length, of the vector $$\vec v = \left\langle {{a_1},{a_2},{a_3}} \right\rangle$$ is given by,

$\left\| {\overline{v}} \right\| = \sqrt {a_1^2 + a_2^2 + a_3^2}$
Example 2 Determine the magnitude of each of the following vectors.
1. $$\vec a = \left\langle {3, - 5,10} \right\rangle$$
2. $$\displaystyle \vec u = \left\langle {\frac{1}{{\sqrt 5 }}, - \frac{2}{{\sqrt 5 }}} \right\rangle$$
3. $$\vec w = \left\langle {0,0} \right\rangle$$
4. $$\vec i = \left\langle {1,0,0} \right\rangle$$
Show Solution

There isn’t too much to these other than plug into the formula.

a $$\left\| {\vec a} \right\| = \sqrt {9 + 25 + 100} = \sqrt {134}$$

b $$\displaystyle \left\| {\vec u} \right\| = \sqrt {\frac{1}{5} + \frac{4}{5}} = \sqrt 1 = 1$$

c $$\left\| {\vec w} \right\| = \sqrt {0 + 0} = 0$$

d $$\left\| {\vec i} \right\| = \sqrt {1 + 0 + 0} = 1$$

We also have the following fact about the magnitude.

${\mbox{If }}\left\| {\vec a} \right\| = 0{\mbox{ then }}\vec a = \vec 0$

This should make sense. Because we square all the components the only way we can get zero out of the formula was for the components to be zero in the first place.

#### Unit Vector

Any vector with magnitude of 1, i.e. $$\left\| {\vec u} \right\| = 1$$, is called a unit vector.

Example 3 Which of the vectors from Example 2 are unit vectors?
Show Solution

Both the second and fourth vectors had a length of 1 and so they are the only unit vectors from the first example.

#### Zero Vector

The vector $$\vec w = \left\langle {0,0} \right\rangle$$ that we saw in the first example is called a zero vector since its components are all zero. Zero vectors are often denoted by $$\vec 0$$. Be careful to distinguish 0 (the number) from $$\vec 0$$ (the vector). The number 0 denotes the origin in space, while the vector $$\vec 0$$ denotes a vector that has no magnitude or direction.

#### Standard Basis Vectors

The fourth vector from the second example, $$\vec i = \left\langle {1,0,0} \right\rangle$$, is called a standard basis vector. In three dimensional space there are three standard basis vectors,

$\vec i = \left\langle {1,0,0} \right\rangle \hspace{0.25in}\vec j = \left\langle {0,1,0} \right\rangle \hspace{0.25in}\vec k = \left\langle {0,0,1} \right\rangle$

In two dimensional space there are two standard basis vectors,

$\vec i = \left\langle {1,0} \right\rangle \hspace{0.25in}\vec j = \left\langle {0,1} \right\rangle$

Note that standard basis vectors are also unit vectors.

Warning

We are pretty much done with this section however, before proceeding to the next section we should point out that vectors are not restricted to two dimensional or three dimensional space. Vectors can exist in general n-dimensional space. The general notation for a n-dimensional vector is,

$\vec v = \left\langle {{a_1},{a_2},{a_3}, \ldots ,{a_n}} \right\rangle$

and each of the $${a_i}$$’s are called components of the vector.

Because we will be working almost exclusively with two and three dimensional vectors in this course most of the formulas will be given for the two and/or three dimensional cases. However, most of the concepts/formulas will work with general vectors and the formulas are easily (and naturally) modified for general n-dimensional vectors. Also, because it is easier to visualize things in two dimensions most of the figures related to vectors will be two dimensional figures.

So, we need to be careful to not get too locked into the two or three dimensional cases from our discussions in this chapter. We will be working in these dimensions either because it’s easier to visualize the situation or because physical restrictions of the problems will enforce a dimension upon us.


text:
## Saturday, November 7, 2015

### Olympiad Math Problem: Find the maximum and minimum of P (Heuristic Solution)

Find the minimum and maximum of $P=\dfrac{y−x}{x+8y}$ for all real $x$ and $y$ that satisfy the equation $y^2(6-x^2)-xy-1=0$.

My solution:

Note that the given equality $y^2(6-x^2)-xy-1=0$ has the terms $y^2,\,x^2y^2$ and $xy$ while the target expression, $P$ is a rational function with the terms $x$ and $y$.

That gives us a nice hint of what can be done, i.e. to rewrite $P$ as a function defined only by the variable $xy$:

First, note that we could rewrite the given inequality in three different manners:

$y^2(6-x^2)-xy-1=0$

[MATH]\color{yellow}\bbox[5px,purple]{y^2=\dfrac{xy+1}{6-x^2}}[/MATH]

[MATH]\color{yellow}\bbox[5px,green]{6-x^2=\dfrac{xy+1}{y^2}\,\,\implies x^2=6+\dfrac{xy+1}{y^2}}[/MATH]

[MATH]\color{black}\bbox[5px,orange]{6y^2-x^2y^2-xy-1=0\,\,\implies y^2=\dfrac{x^2y^2+xy+1}{6}}[/MATH]

Now, looking back at the target function $P$ and judging from the three different functions we have gotten as shown above, it's quite clear that we should multiply both top and bottom of $P$ by $y$ such that

\begin{align*}P&=\dfrac{y−x}{x+8y}\\&=\dfrac{y(y−x)}{y(x+8y)}\\&=\dfrac{y^2−xy}{xy+8y^2}\\&=\dfrac{\dfrac{x^2y^2+xy+1}{6}−xy}{xy+8\left(\dfrac{x^2y^2+xy+1}{6}\right)}\\&=\dfrac{x^2y^2+xy+1-6xy}{6xy+8x^2y^2+8xy+8}\\&=\dfrac{x^2y^2-5xy+1}{8x^2y^2+14xy+8}\\&=\dfrac{x^2y^2-5xy+1}{8(x^2y^2+\dfrac{14xy}{8}+1)}\\&=\dfrac{1}{8}\left(1-\dfrac{27xy}{4(x^2y^2+\dfrac{14xy}{8}+1)}\right)\\&=\dfrac{1}{8}\left(1-\dfrac{27}{4(\dfrac{14}{8}+xy+\dfrac{1}{xy})}\right)\end{align*}

If we want to look for $P_{\text{minimum}}$, we need [MATH]\color{black}P_{\text{minimum}}=\dfrac{1}{8}\left(1-\dfrac{27}{4\left(\color{yellow}\bbox[5px,purple]{\dfrac{14}{8}+xy+\dfrac{1}{xy}}\right)}\right)[/MATH] where we need a minimum [MATH]\color{yellow}\bbox[5px,purple]{\dfrac{14}{8}+xy+\dfrac{1}{xy}}[/MATH].

If $xy\gt 0$, then we see that we have $xy+\dfrac{1}{xy}\ge 2$, equality attains when $xy=1$, therefore we get:

$\dfrac{27}{4(\dfrac{14}{8}+xy+\dfrac{1}{xy})}\ge \dfrac{27}{4(\dfrac{14}{8}+2)}=\dfrac{9}{5}$

So we get $P_{\text{minimum}}=\dfrac{1}{8}\left(1-\dfrac{9}{5}\right)=-\dfrac{1}{10}$.

If $xy\lt 0$, then we need to rewrite $P$ such that it takes the form:

\begin{align*}P&=\dfrac{1}{8}\left(1-\dfrac{27}{4(\dfrac{14}{8}+xy+\dfrac{1}{xy})}\right)\\&=\dfrac{1}{8}\left(1-\dfrac{27}{4(\dfrac{14}{8}-|xy|-\dfrac{1}{|xy|})}\right)\\&=\dfrac{1}{8}\left(1+\dfrac{27}{4\left(|xy|+\dfrac{1}{|xy|}-\dfrac{14}{8}\right)}\right)\end{align*}

If we want to look for $P_{\text{maximum}}$, we need [MATH]\color{black}P_{\text{maximum}}=\dfrac{1}{8}\left(1+\dfrac{27}{4\left(\color{yellow}\bbox[5px,green]{|xy|+\dfrac{1}{|xy|}-\dfrac{14}{8}}\right)}\right)[/MATH] where we need a minimum [MATH]\color{yellow}\bbox[5px,green]{|xy|+\dfrac{1}{|xy|}+\dfrac{14}{8}}[/MATH].

From here we get $\dfrac{27}{4\left(|xy|+\dfrac{1}{|xy|}-\dfrac{14}{8}\right)}\ge \dfrac{27}{4\left(2-\dfrac{14}{8}\right)}=27$

Thus $P_{\text{maximum}}=\dfrac{1}{8}(1+27)=\dfrac{7}{2}$.

Can you see it now? With a bit of the algebraic manipulation, AM-GM inequality can be such a huge helper to simplify the optimization problem and it's like a short cut to solve a pretty headache problem! :D

format: plain


text:
The model applies methods from molecular dynamics (MD) and takes into account different physical and biological effects. The software provides great flexibility by enabling the user to switch easily between sets of constants e.g. to model different bacterial strains. Furthermore, the software includes functions for visualisation of the models behaviour over time.

## Project description

### iGEM 2020 project: Biofilm growth simulation

This is repository contains the code for simulating the growth of a Biofilm after attachment using Molecular dynamics simulation methods. The project was build as part of the iGEM 2020 Contest. The numerical model and simulation were implmented by the Team Hannover. Functionalities to make the software tool more accesible were added in collaboratio with the Team TU Darmstadt. The BiofilmSimulation software can be installed a a python package, documented under https://pypi.org/project/BiofilmSimulation.
Explore the docs Â»

View Demo Â· Report Bug Â· Request Feature

The project aims to simulate the growth of a biofilm in early stages. An biofilm is an consortium of bacteria embedded in a extracelluar matrix consisting of EPS (extracellular polymeric substances). Origin of such biofilms is the attachment of initial bacteria to a surface.

As part of the iGEM Competition 2020, the Hannover Team designed a sensor based on biological cell, which is capable of detecting the adhernce of a biofilm to at an early stage. The sensor can be attached to implant surfaces and used as a diagnostical tool. Therefore, we are interested in the growth behaviour of biofilms in an early stage. We use computational methods of Molecular Dynamics simulation and a biophysical approach to model the biofilm growth. Furthermore the BiofilmSimulation module provides functions for visualization of the data generated in the simulation.

## Getting Started

This is an example of how you may set up your project locally. To get a local copy up and running follow these simple example steps.

### Prerequisites

We recommend installing anaconda on your machine. Anaconda provides many functionalities including an easy way to set up python enviroments. Check out the Anaconda installation instructions.

### Installation

You will need a few python packages to run the simulation on your local machine. You can eithercreate a conda enviroment from the conda_env.yml file or download the packages on your own via pip. We provide step-by-step instructions on how to get our software running using a conda enviroment.

1. Clone the repo
git clone https://github.com/igemsoftwareadmin/Hannover.git

1. Navigate in the root folder (the folder which contains the setup.py) and run
conda env create -f env/iGEM-biofilm-model.yml

1. Start the enviroment by running
conda activate iGEM-biofilm-model

1. Install our software tool as a python package in your conda enviroment with pip (package installer for Python). The package is listed at https://pypi.org/project/BiofilmSimulation and can be installed by running
pip install BiofilmSimulation

Another option is to run

pip install .

in the root folder. This will run the setup.py file and also adds our BiofilmSimulation module to your enviroment. In both cases, if the installation was succesfull the anaconda prompt will print

Successfully built BiofilmSimulation
Installing collected packages: BiofilmSimulation
Successfully installed BiofilmSimulation-1.0.0

To be able to save the 2D animation of the simulation, you also need the ffmpeg - Writer. Install it in your enviromnet with:

conda install -c conda-forge ffmpeg

## Usage

You can also directly start a simulation by running the example_usage.py script. Activate the iGEM-biofilm-model enviroment as described above and navigate to the root folder. Type

python example/example_usage.py

This will start a dialog in the console in which you can specify the bacteria strain, the number of initial bacteria and the simulation duration.

Another usage example is provided in form of a jupyter notebook. Make sure to check it out to see the functionalities provided. If you are using anaconda, jupyter will already be installed. To start the example jupyter notebook run

jupyter-notebook

Then connect to

http://localhost:8888/

and navigate to the folder, in which you cloned the repository. Start the notebook by clicking on the example.ipynb file.

See the open issues for a list of proposed features (and known issues).

## Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

1. Fork the Project
2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
3. Commit your Changes (git commit -m 'Add some AmazingFeature')
4. Push to the Branch (git push origin feature/AmazingFeature)
5. Open a Pull Request

Distributed under the MIT License. See LICENSE for more information.

## Project details

Uploaded source
Uploaded py3


text:
# ANIMMA 2021

21-25 June 2021
Clarion Congress Hotel Prague
Europe/Prague timezone
The ANIMMA 2021 Registration is OPEN!

## Confocal chromatic sensor for displacement monitoring in research reactor

Not scheduled
20m
3rd floor (Clarion Congress Hotel Prague)

### 3rd floor

#### Clarion Congress Hotel Prague

Freyova 945/33, 190 00 Prague 9 - Vysočany
Oral presentation 04 Research Reactors and Particle Accelerators

### Speaker

AGOYAN, Marion (CEA)

### Description

Confocal chromatic microscopy is an optical technique allowing measuring displacement, thickness, and roughness with a sub-micrometric precision [1]. Its operation principle relies on a wavelength encoding of the object position. The light emitted by a polychromatic source is transported by an optical fiber up to an optical system, called optical pen only composed of passive components and presenting a strong chromatism. That means that the various wavelengths will be focused at different positions by the optical system on the optical axis. The surface of the object under test will reflect all the wavelengths but only a small fraction of the reflected spectrum will be focused back on the cleaved end of the optical fiber and then will be able to be guided towards an optical analyzer.
The change in the spectral properties of the analyzed signal provides an information about the distance of the interface located within the measuring range of the sensor. Historically, this class of sensors has been first developed in the 90’s by the company STIL based in the south of France.

Of course, this sensor can only operate in a sufficiently transparent medium in the considered spectral domain. But it presents the advantage of being contactless which is a crucial advantage for some applications such as the one of measuring displacement in the core of nuclear research reactor: cladding swelling measurement for instance.

The extreme environmental conditions encountered in a nuclear reactor -high temperature, high pressure, high fluency irradiations, strong vibrations and surrounding turbulent flow- can affect the performances of those optical system and mitigation techniques need to be put in place to optimize the sensor response for this specific environment. Another constraint concerns the small space available between the rods to be monitored, implying the challenge to conceive a very small sensor able to operate under these constraints.
This development is made in the framework of a PHD at the Commissariat à l’Energie Atomique (CEA) -in collaboration with the Laboratoire Hubert Curien (LabHC) of the University of Saint-Etienne and also the company STIL.

Among various scientific and technological locks, the first to be considered is the Radiation Induced Attenuation (RIA) phenomenon of the fiber and of the bulk optical components constituting the optical system. Indeed, glasses and fibers tends to darken when exposed at high neutron fluencies decreasing the light transmission efficiency. In the state of the art, it has already been shown that some spectral regions show huge RIA levels under high level of mixed gamma/neutron irradiation. In the visible, the absorption band peaking at 630 nm and caused by the Non-Bridging-Oxygen Hole Centers (NBOHCs) can strongly alter the sensing as well as the growing of the vibration band at 1380 nm of hydroxyls that could appear when NBOHCs are passivated by hydrogen. Basic mechanisms at the origin of the RIA are known [1, 2] but still only a few experimental data at the very high fluency associated with the application (neutron fluency about $10^{19} n/cm^{2}$ with gamma doses of more than one GGy, and also high temperature) are available, making difficult to really assess the RIA impact of the sensor performances.

However, RIA is not the only scientific lock; elevated temperature can also affects the optical system. Indeed, if the sensor exploits the chromatism, related to the refractive index dependence to the wavelength, the temperature is also able to modify the refractive index causing a direct shift of the probing spectral range but also dilatation of the lenses and optical aberrations. Irradiations too can alter the well behaviour of the sensor -because of compaction. We also have to stay cautious about water under pressure with turbulent flow and vibrations.

We will present the detailed specifications and a preliminary analysis of the constraints, with a special focus on the RIA at high fluency.

[1] http://www.stil-sensors.com/?lang=EN
[2] D. L. Griscom, « γ and fission-reactor effects on the visible-range transparency of aluminium-jacked, all-silica optical fibers », J. Appl. Phys., vol. 80, no.4, pp. 2142-2155, Aug. 1996.
[3] S. Girard et al. “Radiation Effects on Silica-Based Fibers, « Recent Advances and Future Challenges», IEEE Trans. Nucl. Sci., vol 60, no. 3, pp. 2015-2036, June 2013.

### Primary authors

AGOYAN, Marion (CEA) Mr BOUKENTER, Aziz (Université Jean Monnet) CHEYMOL, Guy (CEA) Mr DESJACQUES, Matthieu (STIL) Dr DESTOUCHES, Christophe (CEA, DES, IRESNE, DER, Physics Safety Tests and Instrumentation) FOURMENTEL, Damien (CEA, DES, IRESNE, DER, SPESI, Cadarache F-13108 Saint-Paul-Lez-Durance, France) Mr GAILLARD-GROLEAS, Jérôme (STIL) LADACI, Ayoub (CEA) Mr MASKROT, Hicham (CEA)

### Presentation Materials

There are no materials yet.


text:
constructing non-trivial graph with known shortest Hamiltonian path

I'm interested in testing some Traveling Salesperson (TSP) greedy approximation algorithms for finding the shortest Hamiltonian path for very large graphs. Assume I can construct whatever graph I choose; how could I build a graph with a known shortest Hamiltonian path in polynomial time with edge distances that satisfy the triangle inequality (edited 1/3/2023)?

A trivial way is to create a "straight line" sequence of vertices $$v_i$$ such that the distance from some vertex $$v_i$$ to its immediate neighbors $$\delta(v_{i-1},v_i) = \delta(v_i,v_{i+1}) = d$$ for some constant distance $$d$$, but that the distance from $$v_i$$ to all other vertices is greater than $$d$$. Such a straight line graph is also isomorphic to a "nautilus," wrapping around itself, and other shapes.

The problem is that a greedy algorithm that selects the shortest edge lengths will find the shortest Ham path in this trivial graph in polynomial time. One such algorithm is Krari et al, the Multi-Fragment Tour Construction.

What I want is a deterministic polynomial time way to build a non-trivial graph, one where the shortest Hamiltonian path maybe cannot be found in deterministic polynomial time.

Maybe this construction problem itself is NP complete? Can a deterministic polynomial time algorithm create an optimization problem space that cannot be solved in deterministic polynomial time?

Resources

There are a few sites offering data and other information to researchers, indirectly suggesting that this is hard to do, at the least, or maybe not possible.

Triangle Inequality Restriction

As originally asked, a simple algorithm for vertices $$v_i, v_{i+1}$$ and corresponding edges $$e_{i,i+1}$$ would be to set edge weight $$e_{i,i+1} \leftarrow 1$$ and $$e_{i,j\neq i+1} \leftarrow 1+\epsilon$$producing the shortest tour as the simple list of vertices $$v_0, v_1, v_2, \dots$$

However, this violates the triangle inequality which says for weight function $$\omega_{i,j}$$ as the edge weight/distance between vertices $$v_i$$ and $$v_j$$, that $$\omega_{i,j} \leq \omega_{i,k} + \omega_{k,j}$$In plain language, walking directly to the conference takes less time than first walking to the pub and then walking to the conference, unless walking to the conference would take you right past the pub on the way. A counterexample, violating the triangle inequality, is if the walk to the pub were quicker and a bus zipped you from the pub directly to the conference.

• These are sometimes called 'planted solutions'.
– D.W.
Dec 9, 2022 at 19:49
• I assume that the input for the algorithm is the number of vertices $n$. Since the algorithm is deterministic, then it means that for every $n$ it only constructs a single graph. Is it what you want? Dec 9, 2022 at 21:06
• Yes, it should construct a single, non-trivial graph. I'm seeing some other sites that offer test data, indicating that this is at least not easy, and maybe not possible. I'll update my post.
– Russ
Dec 10, 2022 at 13:42


text:
Pipe

Related Links: Pipe - Dynamic Mode

General Description

This is used to transfer material between two units in SysCAD. Each pipe can have only one source and one destination. The user will find that a large amount of information is contained in pipe.

• In Steady State (ProBal) mode, the pipe serves as a simple link, which requires very little configuration.
• In Dynamic mode the pipe contains additional fields relating to required flows and network configuration. Please see Pipe - Dynamic Mode for more information on this data.

Enabling Sub-Models

When a pipe, or link, is inserted in a SysCAD project, it will be a 'Simple' pipe, i.e. Flow conditions into the Pipe = Flow conditions out of the Pipe. However, users may specify a pressure drop and/or enable sub-models in a pipe. The user can select the sequence in which the sub-models act, however the pressure drop is applied first. To enable sub-models the user must un-tick the 'Simplify' tickbox, as shown below:

Available Sub-Models

Evaluation Block:

1. Makeup Blocks (one or more) may be enabled in a Pipe. This allows the user to control the addition of streams such as reagents, water, air, etc to the pipe, often without having to use a PID or General controller.
2. The Reaction Block (RB) allows the user to configure any number of reactions within the pipe.
3. The Environmental Heat Exchanger Block allows the user to add or remove energy from the pipe using a number of different methods.
4. The Evaporation Block allows the user to set the evaporation of either water only or a mixture of water and all other species that are specified as both liquid and vapour.
5. The Vapour Liquid Equilibrium Block will attempt to ensure that the vapours and liquids of the selected species will be in equilibrium in the pipe. For example, if the equilibrium species is water and the pipe is at atmospheric pressure, then SysCAD will maintain the temperature at, or below, the saturated temperature of 99.97°C by evaporating water if required.
6. Discard Blocks (one or more) may be enabled in a Pipe. This allows the user to control the discarding of material from the Pipe, usually without having to use a PID or General controller. This is available in Build 138 or later.

Model Procedures

Model Procedures allows the user to implement code directly within the Pipe. The code used is almost identical to the code in pgm files.

To enable this, on the "Info" tab page tick the "Procedures" tickbox, as shown below:

Flowchart

The following shows the sequence of events if the Pipe is not simplified and any sub model options are enabled.

Model Theory

Pressure Drop Equations

Darcy Pressure Drop for slurry

$\mathbf {\mathrm {DP} = (\boldsymbol{\rho}_{all} * \mathbf g * dZ) + \left (\frac {1} {2} * \boldsymbol{\rho}_{all} * \mathit {v} \mathrm {el}^2 * (\mathrm {K} + \mathrm {K_-MinorLosses}\right) }$

where

ρall is density (Rho) of the complete mixture (all phases)

K can be specified or calculated as $\mathbf {\mathrm {K = \frac{FricFactor * TotalLength}{D}}}$

Where

D = Diam - (2 * ScaleBuildup)

TotalLength = length (L) + Fitting Length (FitL)

FricFactor can be specified or calculated as:

$\mathbf {\mathrm {FricFactor}= \mathrm{8.0} \begin{Bmatrix} \begin{bmatrix} \mathrm{-2.457*Ln} \begin{pmatrix} \mathrm{\frac{7}{Re}} \end{pmatrix} ^{0.9} \mathrm{+.27*\frac{Pipe_-Rough}{D}} \end{bmatrix}^{16} \mathrm{+\left (\frac {37530}{Re} \right)^{16}} \end{Bmatrix}^{-0.125} }$

Reynolds number $\mathbf {\mathrm{Re} = \begin{pmatrix}\mathrm{D*vel*Density}\end{pmatrix}\mathrm{/Viscosity}}$

Re has a lower limit of 1e-9.

Viscosity has a lower limit of 1e-12.

Data Sections

The Dynamic Pipe contains additional fields relating to required flows and network configuration. Only the fields shown for ProBal are described here.

Summary of Data Sections

The pipe access window may consist of a number of sections. This number may increase or decrease, based on user configuration and / or number of species.

1. Pipe-1 - The first section, contains general information relating to material flowing through the pipe, the Source and Destination units and allows the user to enable Demand. To enable the sub models (for example Reactions or Environmental Heat Exchange) in a Pipe, the user must first disable Simplify and then the Evaluation Block (EB) will be visible.
2. PC - Optional tab that is visible if EB.Solubility.On and/or EB.PhaseChange@T.On is enabled on the first tab.
3. RB - Optional tab that is visible if Reactions are enabled.
4. EHX - Optional tab that is visible if Environmental Heat Exchanger is enabled.
5. Evap - Optional tab that is visible if Evaporator is enabled.
6. VLE - Optional tab that is visible if Vapour Liquid Equilibrium is enabled.
7. MU - Optional tab, or multiple tabs if more than 1 Makeup Block is selected, Only visible if one of more Makeup Blocks are enabled in the Evaluation Block.
8. DB - Optional tab, or multiple tabs if more than 1 Discard Block is selected. Only visible if one of more Discard Blocks are enabled in the Evaluation Block. Only available in Build 138 or later.
9. Qi - This and subsequent tab pages, e.g. Qi.. and Sp, shows the properties of the inlet stream. This tab is only visible if Simplify is NOT enabled.
• This is before any Evaluation Block sub-models are evaluated (see the Flowchart above).
10. Qo - This and subsequent tab pages, e.g. Qo.. and Sp, shows the properties of the outlet stream. This tab is always visible.
• This is before any Evaluation Block sub-models are evaluated (see the Flowchart above).
11. Info tab - contains general settings for the unit and allows the user to include documentation about the unit and create Hyperlinks to external documents.
12. MP tab - Optional tab, only visible if Procedures have been enabled on the Info tab page.
13. Links tab, contains a summary table for all the input and output streams.
14. Audit tab - contains summary information required for Mass and Energy balance. See Model Examples for enthalpy calculation Examples.

Pipe Page

Unit Type: Pipe-1 - The first tab page in the access window will have this name.

Symbol / Tag

Input / Calc

Description

Results: Inlet Flow Conditions

MassFlow / Qm Calc The total mass of material flowing through the pipe.
VolFlow / Qv Calc The total volumetric flow through the pipe.
VolFlow / NQv Calc The normalised volumetric flow through the pipe. The volume is calculated at Normal Temperature and Pressure (NTP), default values are 25C and 101.325kPa. This is only relevant for flows containing vapours.
NTP can be specified by the user in the configuration file (see Project Configuration).
TemperatureIn / Ti Calc The temperature of the material flowing into the pipe.
Temperature / T Calc The temperature of the material flowing into the pipe.
Density / Rho Calc The density of the material flowing into the pipe.
NDensity / NRho Calc The normalised density of the material flowing through the pipe. The normalised density is calculated at Normal Temperature and Pressure (NTP), default values are 25C and 101.325kPa. This is only relevant for flows containing vapours.
NTP can be specified by the user in the configuration file (see Project Configuration).
Press_Input / Pi Calc The pressure into the pipe.

Outlet Flow Conditions

TemperatureOut / To Calc The temperature of the material flowing out of the pipe.
Press_Output / Po Calc The pressure out of the pipe.

Connections

Source_Link / SrcIO Display The tag of the source unit of the pipe, as well as the connection point, i.e. if the source is a thickener, whether the pipe is connected to the overflow or the underflow.
Destination_Link / DstIO Display The tag of pipe's destination unit, as well as the connection point.
Source_PortID / SrcTag Display The tag of the source unit of the pipe.
Destination_PortID / DstTag Display The tag of pipe's destination unit.
ConnectDescription / ConnectDesc Display A description for the pipe based on the SrcIO (pipe input) and DstIO (pipe output) fields. This is mainly used for reporting. SysCAD will copy this field into the GenDesc field IF the EqpDesc field on the Info' tab is blank.

Requirements

Configuration.Exists Display Only available in Build 137 or later. This field indicates if the pipe can be simplified. 0 = no configuration (can be simplified), 1 = configured (cannot be simplified). Types of configuration include reactions, makeups, qualities or species model configuration.
Simplify Tick Box By default this state is enabled, causing the pipe to be a 'simple' pipe with only the Qo tabs being visible. If the user wishes to set anything in the pipe or enable reactions, heat loss, etc, then this tick box must be disabled. Additional fields will then become visible and the user may set sub-models in the pipe.
Simplify.Blocked Display Only available in Build 137 or later. This field indicates if a pipe has been blocked from being simplified due to some configuration in the pipe. 1 = Simplify has been ticked but pipe is not simplified due to some configuration (Configuration.Exists = 1). 0 = Simplify is not ticked or pipe has been simplified.
Show.Qi Tick Box This tickbox is only visible if the pipe is NOT Simplified. The user may enable this to view both the Qi (flow into the pipe) and Qo (flow out of the pipe) tabs, which may be useful if the user has added reactions, heat exchange, etc to the pipe.

EB (Flow Evaluation Block)

Note This section is only visible if Simplify is Disabled.

Solubility.On Tickbox Only visible if Solubility has been defined for at least one species in the project. Allows the user to switch on any predefined solubility curve to adjust the composition of material in the unit.
PhaseChange@T.On Tickbox Only visible if Phase Change at Temperature has been defined for at least one species in the project. Allows the user to switch on any predefined phase changes at temperature in the unit.
EvalSequence Calc The sequence in which the sub models (which are part of the evaluation blocks) will be calculated. The sequence is determined by the priority selection for the individual sub-models.
Note: If the user chooses On-AutoSequence then SysCAD will determine the sequence of the sub-models. The sequence followed will be MU1, MU2, etc., RB, EHX, Evap, VLE, DB1, DB2, etc.
Makeups Input The number of Makeup Blocks required. Extra dropdown options Makeup1, Makeup2, etc will be added to allow these to be switched on and off and prioritised in relation to the other sub-models.
MakeupX List Use to enable or disable and set the sequence of the Makeup Block in relation to the other sub-models. If this is 'On' then the associated page, MUX becomes visible and may be configured.
Note: This field is only visible if the entry for 'Makeups' is greater then 0. If there is one makeup then X=1. If there are two makeups, then X=1 and X=2, etc.
Reactions List Reaction Block (RB) - Enable or disable Reactions and set the sequence in relation to the other sub-models. If this is 'On' then the associated page, RB becomes visible and may be configured.
Note: The user does not have to configure a reaction file, even if this block is checked.
EnvironHX List Environmental Heat Exchanger (EHX) - Enable or disable Environmental Heat Exchange and set the sequence in relation to the other sub-models. If this is 'On' then the associated page, EHX becomes visible and may be configured.
Note: The user does not have to configure an environmental heat exchange, even if this block is checked.
Evaporation List Evaporation Block (Evap) - Enable or disable the Evaporator and set the sequence in relation to the other sub-models. If this is 'On' then the associated page, Evap becomes visible and may be configured.
Note: The user does not have to configure an evaporator, even if this block is checked.
VLEquilibrium List Vapour Liquid Equilibrium (VLE) - Enable or disable Vapour Liquid Equilibrium and set the sequence in relation to the other sub-models. If this is 'On' then the associated page, VLE becomes visible and may be configured.
Note: This option may automatically adjust the species make-up in Qo.
Discards Input Only available in Build 138 or later. The number of discard blocks required. Extra dropdown options Discard1, Discard2, etc will be added to allow these to be switched on.
DiscardX List Only available in Build 138 or later. This can be used to switch the Discard Block (DB) on or off and prioritise it in relation to the other sub-models. If this is 'On' then the associated page, DBX becomes visible and may be configured.
Note: This field is only visible if the entry for 'Discards' is greater than 0. If there is one discard then X=1. If there are two discards, then X=1 and X=2, etc.

General Demand

Qm_Avail.Source / Src Display The mass flow available at the source, such as a Feeder or a Flash Tank. This field is only useful when Demand mode is used, either in a Feeder or as part of the Flash Train macro model.

Note This field will only be visible if ShowDemandAvail is enabled in SysCAD 9.2 - Plant Model - Settings - Demand Configuration OR SysCAD 9.3 - Plant Model - FlwSolve - Demand Configuration.

Qm_Avail.Dest / Dst Display The mass flow available for the destination.

Note This field will only be visible if ShowDemandAvail is enabled in SysCAD 9.2 - Plant Model - Settings - Demand Configuration OR SysCAD 9.3 - Plant Model - FlwSolve - Demand Configuration.

Qm_Demand.Source / Src Display The flow required at the source, ie. upstream.
Qm_Demand.Block / Blk Tickbox If this is enabled, then the Demand will be Blocked from perpetrating either up or downstream. This is used to prevent demand in a recycle and also to prevent a single unit seeing two feeders with Demand enabled. (Please see Demand for further information)
Qm_Demand.Reqd Input The user may set a required mass flow through the pipe. This flow will filter back to the source unit and the model will attempt to satisfy this flow requirement.
Note: If the pipe is connected to a Feeder, the user should enable the variable 'Demand.On' on the Feeder. The Feeder will then deliver the mass flow required by the pipe. See Demand for more information on this feature.
Qm_Demand.Dest / Dst Display Flow required at destination, i.e. downstream.

FlashTrain Demand

Ft.Qm_Avail.Source Display The mass flow available at the source.

Note This field will only be visible if ShowDemandAvail is enabled in SysCAD 9.2 - Plant Model - Settings - Demand Configuration OR SysCAD 9.3 - Plant Model - FlwSolve - Demand Configuration.

Ft.Qm_Avail.Dest Display The mass flow available for the destination.

Note This field will only be visible if ShowDemandAvail is enabled in SysCAD 9.2 - Plant Model - Settings - Demand Configuration OR SysCAD 9.3 - Plant Model - FlwSolve - Demand Configuration.

Ft.Qm_Demand.Source Display The vapour flow required at the source, eg. flash tank flash vapour.
Ft.Qm_Demand.Dest Display Flow required at destination, eg. flash vapour to the heat exchanger.

Pressure Drop

Note This section is only visible if Simplify is Disabled.

Press_Mode None There is no pressure change in the pipe.
Drop The user can enter a fixed pressure drop in the pipe. The default is 0.
Boost The user can enter a fixed pressure boost in the pipe. The default is 0.
Darcy The pressure change will be calculated using the Darcy equation.
Fixed The user can type in a fixed pressure value.
Diameter Velocity The user may specify a velocity and SysCAD will calculate a pipe diameter to give the required velocity.
Note: SysCAD does NOT calculate a pressure drop for this method.
PressDropReqd Input Allows the user to enter a pressure drop. Visible when PressMethod = "Drop".
PressBoostReqd Input Allows the user to enter a pressure boost. Visible when PressMethod = "Boost".
PressureReqd Input Allows the user to specify the outlet pressure of the pipe. Visible when PressMethod = "Fixed".
PressChange / dP Calc The calculated pressure change across the pipe, based on the method selected by the user. This value will be zero for the 'None' and 'Diameter_Velocity' methods.
PressDrop / Pdrop Calc The calculated pressure drop across the pipe, based on the method selected by the user. This value will be zero for the 'None' and 'Diameter_Velocity' methods.
This value will always have the opposite sign to dP above.
The following fields are only visible if the Diameter_Velocity method is selected.
Diam Display The estimated nominal diameter of the pipe based on the user defined Velocity.
Velocity / Vel Input The user defined target velocity, SysCAD will estimate the required Pipe diameter needed to achieve this required velocity.
The following fields are only visible if the Darcy method is selected.
Diameter / Diam Input The Inner diameter of the pipe.
ScaleBuildUp Input The build up of material inside the pipe, thus reducing the ID of pipe. For a clean pipe, this value = 0.
K_Method Calc K Calculate K from user defined values.
Define_K Calculates the pressure drop using user specified pressure drop factor.
K_Value Input / Calc The pressure drop factor: K = f * L/D. If the Define_K method is selected, this is an input, otherwise it is calculated.
The following fields are visible if Calc_K method is selected.
Length Input The actual length of the pipe.
FittingsLength Input The fittings length of the pipe.
f_Method Calc_f Calculate the friction factor from user defined values.
Define_f The user can define a friction factor (f) to be used
FricFac Input The Darcy friction factor (f). Please note this is equivalent to (4) times Fanning's friction factor. Visible if Define_f method is selected.
Viscosity Input The Viscosity of the material flowing through the pipe. Visible if Calc_f method is selected.
PipeRough Input The Pipe Roughness value. Visible if Calc_f method is selected.
ReynoldsNo / Re Calc The calculated Reynolds number. Visible if Calc_f method is selected.
FricFac Calc The calculated Darcy friction factor (f). Visible if Calc_f method is selected. Please note this is equivalent to (4) times Fanning's friction factor.
K_MinorLosses Input K value for minor pressure losses in the pipe.
PipeDeltaZ Input The overall change of height for the pipe.
Velocity / Vel Calc The velocity in the pipe.
Note: a warning will be given if the velocity in the pipe is too high. Velocity limits maybe set/adjusted via View-PlantModel-RC Tab. See Range Checks

Tear

Priority Normal SysCAD determines the priority of the stream in the network and if the stream should be a tear stream and its solving order.
First The user may force the stream order to be first in the network.
Last The user may force the stream order to be last in the network.
RqdType No Tear No manual tear is required.
Manual Tear This option is for when the user wants to influence the location of the tear stream in a recycle. This will force SysCAD to prioritise setting this pipe as a Tear stream. The system selected tear stream in the recycle loop will be reset to have no tear. It is possible to create more tears than are required. In some flowsheets, with some arrangement of controllers, it can be possible to reduce the number of iterations required to converge to a solution and/or reduce instability while converging.
Break This option is used when the user want to 'break' the stream and manually set some parameters in the stream outlet.
Type No Tear The stream has no tears or breaks.
Zero Flow Tear The stream is a Tear stream with zero flow.
System Tear SysCAD has analysed the network and determined that the stream is a Tear stream because it is part of a recycle loop and is the most efficient stream to tear.
Manual Tear The user has manually set this stream as a Tear stream.
Break The user has manually 'broken' the stream.
Flange Display The relevant flange that will have the tear status. In SysCAD each pipe is connected using flanges and these will store the tear information.
AdjQmToEstQm Tickbox If this is enabled then the mass flow from the pipe will be forced to be equal to the estimated mass flow.


text:
# What electric charge does a neutron have?

Apr 17, 2015

Neutrons have zero charge.

In other words they have no charge.

Apr 18, 2015

Neutrons are made up of two down quarks and an up quark .

Down quarks contain a fractional electric charge of -1/3 .

Up quarks contain a fractional electric charge of +2/3 .

Neutron

= Down Quark + Down Quark + Up Quark

= -1/3 + (-1/3) + 2/3

= -1/3 -1/3 + 2/3

= -2/3 + 2/3

= 0/3

Therefore the neutron has a charge of 0 . In other words, the neutron is neutral.


text:
# Path tracer

This is a path tracer I wrote from scratch in C++ for my Advanced Modelling, Rendering and Animation assignment.

I used SDL to present the pixels to the user and I based the code in a ray tracer I wrote some months ago (here is the post). You can download the code (svn://quasar.dnsalias.com/eleni/path_tracer/), the report, the Linux 32 bit binary, the Linux 64 bit binary, the Win32 executable, the MacOSX binary and the README file with instructions on how to run the program. Below are some shots and explanations:

### Requirement 1: Many rays per pixels using stratification and jittering:

The pixel is divided recursively to 4 subpixels according to the desired number of rays per pixel (this number is passed as a parameter and is rounded to a power of four). Then the center of each sub-pixel is randomly moved in an area between the boundaries of the sub-pixel. Below, we can see some images produced for different numbers of pixels:

### Requirement 2: Use of spherical, triangular & quadrilateral area light sources:

The path tracer (that was still a Monte Carlo ray tracer in this stage) supports spheres, sphere flakes, planes, meshes of quads and meshes of triangles. From those objects, the spheres, the triangle – meshes and the quad – meshes can be used also as area lights. Instead of sending a ray to a point light source and test if our object of interest is in shadow or not, now we use a random point in the surface of the area light. In case of the sphere area lights, points are generated in the bounding cube until one is found to be inside the sphere (rejection sampling). In case of the triangular meshes, a triangle of the mesh is chosen randomly. Then, a point inside this triangle is chosen by calculating random α, β and γ barycentric coordinates between 0 and 1. If α, β and γ have sum greater than one we reject the point (rejection sampling) otherwise we calculate its Cartesian coordinates. In case of quadrilateral meshes, a quad of the mesh is chosen at random and then a random point in that quad is generated. In order to generate a random point in a quad, a random linear combination of 2 vectors of 2 consecutive edges of the quad is used. In the following 3 pictures a scene is lit firstly by using a sphere area light, then by using a quad area light and then using a triangular mesh (teapot) area light:

### Requirement 3: Sampling the Lambertian and the Phong BRDFs:

In case of specular surfaces the reflected ray directions form a lobe whereas in case of diffuse surfaces they are scattered in every direction in the hemisphere above the surface. In each case, a random vector was chosen inside the lobe or the hemisphere respectively and the probability to continue tracing or stop was calculated by evaluating the BRDF. In the pictures below, we can see the difference in the reflections of a sphere when sampling the Phong BRDF with various (decremented) specular exponents. We can observe that as the specular exponent is decreased the cone of directions is getting larger:

### Requirement 4: BRDF evaluation:

The formulas for the Phong and Lambertian models were used to evaluate the BRDF in case of specular and diffuse surfaces respectively. Case of diffuse interaction: $latex k_d \frac{1}{\pi}$. Case of specular interaction: $latex k_s \frac{m+2}{2\pi}cos^m\alpha$.

### Requirement 5: Put it all together to form paths that sample all the integrals:

The path tracer sends many rays per pixel using stratification and jittering. Then, it traces each ray by calling recursively the shade function. In this function it samples each BRDF to decide if the tracing will continue or stop after a specific intersection.

### Requirement 6: Russian roulette (unbiased path termination):

The method of Russian roulette was used to implement importance sampling. First, we decide if the next interaction will be diffuse or specular and second, we decide if the tracing will continue or not (unbiased path termination).  In the first case, a random number was chosen between 1 and sum of the means of diffuse kd and the specular ks and if it was larger than ks the next interaction was diffuse else it was specular.

In the second case (unbiased path termination), the dot product of the randomly generated vector inside the lobe or the hemisphere (see previous requirement) with the normal of the surface was calculated and compared to the probability evaluated by the BRDF. If it was less or equal to the BRDF value the tracing continued otherwise it stopped.

### Requirement 7: Scene creation:

Different scenes were created 🙂 Here are some of them:
Skylight images: a huge hemisphere was used as area light sources to give the impression of skylight. The following scenes were rendered:

Cornell Box: The Cornell Box was rendered with different numbers of rays per pixel:

### Other work:

I added also some features to improve the result… e.g. I used gamma-correction to improve the appearance of the colors and a shell script that transforms .OBJ scenes to my scene format to avoid extra pain… 😛 (the teapot for example was generated using a low-polygon version of the Utah teapot…)

## 12 thoughts on “Path tracer”

1. The gamma corrected image looks fantastic!

The large hemisphere trick for skylight-like results was neat too.

2. Queen Elisabeth II says:

its very very cool

3. Stelios says:

Those skylight pics look very impressive! I liked your ray tracer as well! Keep going!!

4. Bekos says:

OMG! Looks great!! Great job!!

5. jona says:

i remember these good times… bring on the GPU ray tracer screen shots! i heard you finished coding! 😉 i need to show you some of mine!

6. jona says:

that looks amazing!! the video quality is &£^\$*… after tuesday i’ll go over and check it out 😉 i like the kd-tree structure images!

yeah, i hate it when windows has better stuff too, but graphics drivers are mainly developed on that platform… slowly this changes… ATI catalyst 8.7 driver for ATI Radeon HD 5800 is not bad though!

report is going slow…pufff… hopefully i have the background and related work finished tonight so i can start writing the technical chapters..

time
is
running
out…

7. P.S.: what I said about the windows driver is wrong!! the program seemed to run equally fast!! xD (but windows do have better capturing tools :/ :p)

8. Fuzz says:

yassou!

1. hikiko says:

yassou fuzz!


text:
Chudnovsky algorithm

The Chudnovsky algorithm is a fast method for calculating the digits of π, based on Ramanujan’s π formulae. It was published by the Chudnovsky brothers in 1988[1] and was used in the world record calculations of 2.7 trillion digits of π in December 2009,[2] 10 trillion digits in October 2011,[3][4] 22.4 trillion digits in November 2016,[5] 31.4 trillion digits in September 2018–January 2019,[6] 50 trillion digits on January 29, 2020,[7] and 62.8 trillion digits on August 14, 2021.[8]

The algorithm is based on the negated Heegner number ${\displaystyle d=-163}$, the j-function ${\displaystyle j\left({\tfrac {1+i{\sqrt {163}}}{2}}\right)=-640320^{3}}$, and on the following rapidly convergent generalized hypergeometric series:[2]

${\displaystyle {\frac {1}{\pi }}=12\sum _{q=0}^{\infty }{\frac {(-1)^{q}(6q)!(545140134q+13591409)}{(3q)!(q!)^{3}\left(640320\right)^{3q+{\frac {3}{2}}}}}}$

A detailed proof of this formula can be found here:[9]

For a high performance iterative implementation, this can be simplified to

${\displaystyle {\frac {(640320)^{\frac {3}{2}}}{12\pi }}={\frac {426880{\sqrt {10005}}}{\pi }}=\sum _{q=0}^{\infty }{\frac {(6q)!(545140134q+13591409)}{(3q)!(q!)^{3}\left(-262537412640768000\right)^{q}}}}$

There are 3 big integer terms (the multinomial term Mq, the linear term Lq, and the exponential term Xq) that make up the series and π equals the constant C divided by the sum of the series, as below:

${\displaystyle \pi =C\left(\sum _{q=0}^{\infty }{\frac {M_{q}\cdot L_{q}}{X_{q}}}\right)^{-1}}$, where:
${\displaystyle C=426880{\sqrt {10005}}}$,
${\displaystyle M_{q}={\frac {(6q)!}{(3q)!(q!)^{3}}}}$,
${\displaystyle L_{q}=545140134q+13591409}$,
${\displaystyle X_{q}=(-262537412640768000)^{q}}$.

The terms Mq, Lq, and Xq satisfy the following recurrences and can be computed as such:

{\displaystyle {\begin{alignedat}{4}L_{q+1}&=L_{q}+545140134\,\,&&{\textrm {where}}\,\,L_{0}&&=13591409\\[4pt]X_{q+1}&=X_{q}\cdot (-262537412640768000)&&{\textrm {where}}\,\,X_{0}&&=1\\[4pt]M_{q+1}&=M_{q}\cdot \left({\frac {(12q-2)(12q-6)(12q-10)}{q^{3}}}\right)\,\,&&{\textrm {where}}\,\,M_{0}&&=1\\[4pt]\end{alignedat}}}

The computation of Mq can be further optimized by introducing an additional term Kq as follows:

{\displaystyle {\begin{alignedat}{4}K_{q+1}&=K_{q}+12\,\,&&{\textrm {where}}\,\,K_{0}&&=-6\\[4pt]M_{q+1}&=M_{q}\cdot \left({\frac {K_{q}^{3}-16K_{q}}{q^{3}}}\right)\,\,&&{\textrm {where}}\,\,M_{0}&&=1\\[12pt]\end{alignedat}}}

Note that

${\displaystyle e^{\pi {\sqrt {163}}}\approx 640320^{3}+743.99999999999925\dots }$ and
${\displaystyle 640320^{3}=262537412640768000}$
${\displaystyle 545140134=163\cdot 127\cdot 19\cdot 11\cdot 7\cdot 3^{2}\cdot 2}$
${\displaystyle 13591409=13\cdot 1045493}$

This identity is similar to some of Ramanujan's formulas involving π,[2] and is an example of a Ramanujan–Sato series.

The time complexity of the algorithm is ${\displaystyle O\left(n\log(n)^{3}\right)}$.[10]


text:
# ECON 407: Stata Primer

Here I briefly introduce the use of matrix algebra manipulations and maximum likelihood programming in Stata. Other software packages are arguably more adept for these tasks, but in this class we'll focus on stata as the tool for all of our work. If you prefer to do you work in other mathematical packages (e.g. S Plus, Matlab, etc.) you are free to do so.

## Basic Stata Commands¶

### Getting Help¶

If you need to find general help in stata, type help command where command is some stata command. You can also do keyword searches search keyword To see the same set of results in a better help viewer, type view search keyword for example view search reg

For all of our class excercises, we will be using datasets on my website. These are easily accessed from within stata. For example, suppose you want to use the file mroz.dta that is used in the first problem set. To load this file, issue the command webuse set http://rlhick.people.wm.edu/econ407/data/ followed by webuse mroz You will then have the file loaded into stata. My files are read-only, so if you plan on making changes, you should immediately save these locally so your changes to the data persist through time.

Suppose you have the file mroz.dta on your personal computer in a directory called /some/place. To load this file into stata, issue the command use "/some/place/mroz" (for mac/unix and the data will be loaded. For windows, if the file is in a directory \some\place, simply reverse the slash characters.

Suppose you have the file mroz.csv on your personal computer in a directory called /some/place. To load this file into stata, issue the command insheet "/some/place/mroz.csv" (for mac/unix and the data will be loaded. For windows, if the file is in a directory \some\place, simply reverse the slash characters.

### Creating and Modifying Variables¶

The command gen ln_gdp=log(gdp) will generate the natural log of gdp for each row in your dataset. Beware of missing value warning messages.

Once a variable is created, it can be modified using the command replace ln_gdp=ln_gdp+1 Conditional commands are also possible. Suppose you want to create a dummy called old =1 only if age is greater than 60 and otherwise zero. You can do this using conditional statements gen old=1 if age>=60 followed by replace old=0 if age<60

### A better way to create dummy variables¶

Suppose a variable x takes on the values 1,2, or 3. To create categorical (dummy) variables for each value, use tab x, gen(dum_x)

### Starting Over¶

Sometimes, you want to get rid of all the variables for a new analysis, or simply to start over. To do this, use the clear command

### Log Files¶

A very useful way to save your results is have stata automatically put everything in a log file. To initialize a log file and use it, issue log using "/some/place/my_first.log", replace txt Will create (or if it exists, will replace) the file my_first.log in the folder /some/place. If you don't won't to replace your existing work, use this command instead log using "/some/place/my_first.log", append txt And all of your results will be appended to the log file. When you are finished for a stata session, issue the command log close to close the file and save all changes. You may then open it using the text editor of your choosing.

### Do Files¶

Do files allow you to put all of the relevant stata commands for a project into one file, so that results can be easily replicated from one stata settion to the next. The use of do files are highly recommended for your own work, and are a required part of your assignments in the course. I will illustrate their use early in the class.

## Linear Algebra in Stata1¶

Stata has a linear algebra environment that can be started using the
mata command from the stata command line. Notice, when you type mata from the stata command window, the command prompt changes from a . to :. This is really your only way of distinguishing if you are in the mata or stata environment. Once you have finished using mata you can return to the normal stata environment by typing end Commands for mata may also be nested inside of stata do files (command files) so long as all mata commands are between the commands mata and end

### Getting Help¶

If you need to find general help on mata, type help mata command where command is some mata command. You can also do keyword searches search mata keyword To see the same set of results in a better help viewer, type view search mata keyword for example view search mata inverse

### Creating matrices, vectors, and scalars¶

There are two ways to create a matrix. Consider a two by two matrix, A=(1,2 \ 3,4) will give you

$$$\begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix}$$$

Or, you could create an empty matrix of the desired dimension B=J(2,3,.) where $B$ is of dimension rows=2 and columns=3. To fill it element by element use B[1,1]=5 B[1,2]=6 B[1,3]=7 B[2,1]=8 B[2,2]=9 B[2,3]=10 To display your matrix, type b

#### Building a matrix from submatrices¶

Suppose you have the matrices A to D defined as A=(1,2 \ 3,4) B=(5,6,7 \ 8,9,10) C=(3,4 \ 5,6) D=(1,2,3 \ 4,5,6) The matrix $E=\begin{bmatrix}A & B \\ C & D \end{bmatrix}$ can be constructed by E=(A,B \ C,D) to yield

$$$\label{eq:ps1_question} \begin{bmatrix} 1&2&5&6&7 \\ 3&4&8&9&10 \\ 3&4&1&2&3 \\ 5&6&4&5&6 \end{bmatrix}$$$

#### Creating Vectors¶

Row and column vectors can also be created using the same basic syntax: f=(1,2,3) is

$$$\begin{bmatrix} 1 & 2 & 3 \end{bmatrix}$$$

or, a column vector can be created by g=(3\ 4 \5) The special commands id=(1::100) and id=(1:100) are useful for constructing row and column vectors, respectively of incremented integer values between 1 and 100 (e.g. $1,2,3,\ldots,99,100$).

#### Creating Scalars¶

These are easy. Simply define a scalar by u=3

#### Creating a vector of zeros or ones¶

Suppose we have 1000 observations and we wish to create a column of ones (this is especially useful for estimating a constant term), use this command ones=J(1000, 1, 1) This command can be combined with what we have previously to create the fully matrix of independent variables (with the constant in the first positions) using X=(ones=J(1000, 1, 1),x) so long as your matrix of independent variables has 1000 rows.

#### Creating the Identity Matrix¶

The command I(1000) will create an identity matrix with 1000 rows.

### Stata datasets in Mata¶

Once you have loaded data into stata (.dta or .csv files), it is easy to access that information from within mata. For example, suppose we use the stata sample dataset, auto.dta accessed by webuse auto.dta There are generally two ways to get your .dta stata data into mata. One can copy the data or one can create a view that always refers back to the original stata dataset. Views are useful if you want to modify the data in mata and then return to stata with the original dataset changed based on operations in mata, while copying the data is both faster and requires less memory. If you need to do all your work in mata and don't need to change any of the underlying .dta data, I recommend the copy method. The command is

X=st_data(.,.)

copies the entire currently loaded stata database into mata, while

X=st_data(.,("mpg","rep78","weight"))

copies the all rows and only the three variables listed (columns) into X. It is also possible to copy in only a subset of rows and columns as

X=st_data((1::5,7::9),("mpg","rep78","weight"))

copies in rows 1 to 4 and 7 to 9 with the three variables into X. Remember, once you end the mata session, all changes to the data following an st_data command are lost. The st_view command has identical syntax to st_data and will allow for changes to be preserved once back in stata. In this course, it is sufficient to use the command X=st_data(.,.) to load data into mata.

### The mata workspace¶

The command mata describe will list all the matrices, vectors, and scalars currently defined. To delete all of these, issue mata clear To delete only a few matrices, vectors, or scalars, issue mata drop X f g

Stata offers three functions useful for checking conformability conditions. The function rows(X) and cols(X) return the number of rows and columns of X respectively, while length(X) Calculates the total number of elements in matrix X, equal to (# rows) $\times$ (# columns.)

### Important Commands¶

Operation Command
Transpose of B B'
Inverse of B luinv(B)
Inverse of B (if symmetric) invsym(B)
Diagonal Elements of matrix B diagonal(B)
Put vector B into diagonal square matrix diag(B)
Upper Triangular Elements of B uppertriangle(B)
Lower Triangular Elements of B lowertriangle(B)
Sort based on values in column i sort(B,i)
Sort based on values in column i and j sort(B,(i,j))
Multiplication of Matrices if missing elements cross(B,A)

For matrices A and B of same dimensions, matrix addition is given by C=A+B Subtraction follows in a similar way. Multiplication (assuming conformability of A and B) is given by C=A*B Of course, combinations of these operators are possible as well. For example, invsym(x'x)*x'y Would be the OLS estimator we discuss in Chapter 1. There are many more functions and tools in the mata environment that I won't describe here, but that are accessible to interested students.


text:
# Let $G$ be a Lie group. Show that there is a diffeomorphism $TG \cong G \times T_e G$.

Since $T_p G$ is isomorphic to $T_e G$ for all $p\in G$, it makes sense that each vector in $T_p G$ can be identified with a vector in $T_e G$. Hence, to make the map from $TG$ one to one, we must identify each vector in $T_e G$ with a point in $G$, but I'm having trouble saying this precisely.

Thanks so much!

-
Careful: On any (connected) manifold, $T_p M$ and $T_q M$ are isomorphic for any choice of $p$ and $q$, but most manifolds don't have $TM\cong M\times T_p M$ for any $p$. Also, I don't understand your second sentence, why must we identify a vector in $T_e G$ with a point in $G$? –  Jason DeVito Feb 20 '13 at 2:11
I guess I should be more precise: any $v\in TG$ belongs to $T_p G$ for some $p\in G$. But $T_p G \cong T_e G$, so $v=dLg_e(w)$ for some $w\in T_e G$ where $Lg$ is left multiplication by $g$. –  William Stagner Feb 20 '13 at 2:22
Well, you have the key insight to solving the problem - where exactly are you struggling? –  Jason DeVito Feb 20 '13 at 2:26

I assume you mean to prove that $T_e G\times G$ and $TG$ are isomorphic as bundles over $G$. As Jason DeVito points out you have the right idea--you just use the translation maps to slide the local triviality at $e$ around the entire group so that it is globally trivial. So I'm guessing you are having difficulty just getting the details nailed out.

Define $\Phi:G\times T_e G\to TG$ by $\Phi(g,X)=(L_g)_\ast(X)$. Clearly $\Phi$ respects fibers and since $(L_g)_\ast$ is a linear isomorphism (since $L_g$ is a diffeomorphism) it follows that $\Phi$ is bijective.

Let us now prove that $\Phi$ is smooth. We shall see that everything shall be almost tautological once we choose charts correctly. Of course, the choosing of the charts is going to be slightly messy, but not too bad.

Choose any $(g,X)\in G\times T_e G$. Choose then a centered chart $(U,\varphi)$ of $G$ at $e$ and note that this naturally gives us a chart $(V,\psi)$ at $g$ with $V=L_g(U)$ and $\psi=\varphi\circ L_{g^{-1}}$. Now, the combination of these charts gives us a chart $(V\times T_e G,\phi)$ at $(g,X)$ defined by

$$\phi\left(h,\sum_{j=1}^{n}\alpha_i \left.\frac{\partial}{\partial x_i}\right|_e\right)=(\psi(g),\alpha_1,\cdots,\alpha_n)$$

Where, as usual, $\displaystyle \left.\frac{\partial}{\partial x_i}\right|_e$ is the pushforward of $\displaystyle \left.\frac{\partial}{\partial x_i}\right|_0\in T_0\mathbb{R}^n$ through $\varphi^{-1}$.

Recall that the choice of chart $(V,\psi)$ at $g$ gives us a $(\pi^{-1}(V),\tau)$ (where $\pi:TG\to G$ is the canonical projection) given on the fiber $T_h G$ by

$$\sum_{j=1}^{n}\alpha_i\left.\frac{\partial}{\partial x_i}\right|_h\ \longmapsto\ (\psi(h),\alpha_1,\cdots,\alpha_n)$$

where, as above, $\displaystyle \left.\frac{\partial}{\partial x_i}\right|_h$ is the pushforward of $\displaystyle \left.\frac{\partial}{\partial x_i}\right|_{\psi(h)}\in T_{\psi(h)}\mathbb{R}^n$.

So, now we want to show that $\tau\circ\Phi\circ\phi^{-1}$ is smooth. That said,

\begin{aligned}\tau\left(\Phi\left(\phi^{-1}\left(\psi(h),\alpha_1,\cdots,\alpha_n\right)\right)\right) &= \tau\left(\Phi\left(h,\sum_{j=1}^{n}\alpha_i\left.\frac{\partial}{\partial x_i}\right|_e\right)\right)\\ &=\tau\left((L_h)_\ast\left(\sum_{j=1}^{n}\alpha_i\left.\frac{\partial}{\partial x_i}\right|_e\right)\right)\\ &= \tau\left(\sum_{j=1}^{n}\alpha_i (L_h)_\ast\left(\left.\frac{\partial}{\partial x_i}\right|_e\right)\right)\\ &= \tau\left(\sum_{j=1}^{n}\alpha_i \left.\frac{\partial}{\partial x_i}\right|_h\right)\\ &= (\psi(h),\alpha_1,\cdots,\alpha_n)\end{aligned}

where we have used the fact that, as defined, $\displaystyle (L_h)_\ast\left(\left.\frac{\partial}{\partial x_i}\right|_e\right)=\left.\frac{\partial}{\partial x_i}\right|_h$ (check this!). Thus, it's pretty obvious that $\tau\circ\Phi\circ\phi^{-1}$ is smooth--it's the identity map!

Since $\Phi$ is a bijective bundle map it follows from basic topology that $\Phi$ is a bundle isomorphism

Of course, if you are privy to a little more bundle theory than the definitions there is a simpler way to do all of the above. Namely, recall that a global frame for a vector bundle $\pi:B\to M^n$ is a set global sections $\sigma_i:M\to B$, where $i=1,\cdots,n$, such that for each $x\in M$ we have that $\{\sigma_i(x)\}$ is a basis for $B_x$. A common fact then is that a vector bundle is trivial if and only if it admits a global frame (see here if this is unknown to you).

So, the above ideal of sliding the local trivilizations around the entirety of $G$ becomes even more concrete since we can use local frames (local trivilizations) to construct global ones). Namely, let us a choose a chart $(U,\varphi)$ at $e\in G$ and note that we have a natural map $\sigma:U\to TG$ defined by taking a poing $h\in U$ to the basis $\displaystyle \left\{\frac{\partial}{\partial x_i}\mid_h\right\}$ (as defined above). Let us then extend $\sigma$ to a global section $\sigma:G\to TG$ by defining $\sigma$ on $L_g(U)$ for every $g\in G$ to send $x$ to $(L_g)_\ast(\sigma(g^{-1}x))$. It's not hard to see that this definition is well-defined, and moreover that $\sigma$ is then a global frame for $TG\to G$. Thus, $TG$ is trivial. You'll note that this is practically the same proof as above, just a lot of work hidden in the theorem "trivial bundles are exactly those with global frames".

One last thing I can't help to point out. This theorem (which really was not too hard to prove!) says that every Lie group is parallelizable (has a trivial tangent bundle). This precludes a lot of spaces from possessing a Lie group structure at all! For example, it is the statement of the famous Hairy Ball Theorem that every even dimensional sphere is not parallelizable and thus can't (for any attempted definition of an operation!) be given the structure of a Lie Group. That is pretty cool.

By the way, the only spheres which are Lie groups are $S^0$, $S^1$, and $S^3$.

-
Wow! Thank you for such a detailed answer. I very much appreciate it. –  William Stagner Feb 20 '13 at 17:46
I'm sorry to comment on this old answer, but I don't get the "(check this!)" part. I formulated a question on that in math.stackexchange.com/questions/663681/… –  Christoph Feb 4 '14 at 19:38
But why does $\Phi$ commute with the first projection on the cartesian product? Namely $\pi\circ\Phi(g,X)=pr_1(g,X)=g$ –  Student Mar 31 '14 at 6:50

Here's a more "category-y" way of seeing why the above map is smooth:

We have a smooth map: $\star\colon G \times G \rightarrow G$

This gives rise to a smooth map, the "derivative": $T{\star}\colon TG \times TG \rightarrow TG$

(recall that $f\colon M \rightarrow N$ gives rise to $Tf\colon TM \rightarrow TN$)

We also have a smooth map $F\colon G \times T_eG \rightarrow TG \times TG$, given by the two smooth maps $0\colon G \rightarrow TG$ (the $0$ vector field) and the inclusion $i\colon T_eG \rightarrow TG$.

It is straightforward to verify that $T{\star} \circ F$ is the same as what Alex Youcis specified above.

-


text:
# Properties

 Label 84966.cr Number of curves $6$ Conductor $84966$ CM no Rank $1$ Graph

# Related objects

Show commands for: SageMath
sage: E = EllipticCurve("84966.cr1")

sage: E.isogeny_class()

## Elliptic curves in class 84966.cr

sage: E.isogeny_class().curves

LMFDB label Cremona label Weierstrass coefficients Torsion structure Modular degree Optimality
84966.cr1 84966da6 [1, 1, 1, -194269151539, 32957388273621545] [2] 424673280
84966.cr2 84966da4 [1, 1, 1, -12164922379, 512897547867641] [2, 2] 212336640
84966.cr3 84966da5 [1, 1, 1, -4143565539, 1179186740968137] [2] 424673280
84966.cr4 84966da2 [1, 1, 1, -1284742859, -4454988308359] [2, 2] 106168320
84966.cr5 84966da1 [1, 1, 1, -994725579, -12060749479815] [2] 53084160 $$\Gamma_0(N)$$-optimal
84966.cr6 84966da3 [1, 1, 1, 4955160181, -35033009165575] [2] 212336640

## Rank

sage: E.rank()

The elliptic curves in class 84966.cr have rank $$1$$.

## Modular form 84966.2.a.cr

sage: E.q_eigenform(10)

$$q + q^{2} - q^{3} + q^{4} - 2q^{5} - q^{6} + q^{8} + q^{9} - 2q^{10} - 4q^{11} - q^{12} + 2q^{13} + 2q^{15} + q^{16} + q^{18} - 4q^{19} + O(q^{20})$$

## Isogeny matrix

sage: E.isogeny_class().matrix()

The $$i,j$$ entry is the smallest degree of a cyclic isogeny between the $$i$$-th and $$j$$-th curve in the isogeny class, in the LMFDB numbering.

$$\left(\begin{array}{rrrrrr} 1 & 2 & 4 & 4 & 8 & 8 \\ 2 & 1 & 2 & 2 & 4 & 4 \\ 4 & 2 & 1 & 4 & 8 & 8 \\ 4 & 2 & 4 & 1 & 2 & 2 \\ 8 & 4 & 8 & 2 & 1 & 4 \\ 8 & 4 & 8 & 2 & 4 & 1 \end{array}\right)$$

## Isogeny graph

sage: E.isogeny_graph().plot(edge_labels=True)

The vertices are labelled with LMFDB labels.


text:
Select Page

Triple Integrals

# Definition and Properties of Triple Integrals

### Definition of Triple Integral

We can introduce the triple integral similar to double integral as a limit of a Riemann sum. We start from the simplest case when the region of integration $$U$$ is a rectangular box $$\left[ {a,b} \right] \times \left[ {c,d} \right]$$ $$\times \left[ {p,q} \right]$$ (Figure $$1$$).

Let the set of numbers $$\left\{ {{x_0},{x_1}, \ldots ,{x_m}} \right\}$$ be a partition of $$\left[ {a,b} \right]$$ into small intervals so that the following relations are valid:

${a = {x_0} \lt }\kern0pt{ {x_0} \lt {x_1} \lt {x_2} \lt \ldots} { \lt {x_i} \lt \ldots } {\lt {x_{m – 1}} \lt {x_m} }={ b.}$

Figure 1.

Similarly, we can construct partitions of the segment $$\left[ {c,d} \right]$$ along the $$y$$-axis and the segment $$\left[ {p,q} \right]$$ along the $$z$$-axis:

${c }={ {y_0} \lt {y_1} \lt {y_2} \lt \ldots}\kern0pt { \lt {y_j} \lt \ldots }\kern0pt {\lt {y_{n – 1}} \lt {y_n} }={ d,}$
${p }={ {z_0} \lt {z_1} \lt {z_2} \lt \ldots}\kern0pt { \lt {z_k} \lt \ldots }\kern0pt {\lt {z_{\ell – 1}} \lt {z_\ell} }={ q.}$

The Riemann sum of the function $$f\left( {x,y,z} \right)$$ over the partition of $$\left[ {a,b} \right] \times \left[ {c,d} \right]$$ $$\times \left[ {p,q} \right]$$ is defined by

${\sum\limits_{i = 1}^m {\sum\limits_{j = 1}^n {\sum\limits_{k = 1}^{\ell} {f\left( {{u_i},{v_j},{w_k}} \right) }}\kern0pt{{ \Delta {x_i}\Delta {y_j}\Delta {z_k}} } } }$

Here $${\left( {{u_i},{v_j},{w_k}} \right)}$$ is some point in the rectangular box $$\left( {{x_{i – 1}},{x_i}} \right)$$ $$\times \left( {{y_{j – 1}},{y_j}} \right)$$ $$\times \left( {{z_{k – 1}},{z_k}} \right),$$ and the differences are

${\Delta {x_i} = {x_i} – {x_{i – 1}},\;\;}\kern-0.3pt {\Delta {y_j} = {y_j} – {y_{j – 1}},\;\;}\kern-0.3pt {\Delta {z_k} = {z_k} – {z_{k – 1}}.}$

The triple integral of a function $$f\left( {x,y,z} \right)$$ in the parallelepiped $$\left[ {a,b} \right] \times \left[ {c,d} \right] \times \left[ {p,q} \right]$$ is defined as a limit of the Riemann sum, such that the maximum values of the differences $$\Delta {x_i},$$ $$\Delta {y_j}$$ and $$\Delta {z_k}$$ approach zero:

$\require{AMSmath.js} {\iiint\limits_{\left[ {a,b} \right] \times \left[ {c,d} \right] \times \left[ {p,q} \right]} {f\left( {x,y,z} \right)dV \text{ = }} }\kern0pt {\lim\limits_{\substack{ \text{max}\,\Delta {x_i} \to 0\\ \text{max}\,\Delta {y_j} \to 0\\ \text{max}\,\Delta {z_k} \to 0}} {\sum\limits_{i = 1}^m {\sum\limits_{j = 1}^n {\sum\limits_{k = 1}^\ell} {f\left( {{u_i},{v_j},{w_k}} \right)\cdot }}}\kern0pt{{{ \Delta {x_i}\Delta {y_j}\Delta {z_k}} } } }$

To define the triple integral over a general region $$U,$$ we choose a rectangular box $$\left[ {a,b} \right]$$ $$\times \left[ {c,d} \right]$$ $$\times \left[ {p,q} \right]$$ containing the given region $$U.$$ Then we introduce the function $$g\left( {x,y,z} \right)$$ such that

$\begin{cases} {g\left( {x,y,z} \right) }={ f\left( {x,y,z} \right),} \text{ if}\;f \in U \\ {g\left( {x,y,z} \right) }={ 0,} \text{ if}\;f \notin U \end{cases}$

Then the triple integral of the function $$f\left( {x,y,z} \right)$$ over a general region $$U$$ is defined as

${\iiint\limits_U {f\left( {x,y,z} \right)dV} } = {\iiint\limits_{\left[ {a,b} \right] \times \left[ {c,d} \right] \times \left[ {p,q} \right]} {g\left( {x,y,z} \right)dV} .}$

### Properties of Triple Integrals

Let $$f\left( {x,y,z} \right)$$ and $$g\left( {x,y,z} \right)$$ be functions which are integrable in the region $$U.$$ Then the following properties are valid:

1. $${\iiint\limits_U {\left[ {f\left( {x,y,z} \right) + g\left( {x,y,z} \right)} \right]dV} }$$ $$= {\iiint\limits_U {f\left( {x,y,z} \right)dV} }$$ $$+{ \iiint\limits_U {g\left( {x,y,z} \right)dV} ;}$$
2. $${\iiint\limits_U {\left[ {f\left( {x,y,z} \right) – g\left( {x,y,z} \right)} \right]dV} }$$ $$= {\iiint\limits_U {f\left( {x,y,z} \right)dV} }$$ $$-{ \iiint\limits_U {g\left( {x,y,z} \right)dV} ;}$$
3. $${\iiint\limits_U {kf\left( {x,y,z} \right)dV} }$$ $$={ k\iiint\limits_U {f\left( {x,y,z} \right)dV},}$$ where $$k$$ is a constant;
4. If $${f\left( {x,y,z} \right)} \le {g\left( {x,y,z} \right)}$$ at any point of the region $$U,$$ then $${\iiint\limits_U {f\left( {x,y,z} \right)dV} }\le{ \iiint\limits_U {g\left( {x,y,z} \right)dV} ;}$$
5. If the region $$U$$ is a union of two non-overlapping regions $${U_1}$$ and $${U_2},$$ then
$${\iiint\limits_U {f\left( {x,y,z} \right)dV} } = {\iiint\limits_{{U_1}} {f\left( {x,y,z} \right)dV} } + {\iiint\limits_{{U_2}} {f\left( {x,y,z} \right)dV} ;}$$
6. Let $$m$$ be the minimum and $$M$$ be the maximum value of a continuous function $$f\left( {x,y,z} \right)$$ in the region $$U.$$ Then the following estimate is valid for the triple integral:
$${m \cdot V }\le {\iiint\limits_U {f\left( {x,y,z} \right)dV} }\le{ M \cdot V,}$$
where $$V$$ is the volume of the integration region $$U.$$
7. The Mean Value Theorem for Triple Integrals
If a function $$f\left( {x,y,z} \right)$$ is continuous in the region $$U,$$ then there exists a point $${M_0} \in U$$ such that
$${\iiint\limits_U {f\left( {x,y,z} \right)dV} }={ f\left( {{M_0}} \right) \cdot V,}$$
where $$V$$ is the volume of the region $$U.$$

## Solved Problems

Click on problem description to see solution.

### ✓Example 1

Evaluate the maximum value of the triple integral

${ \iiint\limits_U {\frac{{dxdydz}}{{\sqrt {100 – {x^2} – {y^2} – {z^2}} }}} ,}$

where $$U$$ is the ball with the radius $$R = 6$$ centered at the origin.

### ✓Example 2

Evaluate the maximum and minimum values of the triple integral

$\iiint\limits_U {\frac{{dV}}{{\ln \left( {e + x + y + z} \right)}}} ,$

where the region $$U$$ is the parallelepiped:

${U }={ \left\{ {\left( {x,y,z} \right)|\;0 \le x \le 1,\;}\right.}\kern0pt{\left.{0 \le y \le 2,\;0 \le z \le 3} \right\}.}$

### Example 1.

Evaluate the maximum value of the triple integral

${ \iiint\limits_U {\frac{{dxdydz}}{{\sqrt {100 – {x^2} – {y^2} – {z^2}} }}} ,}$

where $$U$$ is the ball with the radius $$R = 6$$ centered at the origin.

#### Solution.

The equation of the ball is given by

${{x^2} + {y^2} + {z^2} }\le{ 36.}$

Using the property $$6,$$ we can write:

$I \le M \cdot V,$

where the volume $$V$$ of the ball is

${V = \frac{4}{3}\pi {R^3} }={ \frac{4}{3}\pi \cdot {6^3} }={ 288\pi .}$

The maximum value $$M$$ of the integrand is

${M = \frac{1}{{\sqrt {100 – 36} }} }={ \frac{1}{8}.}$

From here we can get the maximum value of the triple integral:

${I \le \frac{1}{8} \cdot 288\pi }={ 36\pi .}$

### Example 2.

Evaluate the maximum and minimum values of the triple integral

$\iiint\limits_U {\frac{{dV}}{{\ln \left( {e + x + y + z} \right)}}} ,$

where the region $$U$$ is the parallelepiped:

${U }={ \left\{ {\left( {x,y,z} \right)|\;0 \le x \le 1,\;}\right.}\kern0pt{\left.{0 \le y \le 2,\;0 \le z \le 3} \right\}.}$

#### Solution.

First we calculate the volume of the region of integration $$U:$$
$V = 1 \cdot 2 \cdot 3 = 6.$
The estimate of the integral is defined by the inequality
$m \cdot V \le I \le M \cdot V.$
Here the minimum value $$m$$ of the integrand is
${m }={ \frac{1}{{\ln \left( {e + 1 + 2 + 3} \right)}} } = {\frac{1}{{\ln \left( {e + 6} \right)}}.}$
Accordingly, the maximum value $$M$$ is
$M = \frac{1}{{\ln e}} = 1.$
Thus, the estimate of the integral is
${\frac{6}{{\ln \left( {e + 6} \right)}} \le I }\le{ 6.}$


text:
### Weekly Challenge 43: A Close Match

Can you massage the parameters of these curves to make them match as closely as possible?

### Weekly Challenge 44: Prime Counter

A weekly challenge concerning prime numbers.

### Weekly Challenge 28: the Right Volume

Can you rotate a curve to make a volume of 1?

# Weekly Challenge 29: Integral Equation

##### Stage: 5 Short Challenge Level:

Find the function $f(x)$ which solves the equation $$\int_0^x f(t)\,dt = 3f(x)+k\,,$$ where $k$ is a constant.

Did you know ... ?

In the same way that a differential equation is formed from differentials, an integral equation is formed from integrals. Problems in mathematics might naturally be specified in terms of integrals, others in terms of differentials. Differentials are mainly used when the problem involves only local changes, such as the force at a point, whereas integrals are used where the problem involves a global property of a system, such as the total energy.


text:
Towards High-Resolution Salient Object Detection

Deep neural network based methods have made a significant breakthrough in salient object detection. However, they are typically limited to input images with low resolutions ($400\times400$ pixels or less)... (read more)

PDF Abstract ICCV 2019 PDF ICCV 2019 Abstract


text:
# If one mole of carbon-12 ("^12C) atoms was weighed, what would it have a mass of?

Well, approx. $12 \cdot g$.
By definition, $\text{Avogadro's number}$ $=$ $6.022 \times {10}^{23} \cdot m o {l}^{-} 1$ is the number of ""^12C $\text{atoms}$ present in a $12 \cdot g$ sample of ""^12C.


text:
# Glossary

## Substitution model

Model which describes the process of changing sequence of characters into another set of traits.


text:
# Boolean Algebra on Circuits

Can I use boolean algebra to simplify electric circuits installed on buildings, establishments (etc.) using the blueprint of the buildings fluorescent lamp circuit system and electric fan circuit system?

-
That's within the realm of possibility, although I have no idea if you can do it or not. I would have to know you a lot better. –  rschwieb Dec 5 '12 at 13:54
Why? Please, your help and expertise would be greatly appreciated. . –  Mark Agustin Dec 6 '12 at 14:13
Why what?${}{}$ Do you mean How? –  rschwieb Dec 6 '12 at 14:23
Nevermind the why sir, lets take how sir, how could you know me a lot better?? –  Mark Agustin Dec 6 '12 at 14:54
Haha. "Money for nothing and chicks for free"... Nice try. Boolean algebra deals with logic gates, not really the circuits you are thinking about. –  Alec Dec 15 '13 at 8:46


text:
# Refers to the number ofpredominantly powerful actors in the international system.

###### Question:

refers to the number of
predominantly powerful actors in the international system.

### A line passes through the points (-1, -6) and (-4, 3). What is the equation of this line in slope-intercept

A line passes through the points (-1, -6) and (-4, 3). What is the equation of this line in slope-intercept form? A. y = –3x – 9 B. y = x + 19 C. y = 9x + 7 D. y = x – 7...

### What is the cisterna chyli

What is the cisterna chyli...

### Sophie uses 18 beads to make a necklace. Three-sixths of the beads are purple. How many beads are purple? 6 9 12 15

Sophie uses 18 beads to make a necklace. Three-sixths of the beads are purple. How many beads are purple? 6 9 12 15...

### It was better up here, he thought, better than in the gutters.'Based on this statement, what can you infer about John Renshaw's

It was better up here, he thought, better than in the gutters."Based on this statement, what can you infer about John Renshaw's early life? ...

### The bill of rights placed into law some of the natural or unalienable rights that thomas

The bill of rights placed into law some of the natural or unalienable rights that thomas jefferson spoke about in the...

### Brainiest for first answer and 20 ptAcid rain is created when chemicals in react with .A.smog . . . water vaporB.fertilizers . . . waterC.fertilizers

Brainiest for first answer and 20 pt Acid rain is created when chemicals in react with .A.smog . . . water vaporB.fertilizers . . . waterC.fertilizers . . . sunlightD.smog . . . sunlightPlease select the best answer from the choices providedABCDHi, please write this in the answer part if you want ...

### 1. choose the order pair that is a solution for this equation. x - 3y = -7 a. (2,4) b.

1. choose the order pair that is a solution for this equation. x - 3y = -7 a. (2,4) b. (2,3) c. (2,-1) 2. could this order pair be a solution to this equation? 3x - 2y = 10 a. yes b. no 3. in which quadrant is point (4,6) located? (remember to use roman numerals to write the quadrant numbers.) 4...

### What is the sum of -3x^2-7x+9 and -5x^2+6x-4

What is the sum of -3x^2-7x+9 and -5x^2+6x-4...

### 29. Write a prescription for the amount and type of fluid that should be consumed before, during, and after vigorous exercise.

29. Write a prescription for the amount and type of fluid that should be consumed before, during, and after vigorous exercise....

PLEASE HELP ME I'LL CHOOSE BRAINLIEST TO WHOEVER GIVE ME RIGHT ANSWER PLEASE HELP> Among the senior class at a high school, 55% of Ms. Keating’s students plan on majoring in a branch of STEM, while 49% of Ms. Lewis’s students plan on majoring in a branch of STEM. Suppose Ms. Keating chooses ...

### Where are the metalloids located on the periodic table?

Where are the metalloids located on the periodic table?...

Please help me with this $Please help me with this$...

### Predict what metallic compound forms when sulfuric acid reacts with magnesium metal

Predict what metallic compound forms when sulfuric acid reacts with magnesium metal...

### Greek and latin root aster meaning

Greek and latin root aster meaning...

### Sye chase started and operated a small family architectural firm in 2016. the firm was

Sye chase started and operated a small family architectural firm in 2016. the firm was affected by two events: (1) chase provided $25,000 of services on account, and (2) he purchased$2,800 of supplies on account. there were \$250 of supplies on hand as of december 31, 2016. record the two transacti...

### We play our fantasies out in real life ways andNo Final Fantasy, can we end these games though?You give me energy, make me feel

We play our fantasies out in real life ways and No Final Fantasy, can we end these games though? You give me energy, make me feel lightweight Like the birds of a feather, baby We real life made for each other And it's hard to keep my cool When other bi. t.c. h.e. s tryna get with my dude and When ...


text:
I now have a computer program that can do this for any n.

Yay!

Stressed out about exams.

But I'm alive, I promise!

Finally saw that 2012 film called Argo.

What a wasteful American propaganda film.

@ColinTheMathmo I believe that there must be some generating functions to study these things. For example, S(N) appears as the degree of $$y$$ in the coefficient of $$z^N$$ in the formal series.

$\prod_{p \in \mathbb{P}} \frac{1}{1-yz^p}$

@ColinTheMathmo Wow! Are there OEIS pages about this subject?

@bmreiniger Wow. Reverse procrastination 😂

I'll try this out.

@tpfto That's a good idea.

Time management seems to be the key here. My schedules are generally very loose with lots of unmanaged swaths.

@tpfto My main issue is that I get easily distracted towards acquiring less important trivia about movies, politics, tech, society, etc.

It's just a rabbit hole.

@tpfto I write Todo lists and then I don't follow them. I don't demarcate priorities, maybe I should do that.

How do you deal with procrastination? Please give me some tips. I struggle a lot.

Awesome short film about caste. Good comments below. The name is a play on a 1972 surrealist French film directed by Luis Buñuel.

youtube.com/watch?v=AJBkmtpu1s

Heavy metal rocks French President’s palace after YouTube bet reut.rs/3vgwU2K

I relate to that. 😟 😥

I saw Get Out (2017). Great film. Must watch.

breakfastisready.xyz/blog/2021

I saw Chungking Express (1994).

I think the movie is cute and funny. But is it a philosophical exploration into the perils of urban romance? Hell no! People read too much into this Wong Kar-Wai film.

It's nice y'all, but please don't start writing a thesis on it.

Suppose you have 25 horses and a race track with 5 lanes. What is the least number of races in which you can select the best 3 horses?

Obvious rules apply. No timer is involved and performance of each horse is constant through the races.

Watch Human Nature.

It's a 2019 documentary about CRISPR, the spooky gene editing technology and the ethical concerns behind it.

It's 2021 now and we have a come a long way from that controversial Chinese trial of CRISPR on humans. It would be cool if someone has any follow-up recommendations.

en.wikipedia.org/wiki/Human_Na

19 years from now, we'll realize that all this while coronavirus had simply been the dual of the ronavirus.

The two "It" films (2017-19) are absolutely boring. I really don't get why people watch this stuff.

The real horror is the consistently lousy screenplay. Also, what exactly does the police do in Derry?

Show older

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!