text:
Resolvent estimates and the decay of the solution to the wave equation with potential
Journées équations aux dérivées partielles (2001), article no. 4, 7 p.

We prove a weighted ${L}^{\infty }$ estimate for the solution to the linear wave equation with a smooth positive time independent potential. The proof is based on application of generalized Fourier transform for the perturbed Laplace operator and a finite dependence domain argument. We apply this estimate to prove the existence of global small data solution to supercritical semilinear wave equations with potential.

@article{JEDP_2001____A4_0,
title = {Resolvent estimates and the decay of the solution to the wave equation with potential},
journal = {Journ\'ees \'equations aux d\'eriv\'ees partielles},
eid = {4},
publisher = {Universit\'e de Nantes},
year = {2001},
doi = {10.5802/jedp.588},
zbl = {1021.35071},
mrnumber = {1843405},
language = {en},
url = {http://archive.numdam.org/articles/10.5802/jedp.588/}
}
TY  - JOUR
TI  - Resolvent estimates and the decay of the solution to the wave equation with potential
JO  - Journées équations aux dérivées partielles
PY  - 2001
DA  - 2001///
PB  - Université de Nantes
UR  - http://archive.numdam.org/articles/10.5802/jedp.588/
UR  - https://zbmath.org/?q=an%3A1021.35071
UR  - https://www.ams.org/mathscinet-getitem?mr=1843405
UR  - https://doi.org/10.5802/jedp.588
DO  - 10.5802/jedp.588
LA  - en
ID  - JEDP_2001____A4_0
ER  -
%0 Journal Article
%T Resolvent estimates and the decay of the solution to the wave equation with potential
%J Journées équations aux dérivées partielles
%D 2001
%I Université de Nantes
%U https://doi.org/10.5802/jedp.588
%R 10.5802/jedp.588
%G en
%F JEDP_2001____A4_0
Georgiev, Vladimir. Resolvent estimates and the decay of the solution to the wave equation with potential. Journées équations aux dérivées partielles (2001), article  no. 4, 7 p. doi : 10.5802/jedp.588. http://archive.numdam.org/articles/10.5802/jedp.588/

[A75] Agmon, S. Spectral Properties of Schrödinger Operators and Scattering Theory. Ann. Scuola Norm. Sup. Pisa 1975, 4 (2), 151-218. | Numdam | MR | Zbl

[BS93] Beals, M.; Strauss, W. ${L}^{p}$ Estimates for the Wave Equation with a Potential. Comm. Part. Diff. Eq. 1993, 18( 7,8), 1365-1397. | MR | Zbl

[GHK] Georgiev, V., Heiming, Ch., Kubo, H. Supercritical semilinear wave equation with non-negative potential, will appear in Comm. Part. Diff. Equations. | MR | Zbl

[I60] Ikebe, T. Eigenfunction Expansions associated with the Scrödinger Operator and their Applications to Scattering Theory. Arch. Rational Mech. Anal. 1960, 5, 1-34. | MR | Zbl

[I85]Isozaki, H., Differentiability of Generalized Fourier Transforms associated with Schrödinger Operators. J. Math Kyoto Univ. 1985, 25 (4), 789-806. | MR | Zbl

[J79] John, F. Blow-up of Solutions of Nonlinear Wave Equations in Three Space Dimensions. Manuscripta Math.1979, 28, 235 - 268. | MR | Zbl

[J81] John, F. Blow-up of Quasi-linear Wave Equations in Three Space Dimensions. Comm. Pure Appl. Math. 1981, 34, 29-51. | Zbl

[Ho83] Hörmander, L. The Analysis of Linear Partial Differential Operators II: Differential Operators with Constant Coefficients; Eds.; Springer-Verlag: Berlin, Heidelberg, New York, Tokyo, 1983. | MR | Zbl

[H99] Kerler, C. Perturbations of the Laplacian with Variable Coefficients in Exterior Domains and Differentiability of the Resolvent. Asymptotic Analysis 1999, 19, 209-232. | MR | Zbl

[M75] Morawetz, C. Notes on Time Decay and Scattering for some Hyperbolic Problems. Society for Industrial and Applied Mathematics, Philadelphia, 1975. | MR | Zbl

[Sch83] Schaeffer, J. Wave Wquation with Positive Nonlinearities. Ph. D. thesis, Indiana Univ. 1983.

[ST97] Strauss, W.; Tsutaya, K. Existence and blow up of small amplitude nonlinear waves with a negative potential. Discrete and Cont. Dynam. Systems 1997, 3 (2), 175-188. | MR | Zbl

Cited by Sources:


text:
[HOME] Flɂm点
 ԊԒnR~jeB[̂m点ł

@PQ̃{eBA2017.12.1
 PQPV(j@ʂ肦̎ԁ@iPOFOO`PPFROjPQQO(j @k@@@iPTFOO`PWFOOjPQQP()@ypb@iLbYPWFOO`AlPXFOO`jPQQSijoLk@iX:RO`PP:ROj@@@@@@@@@@@@@\񐧂ł̂ŁAOĂ\݂B@ @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@LbYpb̂݊JÌ̂P̎tƂ܂B@@@@@@@@@@@@@ua@vEuNkv͂ł\ݎt܂BiF39-7051j

@܂Ȃ悵T2017.10.26
 SΗjɊJÁBCyɂǂI@FPPQWi΁j@PO:OO`PQ:OO@FLbY[΁@ہFO`RΎ̐eqQF

@ăjMjM̑2017.10.26
 SjɊJÂĂ܂B͐vl搶̓ʃbXłQ҂Ă܂I@FPPQSij@POFOO`PQFOOitXFROj@FԊԒnR~Z@ړIz[ab@ẮF㗚AA^I@@@@@@@@\݂Q͕svłBCyɂQB

@یv[p[N̂ē2017.10.26
 v[p[NƂ́AőIŎRɗVׂꏊ̂ƁB̑l邩A܂tɗĂˁIiJV~j@ F PPQPi΁j@PTFOO`PVFOO@ :@ԊԃR~Z ӂꂠ\svAcیғŎQ

@iuv̂ē2017.10.26
 R[q[gɂ傱ƂَqĂPOO~łBlłA܂FBƈꏏłCyɂǂB@ F PPPTij@PPFOO`PUFOO@ :@ԊԃR~Z@T
 P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16 P17 P18 P19 P20 P21 P22 P23 P24 P25 P26 P27 P28 P29 P30 P31 P32 P33 P34 P35 P36 P37 P38 P39 P40 P41 P42 P43 P44 P45 P46 P47 P48 P49 P50 P51 P52 P53 P54 P55 P56 P57 P58 P59 P60 P61 P62 P63 P64 P65 P66 P67 P68 P69 P70 P71 P72 P73 P74 P75 P76 P77 P78 P79 P80 P81 P82 P83 P84 P85 P86 P87 P88 P89 P90 P91 P92 P93
[ҏW]
CGI-design

format: plain


text:
# Definition:Net (Metric Space)

## Definition

Let $M = \left({A, d}\right)$ be a metric space.

Let $\epsilon \in \R_{>0}$ be a strictly positive real number.

An $\epsilon$-net for $M$ is a subset $S \subseteq A$ such that:

$\displaystyle A \subseteq \bigcup_{x \mathop \in S} B_\epsilon \left({x}\right)$

where $B_\epsilon \left({x}\right)$ denotes the open $\epsilon$-ball of $x$ in $M$.

That is, it is a subset of $A$ such that the set of all open $\epsilon$-balls of elements of that set forms a cover for $A$.

### Finite Net

A finite $\epsilon$-net for $M$ is an $\epsilon$-net for $M$ which is a finite set.


text:
# Averages Part 6

Problem 1: The average weight of A, B, and C is 50kg. If the average weight of A and B be 48 kg and that of B and C be 45 kg, then find the weight of B?

Solution:

A+B+C = 50*3 =150

A+B = 48*2 =96

B+C = 45*2 = 90

A+B+B+C = 186

A+B+C=150

B=36

Problem 2: The average age of eleven players in a cricket team decreases by 2 months when two new players are included in the team replacing two players of ages 17 years and 20 years. The average age of new players is?

Solution:

$\frac{17+20}{2}=\frac{37}{2}$

$\frac{2\times&space;11}{2}=11$

18years 6 months – 11

17 years 7 months

Problem 3: The average wages of a worker for 15 consecutive working days was Rs.90 per day. During the first 7 days, his average wages was Rs.87/day and the average wages during the last 7days was Rs.92/day. What was his wage on the 8th day?

Solution:

15*90 – 7*87 – 7*92

1350 – 609 -644

1350 – 643 = 97

Shortcut:

90+(3-2)*7=97


text:
# How to find the chi square value of all features

I have extracted a set of features for a classification task and I used the SVM classifier. How can I find the top k predictive features and their discriminative power (chi square) value?

Here is a tutorial on the website of scikit-learn that shows you how to compute chi².

Copying from the mentioned website:

>>> from sklearn.datasets import load_iris
>>> from sklearn.feature_selection import SelectKBest
>>> from sklearn.feature_selection import chi2


text:
# Is there a way to make a LaTeX environment where indentation is interpreted as itemize levels?

As much as I like LaTeX, I find it rather annoying (and visually noisy) that itemize and enumerate environments always require (1) the begin/end environment declaration statements, and (2) "\item" commands prior to each item.

What I'd love to have (or be able to create) is some kind of "autoitemize" environment, where something like

\begin{autoitemize}
first item
second item
nested item
another nested item
third item
\end{autoitemize}

would be automatically translated to:

\begin{itemize}
\item first item
\item second item
\begin{itemize}
\item nested item
\item another nested item
\end{itemize}
\item third item
\end{itemize}

So the question: is there a way to do this using a LaTeX package, rather than with an external preprocessor?

It might also be nice to be able to have some sort of optional line prefix on the item-lines which indicates what kind of list environment the item and its successors is in -- this would allow for nesting of one type within another.

Granted, this may not be as powerful as just doing it the normal LaTeX way, but there are enough cases where it would be sufficient and quite handy.

-
Migrate to tex.stackexchange.com? –  Jungle Hunter Aug 14 '10 at 13:08

That's what Markdown and Restructured Text (RST) are for. You're not really talking about LaTeX any more, when you ask this. You're asking about a different markup language.

From RST you can easily generate LaTeX for publication purposes.

http://docutils.sourceforge.net/rst.html

-
RST is good for a variety of documents, but it lacks the power and range of packages available for LaTeX -- it's true that it can be exported to LaTeX, but I'd really prefer to keep everything within a LaTeX source file. Some kind of automatic ReST to LaTeX inline conversion would be ok, but I'm not aware of anything like this. –  Mark Aug 16 '10 at 20:31
I use automatic RST to LaTeX all the time. And the inlines convert very nicely. rst2latex.py comes with docutils and works marvelously well. I'm not sure what you can't do, but I'm absolutely sure it generates very nice LaTeX and simplifies my life a great deal. –  S.Lott Aug 16 '10 at 21:53
Update: I said in my previous comment "I'm not aware of anything like this". Well, now I am: Pweave (bitbucket.org/edgimar/pweave/src) -- this basically allows including and automatic preprocessing/replacement of any kind of inline block in a textfile (e.g. one could use rst2latex.py in combination w/Pweave to automatically do inline substitution of rst within a LaTeX document). –  Mark Jan 27 '11 at 21:48
@Mark: "I'd really prefer to keep everything within a LaTeX source file" doesn't make sense to me, since the content you're showing is not actually LaTeX. Making the "within a LaTeX" file very confusing to me. –  S.Lott Jan 27 '11 at 21:50
Yes, that is correct -- it isn't pure LaTeX in the sense that it can be directly compiled with pdflatex/etc. It is technically possible to write such a file with a customized style-file, but one must run pdflatex in write18 mode, which isn't ideal for portable LaTeX source files (portable meaning that minimal special dependencies / flags are required). With pweave, the executable and processor-plugins can easily be bundled along with the sourcefile, making it relatively portable. –  Mark Feb 1 '11 at 21:21

Emacs Org mode might allow you to do something like this. It has some capacity to translate into LaTeX.

-


text:
# How do you find the standard deviation below the mean?

## How do you find the standard deviation below the mean?

The standard deviation is (σ) . When z is negative it means that X is below the mean. For this example, z = (70 - 80)/5 = -2.

## How much is 1.5 standard deviations below the mean?

What percentile is 1.

## How do you calculate standard deviation on a calculator?

Standard Deviation Calculator

1. First, work out the average, or arithmetic mean, of the numbers: Count: (How many numbers) ...
2. Then, take each number, subtract the mean and square the result: Differences: -7.

σ

## How do you do the 68 95 and 99.7 rule?

The 7 Rule tells us that 68% of the weights should be within 1 standard deviation either side of the mean. 1 standard deviation above (given in the answer to question 2) is 72.

## What does the 68-95-99 rule refer to?

The rule is based on the mean and standard deviation. It says: 68% of the population is within 1 standard deviation of the mean. 95% of the population is within 2 standard deviation of the mean. 99.

## What is Chebyshev's theorem?

Chebyshev's Theorem is a fact that applies to all possible data sets. It describes the minimum proportion of the measurements that lie must within one, two, or more standard deviations of the mean.

## Is it better to have a high or low z score?

It is a universal comparer for normal distribution in statistics. Z score shows how far away a single data point is from the mean relatively. Lower z-score means closer to the meanwhile higher means more far away. Positive means to the right of the mean or greater while negative means lower or smaller than the mean.

## How do you find the Z score without the mean?

The formula for calculating a z-score is is z = (x-μ)/σ, where x is the raw score, μ is the population mean, and σ is the population standard deviation. As the formula shows, the z-score is simply the raw score minus the population mean, divided by the population standard deviation.

## How do you find the raw score from the mean and standard deviation?

Using the z score, as well as the mean and the standard deviation, we can compute the raw score value by the formula, x= µ + Zσ, where µ equals the mean, Z equals the z score, and σ equals the standard deviation.

## How do you find percentile with mean and standard deviation?

To calculate the percentile, you will need to know your score, the mean and the standard deviation. Subtract the mean from your score. For example, if you scored 33 and the mean is 24, you would get a difference of 9.

## How do you find probability with mean and standard deviation?

Let's find the z and probability for x = 80. Now, let's look at the normal standard distribution table to find the probability....z = x-μ/σ, where:

1. z is the standard score.
2. x is the raw score.
3. μ is the population mean.
4. σ is the population standard deviation.

## How do you find the mean and standard deviation of a normal distribution?

Any point (x) from a normal distribution can be converted to the standard normal distribution (z) with the formula z = (x-mean) / standard deviation. z for any particular x value shows how many standard deviations x is away from the mean for all x values.

## How do you find the standard deviation of a sample?

Sample standard deviation

1. Step 1: Calculate the mean of the data—this is xˉx, with, \bar, on top in the formula.
2. Step 2: Subtract the mean from each data point. ...
3. Step 3: Square each deviation to make it positive.
4. Step 4: Add the squared deviations together.
5. Step 5: Divide the sum by one less than the number of data points in the sample.

## How is a standard normal distribution defined?

The standard normal distribution is a normal distribution with a mean of zero and standard deviation of 1. The standard normal distribution is centered at zero and the degree to which a given measurement deviates from the mean is given by the standard deviation.


text:
### Improved MITM Cryptanalysis on Streebog

Jialiang Hua, Xiaoyang Dong, Siwei Sun, Zhiyu Zhang, Lei Hu, and Xiaoyun Wang

##### Abstract

At ASIACRYPT 2012, Sasaki et al. introduced the guess-and-determine approach to extend the meet-in-the-middle (MITM) preimage attack. At CRYPTO 2021, Dong et al. proposed a technique to derive the solution spaces of nonlinear constrained neutral words in the MITM preimage attack. In this paper, we try to combine these two techniques to further improve the MITM preimage attacks. Based on the previous MILP-based automatic tools for MITM attacks, we introduce new constraints due to the combination of guess-and-determine and nonlinearly constrained neutral words to build a new automatic model. As a proof of work, we apply it to the Russian national standard hash function Streebog, which is also an ISO standard. We find the first 8.5-round preimage attack on Streebog-512 compression function and the first 7.5-round preimage attack on Streebog-256 compression function. In addition, we give the 8.5-round preimage attack on Streebog-512 hash function. Our attacks extend the best previous attacks by one round. We also improve the time complexity of the 7.5-round preimage attack on Streebog-512 hash function and 6.5-round preimage attack on Streebog-256 hash function.

Available format(s)
Category
Secret-key cryptography
Publication info
Keywords
PreimageMITM AttackStreebog and MILP
Contact author(s)
huajl18 @ tsinghua edu cn
xiaoyangdong @ tsinghua edu cn
sunsiwei @ ucas ac cn
zhangzhiyu @ iie ac cn
hulei @ iie ac cn
xiaoyunwang @ tsinghua edu cn
History
Short URL
https://ia.cr/2022/568

CC BY

BibTeX

@misc{cryptoeprint:2022/568,
author = {Jialiang Hua and Xiaoyang Dong and Siwei Sun and Zhiyu Zhang and Lei Hu and Xiaoyun Wang},
title = {Improved MITM Cryptanalysis on Streebog},
howpublished = {Cryptology ePrint Archive, Paper 2022/568},
year = {2022},
note = {\url{https://eprint.iacr.org/2022/568}},
url = {https://eprint.iacr.org/2022/568}
}

Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.


text:
# Visualizing Integrals

November 13, 2008 — Chris Boucher, Consultant, Special Projects Group

Calculus II is one of my favorite classes to teach, and the course I’ve probably taught more than any other. One reason for its special place in my heart is that it begins on the first day of class with a straightforward, easily stated, yet mathematically rich question: what is the area of a curved region? Triangles and rectangles—figures with straight sides—have simple area formulas whose derivation is clear. More complicated polygons can be carved up into pieces that are triangles and rectangles. But how does one go about finding the area of a blob?

After simplifying the blob to be a rectangle whose top side has been replaced with a curve, the stage is set for one of the classic constructions in calculus. The area of our simplified blob, reinterpreted as the area under the graph of a function is approximated using a series of rectangles. The approximation is obtained by partitioning the x-axis, thus slicing the region into narrow strips, then approximating each strip with a rectangle and summing all the resulting approximations to produce a Riemann sum. Taking a limit of this process by using more and narrower rectangles produces the Riemann integral that forms the centerpiece of Calculus II. Several Demonstrations from the Wolfram Demonstrations Project, including “Riemann Sums” by Ed Pegg Jr, “Common Methods of Estimating the Area under a Curve” by Scott Liao, and “Riemann Sums: A Simple Illustration” by Phil Ramsden show that this construction and images like the one below from “Riemann Sums” are part of the iconography of calculus.

Early in graduate school, I learned of a different, more mysterious way of constructing integrals based on such seemingly esoteric notions as measurable sets and sigma fields. It took the better part of a yearlong course in analysis for me to appreciate the connection between this new, more general Lebesgue integral and my old friend the Riemann integral. The key, it turns out, was to think of the old area question.

The procedure outlined above approximates the curve that forms the top of the figure by a step function, i.e. a function that is constant on intervals. To construct a Lebesgue integral, begin instead by partitioning the y-axis. The curve may now pass through one of the partition intervals multiple times, creating a “shadow” on the x-axis that could be an interval, a combination of intervals, or something more complicated. These shadows partition the x-axis just as the original Riemann sum construction did but more intricately. You can define an approximating function by picking a single function value on each shadow—such a function is called a simple function. This construction leads to the Lebesgue integral and is beautifully illustrated by the Demonstration “Riemann versus Lebesgue” by Francisco J. Freniche. In the image below taken from this Demonstration, the dotted lines show the division of the y-axis, and each color band on the x-axis is one of the shadows.

The Lebesgue integral turns out to be a generalization of the Riemann integral in the sense that if the Riemann approximations converge, so do the Lebesgue approximations and to the same value. There are, however, situations in which the Lebesgue approximations converge and the Riemann approximations do not. The Lebesgue integral is at the heart of measure theory and probability theory, and I had long thought of it as elegant but difficult to visualize. I still think of it as elegant.

RELATED POSTS

 Hi, i have a question: is possible to perform an Integral with the Lebesgue’s Integration Theory ? if i use the function in mathematica it use the Riemann’s Theory by default… I also read the source code of the Demostration that show the difference between Riemann and Lebesgue but i’ve not found a function that perform it… I maybe change the measure Theory?and how i can do this? Please help me… Thanks Posted by nigno    May 27, 2010 at 4:59 pm
 check this out. http://demonstrations.wolfram.com/LebesgueIntegration/ Posted by Rethnakaran Pulikkoonattu    August 8, 2010 at 3:18 am


text:
# Has the Fundamental Theorem of Algebra been proved using just fixed point theory?

Question:

Is there already in the literature a proof of the fundamental theorem of algebra as a consequence of Brouwer's fixed point theorem?

N.B. The original post contained superfluous information, but it did generate one answer with a source that claims such a proof is impossible, and another answer with a source that claims to carry out precisely such a proof. Clearly these cannot both be correct.

-
The way you've written this question is "thinking out loud", which doesn't really lend itself to an answer. In a sense, you've given a partial answer yourself. Is it possible for you to summarize, in an organized way, the stuff you know, and then collect the actual question into a concise block at the end? Because it's going to get closed as written. –  Ryan Reich May 27 '13 at 18:33
Also, you can use TeX math in approximately the way you'd normally expect to. Please try it; it's more pleasant. –  Ryan Reich May 27 '13 at 18:47
I played around once with proving FTA from the Banach fixed point theorem but I couldn't get it to work. You can prove FTA from the Lefschetz fixed point theorem, though. Does that still qualify as "fixed point theory"? –  Qiaochu Yuan May 27 '13 at 18:48
Too bad "tl;dr" is too short for a comment. –  Andrej Bauer May 28 '13 at 7:11
After Todd's clean-up I have cast a vote to re-open –  Yemon Choi Jun 5 '13 at 16:51

I believe the answer to this question is actually yes, and would be quite pleased if someone could communicate a copy of the last reference I have listed here. (My about-page has an email address.)

The Arnold proof is well known to be erroneous, but a correct (as far as I know) version is cited in an earlier MO post here. In particular, it is a proof of the FTA via the Brouwer Fixed Point Theorem.

The latter source is:

Some Properties of Continuous Functions. M. K. Fort, Jr. The American Mathematical Monthly, Vol. 59, No. 6 (Jun. - Jul., 1952), pp. 372-375. http://www.jstor.org/stable/2306806.

[Edit: Todd Trimble has kindly provided a link to the Fort paper that does not require jstor access.]

Separately, I see the following quotation:

"Recently, there have been very interesting proofs of the Brouwer theorem. Kulpa deduced a generalization of the Brouwer theorem from the Fubini theorem and the Weierstrass approximation theorem, and applied it to give a simple proof of the fundamental theorem of algebra."

The source of this excerpt is:

Park, S. (1999). Ninety years of the Brouwer fixed point theorem. Vietnam Journal of Mathematics, 27(3), 187-222. http://www.math.ac.vn/publications/vjm/vjm_27/No.3/187-222_Park.PDF

And the reference under discussion is:

W. Kulpa, An integral criterion for coincidence property, Radovi Mat.6 (1990) 313-321.

I gathered this information at the request of D. Goroff some time ago, at which point my search for the Kulpa paper was, unfortunately, fruitless. If anyone can find an accessible copy of Kulpa's paper, I would be most interested in it (and I know he would be as well).

-
For those who do not have J-Stor access, here is another web-link to Fort's article: oldweb.cecm.sfu.ca/personal/jborwein/Expbook/Manuscript/… –  Todd Trimble Jun 5 '13 at 13:44
Suppose $K/\mathbb C$ is a finite extension of fields. From the multiplication of $K$ we can turn the projectivization $P(K)$ of $K$ as a vector space into a group, which is then a compact connected Lie group. If $g\in P(K)$ is any point, then the map $L_g$ given by left multiplication by $g$ on $P(K)$ is homotopic to the identity map. Its Lefschetz number $\Lambda(L_g)$ is therefore equal to the Euler characteristic of $P(K)$ which is non-zero (because we know that $P(K)$ is a complex projective space!) It follows from Lefschetz's fixed point theorem, the map $L_g$ has a fixed point on $P(K)$. This is only possible if $g$ is the identity element of $P(K)$, and therefore $P(K)$ has exactly one point.
This means that the extension $K/\mathbb C$ is trivial, and that $\mathbb C$ is algebraically closed.
Somewhere on MO there is a sketch of a proof of the FTA which as above turns the projective space $P(K)$ into a Lie group, observes it is commutative, invokes the classification of compact abelian Lie groups and using, say, the computation of the cohomology of tori and projective spaces, notes that no positive-dimensional torus is a projective space. My argument above is a minor variation, really. –  Mariano Suárez-Alvarez Dec 18 '13 at 0:12


text:
# Improving Performance of ML Models

## Performance Improvement with Ensembles

Ensembles can give us boost in the machine learning result by combining several models. Basically, ensemble models consist of several individually trained supervised learning models and their results are merged in various ways to achieve better predictive performance compared to a single model. Ensemble methods can be divided into following two groups −

### Sequential ensemble methods

As the name implies, in these kind of ensemble methods, the base learners are generated sequentially. The motivation of such methods is to exploit the dependency among base learners.

### Parallel ensemble methods

As the name implies, in these kind of ensemble methods, the base learners are generated in parallel. The motivation of such methods is to exploit the independence among base learners.

## Ensemble Learning Methods

The following are the most popular ensemble learning methods i.e. the methods for combining the predictions from different models −

### Bagging

The term bagging is also known as bootstrap aggregation. In bagging methods, ensemble model tries to improve prediction accuracy and decrease model variance by combining predictions of individual models trained over randomly generated training samples. The final prediction of ensemble model will be given by calculating the average of all predictions from the individual estimators. One of the best examples of bagging methods are random forests.

### Boosting

In boosting method, the main principle of building ensemble model is to build it incrementally by training each base model estimator sequentially. As the name suggests, it basically combine several week base learners, trained sequentially over multiple iterations of training data, to build powerful ensemble. During the training of week base learners, higher weights are assigned to those learners which were misclassified earlier. The example of boosting method is AdaBoost.

### Voting

In this ensemble learning model, multiple models of different types are built and some simple statistics, like calculating mean or median etc., are used to combine the predictions. This prediction will serve as the additional input for training to make the final prediction.

## Bagging Ensemble Algorithms

The following are three bagging ensemble algorithms −

### Bagged Decision Tree

As we know that bagging ensemble methods work well with the algorithms that have high variance and, in this concern, the best one is decision tree algorithm. In the following Python recipe, we are going to build bagged decision tree ensemble model by using BaggingClassifier function of sklearn with DecisionTreeClasifier (a classification & regression trees algorithm) on Pima Indians diabetes dataset.

First, import the required packages as follows −

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import BaggingClassifier
from sklearn.tree import DecisionTreeClassifier

Now, we need to load the Pima diabetes dataset as we did in the previous examples −

path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
array = data.values
X = array[:,0:8]
Y = array[:,8]

Next, give the input for 10-fold cross validation as follows −

seed = 7
kfold = KFold(n_splits=10, random_state=seed)
cart = DecisionTreeClassifier()

We need to provide the number of trees we are going to build. Here we are building 150 trees −

num_trees = 150

Next, build the model with the help of following script −

model = BaggingClassifier(base_estimator=cart, n_estimators=num_trees, random_state=seed)

Calculate and print the result as follows −

results = cross_val_score(model, X, Y, cv=kfold)
print(results.mean())

### Output

0.7733766233766234

The output above shows that we got around 77% accuracy of our bagged decision tree classifier model.

### Random Forest

It is an extension of bagged decision trees. For individual classifiers, the samples of training dataset are taken with replacement, but the trees are constructed in such a way that reduces the correlation between them. Also, a random subset of features is considered to choose each split point rather than greedily choosing the best split point in construction of each tree.

In the following Python recipe, we are going to build bagged random forest ensemble model by using RandomForestClassifier class of sklearn on Pima Indians diabetes dataset.

First, import the required packages as follows −

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier

Now, we need to load the Pima diabetes dataset as did in previous examples −

path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
array = data.values
X = array[:,0:8]
Y = array[:,8]

Next, give the input for 10-fold cross validation as follows −

seed = 7
kfold = KFold(n_splits=10, random_state=seed)

We need to provide the number of trees we are going to build. Here we are building 150 trees with split points chosen from 5 features −

num_trees = 150
max_features = 5

Next, build the model with the help of following script −

model = RandomForestClassifier(n_estimators=num_trees, max_features=max_features)

Calculate and print the result as follows −

results = cross_val_score(model, X, Y, cv=kfold)
print(results.mean())

### Output

0.7629357484620642

The output above shows that we got around 76% accuracy of our bagged random forest classifier model.

### Extra Trees

It is another extension of bagged decision tree ensemble method. In this method, the random trees are constructed from the samples of the training dataset.

In the following Python recipe, we are going to build extra tree ensemble model by using ExtraTreesClassifier class of sklearn on Pima Indians diabetes dataset.

First, import the required packages as follows −

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import ExtraTreesClassifier

Now, we need to load the Pima diabetes dataset as did in previous examples −

path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
array = data.values
X = array[:,0:8]
Y = array[:,8]

Next, give the input for 10-fold cross validation as follows −

seed = 7
kfold = KFold(n_splits=10, random_state=seed)

We need to provide the number of trees we are going to build. Here we are building 150 trees with split points chosen from 5 features −

num_trees = 150
max_features = 5

Next, build the model with the help of following script −

model = ExtraTreesClassifier(n_estimators=num_trees, max_features=max_features)

Calculate and print the result as follows −

results = cross_val_score(model, X, Y, cv=kfold)
print(results.mean())

### Output

0.7551435406698566

The output above shows that we got around 75.5% accuracy of our bagged extra trees classifier model.

## Boosting Ensemble Algorithms

The followings are the two most common boosting ensemble algorithms −

It is one the most successful boosting ensemble algorithm. The main key of this algorithm is in the way they give weights to the instances in dataset. Due to this the algorithm needs to pay less attention to the instances while constructing subsequent models.

In the following Python recipe, we are going to build Ada Boost ensemble model for classification by using AdaBoostClassifier class of sklearn on Pima Indians diabetes dataset.

First, import the required packages as follows −

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import AdaBoostClassifier

Now, we need to load the Pima diabetes dataset as did in previous examples −

path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
array = data.values
X = array[:,0:8]
Y = array[:,8]

Next, give the input for 10-fold cross validation as follows −

seed = 5
kfold = KFold(n_splits=10, random_state=seed)

We need to provide the number of trees we are going to build. Here we are building 150 trees with split points chosen from 5 features −

num_trees = 50

Next, build the model with the help of following script −

model = AdaBoostClassifier(n_estimators=num_trees, random_state=seed)

Calculate and print the result as follows −

results = cross_val_score(model, X, Y, cv=kfold)
print(results.mean())

### Output

0.7539473684210527

The output above shows that we got around 75% accuracy of our AdaBoost classifier ensemble model.

### Stochastic Gradient Boosting

It is also called Gradient Boosting Machines. In the following Python recipe, we are going to build Stochastic Gradient Boostingensemble model for classification by using GradientBoostingClassifier class of sklearn on Pima Indians diabetes dataset.

First, import the required packages as follows −

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import GradientBoostingClassifier

Now, we need to load the Pima diabetes dataset as did in previous examples −

path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
array = data.values
X = array[:,0:8]
Y = array[:,8]

Next, give the input for 10-fold cross validation as follows −

seed = 5
kfold = KFold(n_splits=10, random_state=seed)

We need to provide the number of trees we are going to build. Here we are building 150 trees with split points chosen from 5 features −

num_trees = 50

Next, build the model with the help of following script −

model = GradientBoostingClassifier(n_estimators=num_trees, random_state=seed)

Calculate and print the result as follows −

results = cross_val_score(model, X, Y, cv=kfold)
print(results.mean())

### Output

0.7746582365003418

The output above shows that we got around 77.5% accuracy of our Gradient Boosting classifier ensemble model.

## Voting Ensemble Algorithms

As discussed, voting first creates two or more standalone models from training dataset and then a voting classifier will wrap the model along with taking the average of the predictions of sub-model whenever needed new data.

In the following Python recipe, we are going to build Voting ensemble model for classification by using VotingClassifier class of sklearn on Pima Indians diabetes dataset. We are combining the predictions of logistic regression, Decision Tree classifier and SVM together for a classification problem as follows −

First, import the required packages as follows −

from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn.svm import SVC
from sklearn.ensemble import VotingClassifier

Now, we need to load the Pima diabetes dataset as did in previous examples −

path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
array = data.values
X = array[:,0:8]
Y = array[:,8]

Next, give the input for 10-fold cross validation as follows −

kfold = KFold(n_splits=10, random_state=7)

Next, we need to create sub-models as follows −

estimators = []
model1 = LogisticRegression()
estimators.append(('logistic', model1))
model2 = DecisionTreeClassifier()
estimators.append(('cart', model2))
model3 = SVC()
estimators.append(('svm', model3))

Now, create the voting ensemble model by combining the predictions of above created sub models.

ensemble = VotingClassifier(estimators)
results = cross_val_score(ensemble, X, Y, cv=kfold)
print(results.mean())

### Output

0.7382262474367738

The output above shows that we got around 74% accuracy of our voting classifier ensemble model.


text:
Volume 27, Issue 2-3
Direct Minimization for Calculating Invariant Subspaces in Density Functional Computations of the Electronic Structure
DOI:

J. Comp. Math., 27 (2009), pp. 360-387.

Published online: 2009-04

Preview Full PDF 59 1459
Export citation

Cited by

• Abstract

In this article, we analyse three related preconditioned steepestdescent algorithms, which are partially popular in Hartree-Fock andKohn-Sham theory as well as invariant subspace computations, fromthe viewpoint of minimization of the corresponding functionals,constrained by orthogonality conditions. We exploit the geometry ofthe admissible manifold, i.e., the invariance with respect tounitary transformations, to reformulate the problem on the Grassmannmanifold as the admissible set. We then prove asymptotical linearconvergence of the algorithms under the condition that the Hessianof the corresponding Lagrangian is elliptic on the tangent space ofthe Grassmann manifold at the minimizer.

• Keywords

Eigenvalue computation Grassmann manifolds Optimization Orthogonality constraints Hartree-Fock theory Density functional theory PINVIT

65Z05 58E50 49R50.

• BibTex
• RIS
• TXT
@Article{JCM-27-360, author = {}, title = {Direct Minimization for Calculating Invariant Subspaces in Density Functional Computations of the Electronic Structure}, journal = {Journal of Computational Mathematics}, year = {2009}, volume = {27}, number = {2-3}, pages = {360--387}, abstract = {

In this article, we analyse three related preconditioned steepestdescent algorithms, which are partially popular in Hartree-Fock andKohn-Sham theory as well as invariant subspace computations, fromthe viewpoint of minimization of the corresponding functionals,constrained by orthogonality conditions. We exploit the geometry ofthe admissible manifold, i.e., the invariance with respect tounitary transformations, to reformulate the problem on the Grassmannmanifold as the admissible set. We then prove asymptotical linearconvergence of the algorithms under the condition that the Hessianof the corresponding Lagrangian is elliptic on the tangent space ofthe Grassmann manifold at the minimizer.

}, issn = {1991-7139}, doi = {https://doi.org/}, url = {http://global-sci.org/intro/article_detail/jcm/8577.html} }
TY - JOUR T1 - Direct Minimization for Calculating Invariant Subspaces in Density Functional Computations of the Electronic Structure JO - Journal of Computational Mathematics VL - 2-3 SP - 360 EP - 387 PY - 2009 DA - 2009/04 SN - 27 DO - http://doi.org/ UR - https://global-sci.org/intro/article_detail/jcm/8577.html KW - Eigenvalue computation KW - Grassmann manifolds KW - Optimization KW - Orthogonality constraints KW - Hartree-Fock theory KW - Density functional theory KW - PINVIT AB -

In this article, we analyse three related preconditioned steepestdescent algorithms, which are partially popular in Hartree-Fock andKohn-Sham theory as well as invariant subspace computations, fromthe viewpoint of minimization of the corresponding functionals,constrained by orthogonality conditions. We exploit the geometry ofthe admissible manifold, i.e., the invariance with respect tounitary transformations, to reformulate the problem on the Grassmannmanifold as the admissible set. We then prove asymptotical linearconvergence of the algorithms under the condition that the Hessianof the corresponding Lagrangian is elliptic on the tangent space ofthe Grassmann manifold at the minimizer.

Reinhold Schneider, Thorsten Rohwedder, Alexey Neelov & Johannes Blauert. (2019). Direct Minimization for Calculating Invariant Subspaces in Density Functional Computations of the Electronic Structure. Journal of Computational Mathematics. 27 (2-3). 360-387. doi:
Copy to clipboard
The citation has been copied to your clipboard


text:
Quake3World.com Forums
Level Editing & Modeling
How to run a map

 Print view Previous topic | Next topic
Topic Starter Topic: How to run a map

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-13-2008 11:58 PM

### Hi, can anybody tell me how to run a map but in an actual combat scenario on Q3, because I have made lots of maps in radient and I can run them all fine in devmap mode, but how do you run it e.g. in deathmatch, with bots/other players because whenever I run a map (even in /map mode), when i test it for combat, and add bots,the console always says: Fatal: AAS not initializedAnarki: BotAISetupClient failedI know what this means, but why? please reply

Top

Mentor

Joined: 12 Mar 2005
Posts: 3958
Posted: 06-14-2008 03:48 AM

### You need to run bspc to create an .aas for your map: bspc -bsp2aas -forcesidesvisible yourmap.bsp

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-14-2008 06:18 AM

### Are you supposed to type it into the console, that is what i did, it didn't work.

Top

Mentor

Joined: 12 Mar 2005
Posts: 3958
Posted: 06-14-2008 07:09 AM

### Start -> Run -> cmdCommand line, not console.

Top

I'm the dude!

Joined: 04 Feb 2002
Posts: 11854
Posted: 06-14-2008 07:56 AM

### So it should look something like this:"[path\to\bspc]\bspc.exe" -bsp2aas "[path\to\map]\mapname.bsp" -forcesidesvisible -optimize

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-15-2008 09:39 AM

### Ok, so you mean the command line in radient?

Top

Mentor

Joined: 12 Mar 2005
Posts: 3958
Posted: 06-15-2008 09:47 AM

### No, no. Not he command line in Radiant. The command line as in the operating system's user interface of choice before the advent of Windows.

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-15-2008 10:36 PM

### So you just type all of that into the cmd right. Just tell me before i accidentally ruin my pc.

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-15-2008 10:37 PM

### no offence, bye the way.

Top

The Borked One

Joined: 23 Mar 2004
Posts: 4702
Posted: 06-15-2008 10:44 PM

### yeah, you aren't going to screw anything up.

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-16-2008 09:20 AM

### sorry, i tried it and it said: 'cannot find specified path. I will try again to see if it was a typo. U do mean just like what ^misantropia^ said? that is [exactly] what i typed.

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-16-2008 09:25 AM

### I just copied in exactly what obsidian said (about the last post, i say: ^misantropia^, but i mean obsidian) and it still said the same. I also changed the map part to testfacility.bsp (my map). If it helps, my maps ARE in baseq3, not my own base directory.

Top

I'm the dude!

Joined: 04 Feb 2002
Posts: 11854
Posted: 06-16-2008 09:40 AM

### Double check the path to bspc.exe. Sound like cmd can't find bspc.exe. Use quotes if you are going to use long names, no quotes if you're going to use 8 character dos names.

Top

The Afflicted

Joined: 28 Apr 2008
Posts: 508
Posted: 06-17-2008 01:52 AM

### Since it seems to make problems using a cmd line (I myself had those for about 10 minutes until I had been able to figure out what exactly that damn thing wanted from me ) here's the command that should finally help you - or destroy your self-esteem and let you burn your computer let's just see...The trick is: Under XP and the like that nice cmd line is obviously not "intelligent" enough to understand a [space] between two terms as a [space] (that long stretched button on your keyboard man kind rules, since we DO understand it!): So if ANYTHING included in your gamepath has such a [space] you have to delete it: best: replacing the [space] with [_] (an underscore) temporarily. After you got your .aas you can change the [_] back to [space].So if your "Quake III Arena" is located in D:\ as a subdirectory of your "Games" folder, and GTKRadiant created a folder called "Radiant" including the bspc.exe into your Quake main folder, your cmd line has to look EXACTLY like THIS:D:\Games\Quake_III_Arena\Radiant\bspc -bspc2aas D:\Games\Quake_III_Arena\baseq3\burp1.bspExplanation: This thing tells your computer to use the BSPC.exe located in D:\Games\Quake_III_Arena\Radiant\ to execute an BSPC2AAS action on your map (I just named this map burp1) located in your baseq3 folder.The only thing left to be aware of is that you have to temporarily rename your "Quake III Arena" Folder to "Quake_III_Arena" as well as any other folders included in that cmd line. If you have your Quake installed into "Now who's cooking now" it has to be renamed to "Now_who's_cooking_now" and your line will look like this:D:\Now_who's_cooking_now\Quake_III_Arena\Radiant\bspc -bspc2aas D:\Now_who's_cooking_now\Quake_III_Arena\baseq3\burp1.bspAny yeah there IS [space] used in that cmd line, so you'll also have to do this. After the first "bspc" and after "-bspcaas".Now go show your map to some "I can win" bots and multi-humi them!

_________________
If you are caught on a golf course during a storm and are afraid of lightning, hold up a 1-iron. Not even God can hit a 1-iron.
-Lee Trevino, golfer who actually has been struck by lightning.

Top

I'm the dude!

Joined: 04 Feb 2002
Posts: 11854
Posted: 06-17-2008 07:36 AM

### That's absolute crock. You shouldn't need to rename your folders with underscores just to do a compile. Don't give people bad advice because you don't understand how the command line works. Windows XP recognizes spaces just fine.Give Q3Map2Toolz a try:http://hro.planetquake.gamespy.com/quake_3/?page_id=8

Top

Trainee

Joined: 07 Apr 2008
Posts: 43
Posted: 06-17-2008 10:30 AM

### I tried what monaster said (i did actually change 'burp1') and it said the same. I also tried changing the drive D bit to drive c, coz that is my hard drive with all my stuff on. Yet again, it did'nt work. I followed the link obsidian posted, and i tried to download it, but it was a missing page (you know, an error, broken link,maintenance.) so i am gutted. any more suggestions?

Top

I'm the dude!

Joined: 04 Feb 2002
Posts: 11854
Posted: 06-17-2008 12:08 PM

### Try this mirror:http://files.filefront.com/Q3Map2Toolz+ ... einfo.html

Top

The Afflicted

Joined: 28 Apr 2008
Posts: 508
Posted: 06-18-2008 08:09 PM

### Well, that's how I got my first .aas and it worked fine especially with renaming since after that the WHOLE cmd line could be remembered by Windows. Before that it only executed my cmds to the first [space] inside the file path and didn't do anything else thus not creating an .aas.Any suggestions why I got my desired bot file and obsidian absolute crock? And sorry for the burp1, mcelf, I just wanted to give an example more understandable than "mapname". Of course it has to be your own genuine mapname inside the cmd line.

_________________
If you are caught on a golf course during a storm and are afraid of lightning, hold up a 1-iron. Not even God can hit a 1-iron.
-Lee Trevino, golfer who actually has been struck by lightning.

Top

Recruit

Joined: 13 Nov 2008
Posts: 7
Posted: 11-13-2008 09:20 PM

### can someone tell me were to get the BSPC for XP

Top

I'm the dude!

Joined: 04 Feb 2002
Posts: 11854
Posted: 11-13-2008 09:38 PM

### No need to bump this thread when you've started your own. Just ask both questions in the same place.

_________________

Top

Quake3World.com
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group


text:
# OpenCL Diagrams

## LaTeX figures for OpenCL and parallel algorithms

Published on August 14, 2015

### Website:https://github.com/nlamprian/OpenCL-Diagrams

OpenCL-Diagrams provides a set of LaTeX documents with figures about OpenCL and parallel algorithms. They are meant to be used in blog posts, tutorials, reports, etc, to enhance the learning process and support the use of OpenCL.

The source code is available on GitHub.


text:
Overview on corrosion in supercritical fluids - Archive ouverte HAL Access content directly
Conference Papers Year : 2016

Overview on corrosion in supercritical fluids

(1)
1

Abstract

Whatever is the supercritical fluid, the performance of structural materials is a key issue for industrial applications. An overview is carried out on the corrosion behavior of metallic metals and alloys under pressure and temperature conditions appropriate for supercritical fluids. Steels, including stainless steels, and nickel base alloys are the main alloys investigated in supercritical environments. In supercritical water (SCW), the review highlights how SCW density changes the corrosion mechanisms. Beside the density, temperature and impurities (especially chlorine) play key roles. SCW oxidation is promised to a strong development if corrosion issues are solved, as illustrated with the DELOS process for destruction of radioactive organics.In other supercritical fluids like supercritical CO$_2$, authors observed that no corrosion occurs in pure SCF but the water content is a key parameter. Temperature, water and pollutants are the major factors leading to increase uniform or localized corrosion rates.

Dates and versions

cea-02437074 , version 1 (13-01-2020)

Identifiers

• HAL Id : cea-02437074 , version 1

Cite

D. Feron. Overview on corrosion in supercritical fluids. Cycle de conférences donnés sur l'invitation de l'IMR CAS, Nov 2016, Shenyang, China. ⟨cea-02437074⟩

18 View


text:
Latest Mathematics Topics

List of recently published mathematics tutorials.

Jul 23, 2017

Proof of Logarithm of a number when the base of the logarithm can be expressed as an exponent of another number and also its verification.

Jul 22, 2017

Introduction to subtraction of literals and learn how to subtract a literal number from another and also the possible cases of subtracting literals in algebra.

Jul 21, 2017

Learn how to prove limit of ratio of sin x to x is equal to one in calculus as x approaches zero and know the functionality of sine in proving this rule.

Jul 20, 2017

Learn $\dfrac{d}{dx} e^x$ formula in differentiation and know the step by step procedure for the proof in calculus.

Jul 18, 2017

Introduction to surd and know its importance in number system. Examples to understand how to use them in representing rational numbers and know its representation in algebraic form.

Jul 17, 2017

Learn power law of logarithm to express logarithm of power of a number as the log of the number, multiplied by the power and its proof and verification.

Jul 14, 2017

Learn the derivative of sin x with respect to x in differentiation calculus and step by step understandable process for the proof of this formula in mathematics.

Jul 13, 2017

Introduction to addition of literals in algebra. Understandable examples to learn different types of additions of literal numbers from step by step mathematical procedure.

Jul 12, 2017

Introduction to derivate of a raised to the power of x with respect to x and step by step procedure to derive it in calculus and know how to use it from an example.

Math Problems

List of recently solved mathematics questions for learners.

More Solved Problems
Subscribe


text:
# Tag Info

3

You can find a definition for "numerical stability" in mathworld wolframe: Numerical stability refers to how a malformed input affects the execution of an algorithm. In a numerically stable algorithm, errors in the input lessen in significance as the algorithm executes, having little effect on the final output. On the other hand, in a numerically ...

3

Second-order optimization algorithms like Hessian optimization have more information on the curvature of the loss function, so converge much, much faster than first-order optimization algorithms like gradient descent. I remember reading somewhere that if you have $n$ weights in the neural network, one iteration of a second-order optimization algorithm will ...

2

In some cases, you can solve a linear regression problem with an analytical (or closed-form) solution/expression (although this may not always be the best approach). See this answer for more details. Note that this solution involves matrix multiplications and the computation of an inverse with floating-point numbers, so this is still a numerical algorithm/...

1

Honourable mention: Memory-based approaches Although not analytic, memory-based models, such as k-nearest neighbours (k-NN) are very lightweight when learning, but have a higher cost to use the stored knowledge. Even though a k-NN model is slow to make inferences, the computation involved is not complex or iterative. It makes a single pass through all the ...

Only top voted, non community-wiki answers of a minimum length are eligible


text:
# Math Help - Height of intersection POINT

1. ## Height of intersection POINT

Two towers with heights a and b meters respectively are 100 meters apart.

What is the height of the intersection point of the line joining the top of each tower to the base of the other?

# show working and explanation PLS

2. Hello, mathbuoy!

Did you make a sketch?

Two towers with heights $a$ and $b$ meters are 100 meters apart.

What is the height of the intersection point of the lines
joining the top of each tower to the base of the other?
Code:
    P *
|*
| *
|  *
|   *
|    *
a |     *     * R
|      *T * |
|       *   |
|     * |   | b
|   *  h| * |
| *     |  *|
Q * - - - * - * S
100-x U x

The towers are: . $PQ = a\,\text{ and }\,RS = b$

The lines cross at $T$, . $h = TU$

Let $US = x\text{, then }QU = 100-x$

Since $\Delta TUS \sim \Delta PQS\!:\;\;\frac{h}{x} = \frac{a}{100} \quad\Rightarrow\quad h \:=\:\frac{ax}{100}$ .[1]

Since $\Delta TUQ \sim \Delta RSQ\!:\;\;\frac{h}{100-x} = \frac{b}{100}\quad\Rightarrow\quad h \:=\:\frac{b(100-x)}{100}$ .[2]

Equate [1] and [2]: . $\frac{ax}{100} \:=\:\frac{b(100-x)}{100} \quad\Rightarrow\quad x \:=\:\frac{100b}{a+b}$

Substitute into [1]: . $h \:=\:\frac{a}{100}\left(\frac{100b}{a+b}\right) \quad\Rightarrow\quad \boxed{h\;=\; \frac{ab}{a+b}}$

~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

An observation . . .
Divide top and bottom by $ab\!:\;\;h \;=\;\frac{\dfrac{ab}{ab}}{\dfrac{a}{ab} + \dfrac{b}{ab}} \;=\;\frac{1}{\dfrac{1}{a} + \dfrac{1}{b}}$

The answer is one-half the harmonic mean of $a\text{ and }b.$


text:
# Help in understanding logical statements

1. Dec 9, 2007

In lieu of taking an extra course I signed up for a class without fulfilling a prerequisite. Now I'm trying to teach myself the stuff I should have learned and am having a hard time with two problems. If anyone can help explain how to get to the solution I would appreciate it.

1.) Show that the following holds true. Derive ($$\forall$$x)(If ~Mx thenMx) with the assumption ($$\forall$$x)(Mx)

2.) Show that the following is valid.
($$\exists$$x) (If Cx then Ch)
($$\exists$$x) (Cx if and only if Ch)

2. Dec 9, 2007

### CompuChip

Can you clarify on notation? For if I take the ~ symbol to mean "not" then the first question seems to be of the form $A \rightarrow \neg A$ which is a contradiction (if it's raining, it's not raining). Or perhaps you meant: $\forall x(\neg\neg Mx \rightarrow Mx)$ ?

For the second, note that "Cx if and only if Ch" is shorthand for "(If Cx then Ch) and (if Ch then Cx)" and that one of them is already given. The other side is almost trivial: what is it you still need to prove?

3. Dec 9, 2007

### HallsofIvy

Staff Emeritus
CompuChip, notice the "with the assumption ($\forall$x)(Mx). The first one is really "if, for all x, Mx is true and, for all x, Mx is false, then Mx is true". Since the hypothesis is false, the statement is trivially true.

4. Dec 9, 2007

I'm trying to figure out how to show it. For example

Derive ($$\forall$$z)Kzz

1. ($$\forall$$x)Kxx Assumption
2. Kcc 1$$\forall$$E
3. ($$\forall$$z)Kzz 2$$\forall$$I

But I do not have a strong background in Predicate Logic so some problems are more difficult for me to get a full understanding of


text:
Open access peer-reviewed chapter

# Energy and Economic Comparison of Different Fuels in Cement Production

By Oluwafemi M. Fadayini, Clement Madu, Taiwo T. Oshin, Adekunle A. Obisanya, Gloria O. Ajiboye, Tajudeen O. Ipaye, Taiwo O. Rabiu, Joseph T. Akintola, Shola J. Ajayi and Nkechi A. Kingsley

Submitted: November 6th 2020Reviewed: February 24th 2021Published: May 3rd 2021

DOI: 10.5772/intechopen.96812

## Abstract

Cement clinkerisation is the major energy-consuming process in cement manufacturing due to the high-temperature requirement. In this paper, energy data including specific energy consumption, forms, and types of energy used at different units of cement manufacturing processes were analyzed and compared for effectiveness, availability, cost, environmental, and health impact. Data from three different cement industries in Nigeria labeled as A, B, and C were used for the analysis in this study. The results of this research work established that coal is the cheapest energy source but environmental issues exonerate it from being the choice energy source. LPFO and Natural gas give better production output while minimizing pollution and health issues. When benchmarked against each other, Factory B was found to be the most energy-efficient in terms of output and cost of production. Although coal is cheaper compared to fuel oil and supposed to contribute a share of fuel used in cement industries, the industries are moving towards the use of alternative and conventional fuels to reduce environmental pollution. It is therefore recommended that deliberate effort to achieve appreciable energy-efficient levels should be the priorities of the cement industries in Nigeria.

### Keywords

• Cement
• Coal
• Fuel oil
• Natural gas
• Energy Consumption
• Energy source

## 1. Introduction

Cement is regarded as a binder, a material useful in building and civil construction that hardens and adheres to other substances to bind them together. Cement is rarely used only, but to bind other building materials such as gravel and sand together. When mixed with fine aggregates, it is used to produce mortar for mansory or with gravel and sand, it produces concrete. Energy consumption in the Industrial sector ranges from 30–70% of the total energy used in some selected countries as previously reported by [1]. The cement sub-sector utilizes nearly 12–15% of entire industrial energy usage [1, 2] due to the high temperatures required in the kilns. Cement is a vital product used in society for constructing modern infrastructure as well as safe and comfortable buildings. Cement manufacturing is an energy-intensive process due to the high temperature required in the kilns for clinkerization. Energy cost contributes to about 40–50% of cement production cost in Nigeria depending on the production process and type of cement with 1 tonne of cement requiring 60–130 kg of fuel or its equivalent and about 105 kWh of electricity [3].

Fossil fuels like coal, pet coke, fuel oil, and gas are the primary fuels used in the cement kilns. These fuels which exist in solid, gaseous, and liquid also provide most of the global energy needs and demand. Some of these fuels e.g. coal and natural gas are utilized in their natural form while energy resources like petroleum, shale, and bituminous sands require processing, refinement, and distillation to produce consumable fuels.

The conservation of energy is an essential step to take towards overcoming the mounting problems of the worldwide energy crisis and environmental degradation. In particular, developing countries are interested in increasing their awareness of the energy efficiency in power generation and consumption in their countries. However, usually, only limited information/sources on the rational usage of energy are available [4].

The energy source or mix to be implemented will have to meet the varying energy demand of the countries, industry, or organizations as well as improving the security against the energy crisis. Fuel availability, ease of processing and handling, environmental pollution, storage, and cost are some of the factors that determine the selection of fuel [5].

In cement production, the energy use is distributed as 92.7% for pyro-processing, 5.4% for finishing grinding, and 1.9% for raw grinding [6]. The type of fuel used determines the quantity of greenhouse gases (GHG) emission, cement product quality, and cost. Large volumes of CO2 are emitted during cement production and it is believed that this sector represents 5%–7% of the total CO2 anthropogenic emissions [7, 8]. Environmental concerns are of great importance since cement and the production of its raw materials are extensively based on fossil fuels.

There are three processes in cement manufacturing plant [9]: raw material mixing, pyroprocessing (burning), and grinding.

Raw material processing: this can be the wet process or dry process depending on the method of milling. In the wet process, raw materials other than plaster are crushed to a diameter of approximately 20 mm by a crusher and mixed in an appropriate ratio using an automatic weigh balance. Its particle size is further reduced to finer particles by tube mill of 2–3.5 m diameter and length 10–14 m in the presence of water from a slurry of 35–40% [10]. In the dry process, the raw materials (calcareous and argillaceous) are separately crushed to about 2–5 cm. They are later dried in a cylindrical rotary drier having a diameter of 2 m and a length of about 20 m, pulverized into fine particles, and stored. The pulverized fine raw materials are then mixed automatically in proportions to form a uniform dry mix and sent to a kiln for clinker production where about 80% of the energy used in cement production is consumed [4, 11]. The electrical energy requirement of the dry process is higher compared to the wet process while the thermal energy consumption is very low compared to the wet process. The primary energy consumption in a typical dry process is about 75% fossil fuel and up to 25% electrical energy [1].

The pyroprocessing in the kiln generates about 81% of cement production CO2 emission; 36.8% from fuel combustion while 46.3% is from pyroprocessing reaction [6]. Hence, the choice of fuel and energy conversion efficiency have a net effect on cement CO2 emission. The exact consumption of energy in the production of cement varies from one technological approach to another.” The major fuel used in clinker production is coal and petroleum coke but alternate energy source like biomass, waste heat, fuel oil, solvent, tyres, gas, etc. are becoming attractive in recent years [12]. A considerable amount of energy is consumed in manufacturing cement. Thus, the focus should be centered on energy savings and energy-associated environmental emissions both locally and universally [13, 14, 15, 16, 17]. The chief share of the total thermal energy consumption is required by pyro-processing and it accounts for approximately 93–99% of the entire fuel consumption [1]. Though electrical energy is principally used for the operation of the raw materials which accounts for 33% of its consumption, and clinker crushing and grinding equipment which accounts for 38% of its consumption. Electrical energy is needed to operate equipment such as combustion air blowers, kiln motors, and fuel supply, etc. accounting for 22% of its consumption to sustain the pyro-process.

The calorific value of common fuels used in cement production is shown in Table 1. Natural gas has the highest energy content followed by fuel oil while coal has the least energy content of the three fuels.

S/NFuelEnergy Content (MJ/Kg)
1Coal36.3
2Natural gas54.0
3Fuel oil45.6

### Table 1.

Energy contents of coal, fuel oil, and natural gas.

Source: Engineering ToolBox, (2008). Fossil and Alternative Fuels Energy Content. [online] Available at: https://www.engineeringtoolbox.com/fossil-fuels-energy-content-d_1298.html [Accessed: 23/2/2021].

Coal is regarded as the most abundant fossil fuel on earth, with a global recoverable reserve estimated at 216 years [18]. Coal provides 26% of global primary energy consumption and contributes 41% of global electricity generation.

Fuel oil is a distillate or a residue fraction produced from petroleum distillation. It is any liquid from petroleum that is burned in a furnace for heat and power generation In terms of industrial use of fuel especially in cement kiln firing, heavy fuel oil, or low pour fuel oil (LPFO). Heavy oil is a long residue obtained from the atmospheric distillation column. Heavy fuel oil is used mainly to produce electricity, to fire boiler and furnace in industry, notable the cement, pulp, and paper, and to power large marine and other vessels.

Natural gas is a fossil fuel like oil and coal, thus it is essentially the remains of plants, animals, algae, and microbes that lived millions of years ago. Over the years, natural gas has secured its vital role in every aspect of world development, particularly its role to replace coal and oil with having a high energy content that the two aforementioned.

In Nigeria, cement production has increased exponentially from 2 million tonnes in 2002 to about 17 million in 2011 [19]. Thus, making Nigeria’s cement industry contributing about 60% of the West African region’s cement output in 2011. Since the sector consumes a considerable amount of energy, it is necessary to identify and reduce energy wastage [20]. Also, the unit fuel cost for cement production in Nigeria is $30 per tonne which is very high compared to an advanced country like China ($6 per tonne) thereby contributing to the high cost of unit price cement [21]. The use of energy utilization analysis for energy and financial savings has generated research interest in recent years [22]. Therefore, this research work aims to analyse the cost vis-à-vis the pollution tendencies of each energy source and its consequence on health and the environment from the energy data obtained from the cement industries.

## 2. Methodology

### 2.1 Data collections

Three major Cement producers in Nigeria (Dangote Cement in Obajana, Kogi State; United Cement Company in Calabar, UNICEM - Cross River and Nigerian Cement Company in Nkalagu, NIGERCEM, Ebonyi State), labeled Factory A, B and C were approached for the Data on energies consumed during cement production and were collected for the analysis.

#### 2.1.1 Calculations involved in the analysis

Specific heat:

The standard or universally accepted specific fuel consumption for clinker production is 720 Kcal/m3 of clinker from:

Let n = 1.

From ideal gas law: PV = nRT

R=Pact×VactTactatagiven temperature and pressureE2
R=Po×VoToatnormal condition0°Cand1.0atmE3

Therefore

Pact×VactTact=Po×VoToE4
Volumetric flow rateQ=VtE5

Substituting Eq. (4) into (1) and simplifying we have

Qo=Qact×PactPo×ToTactE6

Where Qo = QN = Gas flow rate at normal condition.

Qact = measured flow rate in m3/hr.

Pact = P measured + P ambient

P ambient = 1.01325 bar.

Po = pressure at normal condition

To = temperature at normal condition

Therefore

QN=Qact×Pmeasured×PambientPO×TOTactNm3hrE7

Since we are dealing with volume and not flow rate. Then equation becomes this

Vo=Vact×ToTactNm3E8

Vo = volume at normal condition.

Since all the pressure and temperature are in atmospheric and absolute units. In Eq. (8) the fluid in meter cubic (m3) is converted to Normal cubic meter (Nm3). The reversal of Eq. (8) converts the fluid in Normal cubic meter to meter cubic. Therefore Eq. (8) becomes:

Vact=Vo×PoPact×TactTom3E9

Vact = measured volume in m3.

n = number of moles.

R = molal gas constant.

Tact = temperature in Kelvin.

Pact = Pmeasured + Pambient.

#### 2.1.2 Cost analysis

The following cost of material for fuel oil, natural gas, and coal was as obtained [23, 24, 25], respectively;

Fuel oil (diesel) = ₦223.740 ($0.587) per litre. Natural gas =$2.76 per 1000 ft3.

Coal = $68.9 per tons. The calculated cost in Table 2 is subject to some conversions as the consumption of coal, fuel, and energy is given in tonnes. The cost for natural gas is given in$/ft3 and the cost of fuel oil is given in $per liters. For the two cases where volume is used, the quantity consumed is converted from tonnes to ft3 and liters for natural gas and fuel oil, respectively. Density of fuel oil (diesel) = 0.85 kg/litre. Density of natural gas = 0.68 kg/m3. Density of coal = 1506 kg/m3. 1 tonnes = 1,000 kg. 1 m3 = 35.315 ft3 volume=massdensityE10 ## 3. Results ### 3.1 Flue gas composition Table 2 shows the various proportions of flue gases in coal, fuel oil, and natural gas (Figure 1). COALFUELNATURAL GAS SNFactoryProd., tonsTotal FuelCP, Kcal/kgCost,$Prod., tonsTotal FuelCP, Kcal/kgCost, $Prod., tonsTotal FuelCP, Kcal/kgCost,$
1A6,00072060049,6086,014428,7556972.96 x 1086,081470,47069867,435,924
6,08873560450,641.56,013421,8506762.91 x 1086,095466,26069066,832,474
6,14874560651,330.56,074425,9876862.94 x 1086,168460,00067365,935,182
6,07472559749,952.56,148424,5866752.93 x 1086,081471,36369967,563,925
2B4,60059564740,995.55,028428,5778342.96 x 1084,074313,64769444,957,331
4,72060864441,891.25,145412,5807842.85 x 1083,563310,84078744,554,983
4,17554064637,2065,111417,2557982.88 x 1083,612306,66676643,956,693
4,83462164242,786.95,273435,6748083.01 x 1083,554314,24279845,042,616
3C5,12561259742,166.85,412385,7896972.65 x 1083,798282,28367040,461,698
5,17562560443,062.55,466383,2986892.65 x 1083,908276,00063739,561,109
5,16461659642,442.55,533382,0376752.64 x 1083,807279,75666240,099,485

### Table 2.

Calculated specific heat consumption and cost for the different fuel.

Prod = 24 hours Production in tons; CP = Specific heat, Kcal/kg; Total fuel = Total fuel consumed during the 24 hours of production, tonnes.

## Conflict of interest

There is no conflict of interest associated with this work.

chapter PDF
Citations in RIS format
Citations in bibtex format

## More

© 2021 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

## How to cite and reference

### Cite this chapter Copy to clipboard

Oluwafemi M. Fadayini, Clement Madu, Taiwo T. Oshin, Adekunle A. Obisanya, Gloria O. Ajiboye, Tajudeen O. Ipaye, Taiwo O. Rabiu, Joseph T. Akintola, Shola J. Ajayi and Nkechi A. Kingsley (May 3rd 2021). Energy and Economic Comparison of Different Fuels in Cement Production, Cement Industry - Optimization, Characterization and Sustainable Application, Hosam El-Din Mostafa Saleh, IntechOpen, DOI: 10.5772/intechopen.96812. Available from:

### Related Content

Next chapter

#### Accelerated Carbonation Curing as a Means of Reducing Carbon Dioxide Emissions

By Hilal El-Hassan

#### Polyester

Edited by Hosam Saleh

First chapter

#### Synthesis of Thermally Stable Polyesters

By Hossein Mighani

We are IntechOpen, the world's leading publisher of Open Access books. Built by scientists, for scientists. Our readership spans scientists, professors, researchers, librarians, and students, as well as business professionals. We share our knowledge and peer-reveiwed research papers with libraries, scientific and engineering societies, and also work with corporate R&D departments and government entities.


text:
NURBS (evaluators)

This topic is 4662 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

Recommended Posts

I am having some problem using the gluNurbsCurve() function The following code works fine , it draw the curves out but once I add more control points and knots. It wont draw anything. Anyone knows does the gluNurbsCurve function limit to only 4 control points? (I want to draw a curve that has 6 control points. GLfloat ctrlpoints[4][3] = { { -4.0, -4.0, 0.0}, { -2.0, 4.0, 0.0}, {2.0, -4.0, 0.0}, {4.0, 4.0, 0.0}}; GLfloat knots[8] = { 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0 }; GLUnurbsObj* nurbs = gluNewNurbsRenderer(); void display(void) { gluBeginCurve(nurbs); gluNurbsCurve(nurbs, 8, knots, 3, &ctrlpoints[0][0], 4, GL_MAP1_VERTEX_3); gluEndCurve(nurbs); } The following is what I tried to do and wont work: GLfloat ctrlpoints[6][3] = { { 2.4, 0.0, 5.4}, { 1.7, 0.0, 4.8}, {1.6, 0.0, 4.3}, {2.0, 0.0, 4.1}, { 2.7, 0.0, 4.4 }, { 3.3, 0.0, 4.9 }}; GLfloat knots[10] = { 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0 }; GLUnurbsObj* nurbs = gluNewNurbsRenderer(); void display(void) { gluBeginCurve(nurbs); gluNurbsCurve(nurbs, 10, knots, 3, &ctrlpoints[0][0], 4, GL_MAP1_VERTEX_3); gluEndCurve(nurbs); } Anyone know why?? Thanks

Share on other sites
yup. your knot vector is wrong. This is how to do it, assuming you always want a cubic curve (you probably do), then the order will always be 4 (6th param to gluNurbsCurve).

The number of knots will then be order+num_control_points. So, for 5 points with a curve order of 4, you will require 9 knots :

0 0 0 0 1 2 2 2 2

basically, our order is 4, therefore we require 4 knots at each end to clamp the curve to it's endpoints, so basically write down 4 zeros, and then increment by one until you have 4 left, and fill with the same number. For example, with 6 points your knot vector would need to be :

0 0 0 0 1 2 3 3 3 3

for 7,

0 0 0 0 1 2 3 4 4 4 4

etc etc.

I've got a few examples on my website that don't use the gluNurbs stuff, you might find the examples fairly useful....

Share on other sites
p.s. Maya ignores the first and last knot values!! simply duplicate those values if grabbing the nurbs data from there.

mel curve stuff

you'll prolly want to use the mel command xform -q -ws -t curve1.cp[0] to query the points in world space....

Share on other sites
You are right, I am extracting it from maya. I also found the knot values strange in Maya ((Number of CV + Order (Degree+1) doesn't match the number of knots Maya have)). SOme information I gathered (Rhino websites says the Number of knots should be Control points + degree -1 while opengl says control points + degree + 1)??.
I am trying to replicate the Nurbs model in Opengl (Comparing the Nurbs algorithm with Polygon algorithm (Already done that using Triangles). My comparison will be base on (CPU time for each model and Memory requires for Data (Coordinates etc)) etc.

Anyways is working now, it is to do with the knot. To be honest I still dont understand what the knots do, care to explain please?

Thanks for the Help!!

Share on other sites

Do you know how I can create a NurbsSurface in opengl between those selected four Nurbs Curve?

Share on other sites
Number of CV + Degree + 1 <<--- This is correct!

Maya however ignores the first and last knot value, so it has num cvs + degree - 1. If you read the mel link i posted above it explains all of that.

In a sense knot vector's are a bit of a hack. If you look at the b-spline, clamped b-spline and the Nurbs curve examples on my website they should help explain them a bit (read the notes in each sample in that order).

The knot vector is used specifically with the cox-de-boor algorithm used to generate the curves. Instead of saying :

for each span
for each t value between 0 and 1
calculate point

it's nicer to say

for each t value between 0 and num_spans
calculate point

which is what knot vectors and the cox-de-boor does.

To render the surfaces in openGL, use the birail tools within Maya to create the NURBS surfaces, then export the NURBS data to your own file format, and use the gluNurbsSurface funcs to render.

As i said before, gluNurbs is woefully in-efficient. It's not really that fair to do a NURBS/Poly comparison if you are using gluNurbs to render the primitives. As i mentioned before in a previous thread of yours, if you want any decent speed from NURBS you will have to tesseleate and render the surface yourself.

Basically, the blending functions returned from the cox-de-boor algorithm only need to be re-calculated when the surface LOD changes. Since the cox-de-boor is the most expensive operation associated with NURBS surfaces, caching the result gives you a huge speed imporvement. Also, a tesselated NURBS surface can be rendered with triangle strips, thus making it fast. You also only need to calculate the tex coords and indices for the vertex arrays when the LOD changes too.

As i mentioned before in your previous thread, there is example code on my website to export the data from maya, load it and render it (using the techniques i just described). Advanced Exporter

With your current model, i reackon gluNurbs will give you somewhere between 1->10 fps.

I did a comparison between real time NURBS and polys for my university thesis. Basically, if you are deforming the surface (ie, skinning or blendshapes), then NURBS are faster than polygons (assuming you are not using gluNurbs of course!!). If not, then nurbs may give you some benefit due to variable LOD's.

Share on other sites
I am too doing the comparision for my final year desitation.
I am reading through your websites now and will decide should I use the algorithm or glnurbs.

Is hard to decide, I find it hard to implent the actual algorithm (Dont know where to start at and I cant do maths :-)). My comparision will mainly be focusing on memory usage , how easy is it to model, how accurate it is (which Nurbs is more accurate) and how long does it take to render the model (Not FPS per second, just how long it takes to render the model at the start), I think comparing the FPS will be out of my project scope.

I am comparing it for CAD/Automotive design purposes (Topic is Computer Aided Design, Nurbs Vs Polygons). Why do they use NURBS instead of Polygons when design vehicles etc.

Would you mind to point me to a few sources which have an easy to understand and explanation regarding bizer curves, splines and NURBS?
I have got kind of the idea on what they are, how they works but just missing on the mathematical bit(EG how it calculates the curve etc).
I would really appriciate it :-) and thanks for your help so far.

Edi:
PS
Quote"As i mentioned before in your previous thread, there is example code on my website to export the data from maya, load it and render it (using the techniques i just described). Advanced Exporter"

The techniques do you mean what you described here? -
Quote " Basically, the blending functions returned from the cox-de-boor algorithm only need to be re-calculated when the surface LOD changes. Since the cox-de-boor is the most expensive operation associated with NURBS surfaces, caching the result gives you a huge speed imporvement. Also, a tesselated NURBS surface can be rendered with triangle strips, thus making it fast. You also only need to calculate the tex coords and indices for the vertex arrays when the LOD changes too."

I cant seems to find it, sorry which tutorial on your website you talking about?? Quake 2 MD2 Loaders and Maya Exporter (+ source)??

Thanks a lot for your great help!!

[Edited by - Celesa on April 1, 2005 1:01:12 AM]

Share on other sites
Hi Rob

Got the cox-de-boor algorithm working plus the cache too. As you said, huge performance increase!! I guess saving the CPU to do the calculation everytime the curves is redraw!!

Also I dont know what is causing this problem: http://www.domorewithcel.com/Allroad2.JPG
*Whenever I tries to increment the LOD (level Of Detail), it ends up like that.*

Regarding the Nurbs Surface, Is it true that in order to form a surface between the 4 curves, The two verticals and horizontals curves must have the same number of control points?
This is what I found out:
Eg: The left vertical curve has 10 control points, right vertical curve has 17 control points, upper horizontal curve has 12 control points and buttom curve has 8 control points. Maya will convert the left vertical to have 17 control points and both horizontal to 16 control points.
Do you know how did Maya do that? Algorithm? I do not want to use The maya Libraries in my opengl application, I would like to implement it myself but coudn't find out how it did it.

By The way, I just found out you are from UK. I am in UK too.
I also want to give you credit on helping me out on the implementation of the Nurbs algorithm in my desitation.

Thanks a lot!!

[Edited by - Celesa on April 3, 2005 10:37:00 PM]

Share on other sites
Quote:
 Original post by CelesaHi RobGot the cox-de-boor algorithm working plus the cache too. As you said, huge performance increase!! I guess saving the CPU to do the calculation everytime the curves is redraw!!Also I dont know what is causing this problem: http://www.domorewithcel.com/Allroad2.JPG*Whenever I tries to increment the LOD (level Of Detail), it ends up like that.*

try stepping up in LODS of 2. I don't know why it happens. It's every even LOD of summit like that that is OK.

Quote:
 Regarding the Nurbs Surface, Is it true that in order to form a surface between the 4 curves, The two verticals and horizontals curves must have the same number of control points?This is what I found out:Eg: The left vertical curve has 10 control points, right vertical curve has 17 control points, upper horizontal curve has 12 control points and buttom curve has 8 control points. Maya will convert the left vertical to have 17 control points and both horizontal to 16 control points.Do you know how did Maya do that? Algorithm? I do not want to use The maya Libraries in my opengl application, I would like to implement it myself but coudn't find out how it did it.

I have no idea. Maya's a bit clever like that, but alas all i can determine from Maya is usually via educated guess work. I would assume that life would be much easier having even numbers of points. I have an idea or two about how you could get around the problem, i'd have to have a little play though. On holiday at the moment so don't have my 'tools' with me so to speak....

Quote:
 By The way, I just found out you are from UK. I am in UK too.I also want to give you credit on helping me out on the implementation of the Nurbs algorithm in my desitation.Thanks a lot!!

cheers, send me a copy of the dissertation, i'd be interested to have a read when you're done...

I'd also have a look at the vertex buffer extension if you want to get anymore performance out of it. Use seperate VBO's for the static data and dynamic data. The static stuff can then be stored directly in video mem, and then you only need to send the normal and vertex buffer data down the AGP.

When calculating Normals for the surfaces, ideally you'd use differentiated versions of the curve equations to calculate the tangents of the surface at a given point. I find this method to be a bit slow (there's an example at gamasutra.com optimised for SIMD extensions). I use this method (note the example on my website is actually a bodge)

1. memset the normal array to 0
2. for each polygonal face, calculate face normal via cross product, then normalise face normal.
3. Add the face normal to each vertex normal used by that face.

In theory you should then run over the normals and normalize them. The slightly better method is to normalise them in hardware. You can do this simply by enabling GL_NORMALIZE or within a vertex program. If a given surface direction is periodic, then i simply add the first edges's vertex normals to the second edge's set of normals; I then copy the second set over the first. (If that makes any sense). It just avoids nasty seams along the edges of say a torus or sphere where the surface wraps around.

Also another really subtle optimisation when tesselating the surface is to use if statements before multiplications, ie

if(BlendFunction > 0) {
outpoint += BlendFunction * cv;
}

Since a float comparison is quicker than a multiplication (and since most blend functions returned from the cox-de-boor will be zero, its pointless performing mults when the result will have no effect). I had though that maybe using indexing for the CV's when caching data rather than just storing all blend functions may make the caching slightly less memory heavy. Might be worth a quick test i guess.

i've got a couple of papers i wrote for my masters and ba which i'll try and track down so you've got a couple of extra sources to quote ;)

rob

Share on other sites
great!!! I was looking for some examples of rendering a NURBS patch without using gluNurbs()


text:
# Thread: Sum of Measurable Sets

1. ## Sum of Measurable Sets

how we can show that the sum of two measureable sets is neednot to be measureable set

2. ## Re: measureable sets

Originally Posted by comlpexaaz
how we can show that the sum of two measureable sets is neednot to be measureable set
Look here

Is the sum of 2 Lebesgue measurable sets measurable? - MathOverflow


text:
Share
Enhanced recovery

# Viability of Gas-Injection EOR in Eagle Ford Shale Reservoirs

## This paper studies the technical and economic viability of this EOR technique in Eagle Ford shale reservoirs using natural gas injection, generally after some period of primary depletion, typically through long, hydraulically fractured horizontal-reach wells.

Gas-injection huff ’n’ puff enhanced-oil-recovery (EOR) techniques have the potential to improve liquid hydrocarbon recovery in ultratight, unconventional reservoirs. This paper studies the technical and economic viability of this EOR technique in Eagle Ford shale reservoirs using natural gas injection, generally after some period of primary depletion, typically through long, hydraulically fractured horizontal-reach wells.

## Reservoir-Analysis Work Flow

Model Description. A compositional, fine-scale, dual-porosity, dual-permeability, symmetry-element numerical model was used in this study to model the current primary depletion and the EOR huff ’n’ puff process. In this study, the element of symmetry, which represents the bottom half of a cluster within a fracturing stage, is being extended to include three wells to allow the investigation of the effect of interference and containment on pad-level cyclic-gas-injection deployment.

Production and injection of the entire well come from all active stages in each well, with equal weighting. The production and the injection for each cluster in every well are calculated proportionally by use of these assumptions.

Model Input. The complete paper describes the critical input for the numerical model, including fracture half-length and fracture height, shape factor, absolute and relative permeability, and pressure/volume/temperature (PVT).

History-Matching Work Flow. Because the history-matching solution is known to be highly nonunique, a comprehensive probabilistic approach was used to identify the realistic solution space. To facilitate this process, the authors used a three-step approach:

1. Identify the solution space through parametric study.
2. Perform combinatorial analysis of predetermined variables and understand available solutions within the solution space.
3. Fine-tune history matching to identify the correct combination of parameters for probable solutions.

## Characterizing the Performance of Cyclic Natural-Gas Injection

The compositional fluid-flow analysis of the combined sample of the separator liquid and gas at reservoir conditions indicated a volatile oil in the reservoir. To evaluate the phase behavior of the mixture, the original oil and the gas supplied for injection purposes were mixed at different ratios. For each mixture, the calibrated equation of state (EOS) is used to evaluate the resulting phase diagram and fluid properties by modeling a constant-composition-expansion experiment at reservoir conditions.

The 1979 Peng-Robinson EOS with nine components was used to model the PVT changes resulting from the composition changes related to each injection ratio. As the composition changes, the phase behavior and the fluid properties also change. The fluid system in the reservoir gradually changed from a volatile oil to a gas condensate.

Results show that when injected-gas makeup is 20% or greater, the phase behavior changes from volatile oil to gas condensate. When the mixture consists of more than 70% injected gas, at any pressure below 6,000 psi, there is a possibility that condensation can occur.

Operational Conditions. Injection and Production Periods. To find the duration of the injection cycle, it was necessary to monitor the injection rate decline vs. time in the simulation results, assuming a maximum injection rate of 10 MMscf/D and a maximum bottomhole injection pressure of 10,300 psi. Significant decline in the injection rate signals that the reservoir is being pressured up. Continuing injection after this point will be counterproductive because other wells in the pads are waiting for gas to be re-energized. The injection period of 9 weeks at an injection rate of 10 MMscf/D was determined as optimal for these cases.

The simulator was set at a bottomhole pressure (BHP) of 6,000 psi and the production rate was monitored until it started to decline. With this methodology, the optimal production duration was determined by using the point at which production is negligible, which was determined to be approximately 4–5 weeks.

Shut-In Period. Finding an optimal duration for the shut-in period is an exercise in compromise. Pressure distribution and stabilization are monitored immediately after injection has stopped. Once the well is shut in, the pressure at the points near the wellbore begin to decline while the pressure at points farther from the wellbore start to increase until equilibrium is reached.  The pressure profiles from the models indicate that 3–-4 weeks are enough, depending on the cycle number, to propagate the injected fluids and to stabilize the pressure in the stimulated reservoir volume (SRV) and the surrounding matrix.

Sensitivity Analysis. Because the optimization approach was designed on a pad rather than on a well basis, for the sensitivity analysis, the injection-production schedule for Well B only (out of six wells within a pad) for the case of a $50/STB oil price and a$1.50/Mscf gas price was selected to accomplish the sensitivity analysis. The Well B schedule in all sensitivity cases is represented as Well B in the simulation model. For all the sensitivity cases, the base case is selected from the cases with fracture half-length of 175 ft and fracture height of 50%. The sensitivity cases outlined in this section of the complete paper were represented by only one well within the pad.

Compaction Table. Compaction of the formation may cause induced fractures to close, resulting in a reduction of conductivity of the fracture networks, and can influence the fluid transformation from the fracture networks into the wellbore. Because there were no available data provided for the compaction effect in this area, similar studies were reviewed in the literature and three published compaction functions for the Eagle Ford were found. The most-conservative of these compaction functions was selected for the starting point. Further tuning was applied using the conservative function to achieve a reasonable history match.

During the injection-production cycles, two scenarios of compaction functions—when compaction is reversible and when it is irreversible—are evaluated. In the irreversible scenario, the permeability in the SRV is maintained to be the same as at the end of the depletion period (the end of history matching) and is not increased during the injection cycles. Because of low conductivity at the end of history matching, a lower injectivity rate, coupled with higher BHP, is expected. Moreover, low conductivity will also cause lower oil production, as compared with the reversible scenario. If reversible compaction is considered, the injection will create an increase of permeability in the SRV and also in the main conduit during the injection cycle and could increase gas leakage from the injected well toward the offset well.

Gas-Diffusion Effect. To simulate the effect of gas diffusion, the Langmuir isotherm option is borrowed. There were no data available for gas-diffusion parameters for this study; however, two different sets of values for Langmuir parameters in the literature were found for the Eagle Ford play. To cover the spectrum of the variables reported in the literature, both cases were simulated for comparison purposes. A slight increase was observed in the oil production because of diffusion effects during the historical depletion period. However, during the injection and production cycles of cyclic gas injection, this effect becomes minimal.

Injected-Gas Composition. The composition of the injected gas has a significant effect on phase behavior of the mixture. As mentioned previously, the fluid system in the reservoir gradually changed from a volatile oil to a gas condensate as composition changed in each injection cycle. Through the injection of 100% methane (dry gas) at higher ratios, the phase envelope expands, which increases the bubblepoint and dewpoint pressure of the mixture. Larger changes will be anticipated if the composition of the injected gas switches to lean gas. The miscibility process by methane gas injection is dominated mainly by the vaporization process.

Fracture Geometry. Two fracture half-lengths were used for history-matching purposes: a fracture half-length of 91 ft and a half-length of 175 ft. For the cyclic gas-injection simulations and all sensitivity scenarios, one of the most likely cases with a fracture half-length of 175 ft was selected as the base case. Results for cyclic gas injection and the sensitivities were based on this fracture half-length and height. The results of optimistic, pessimistic, and most-likely cases are compared with the base case with a half-length of 175 ft. The base case and optimistic case using a fracture half-length of 91 ft both yield similar uplift, 41 vs. 43%, respectively. Similarly, the uplift of 25 and 20% were expected from the most-likely and pessimistic cases using a half-length of 91 ft.

Summary. The sensitivity analysis is summarized in Fig. 1. On the basis of this sensitivity study, the top parameters are the SRV and quality and containment of the injected gas.

## Economic Analysis

Through the cyclic natural-gas-injection process, light components of the volatile oil vaporize into the injected gas and enrich the gas in each cycle. The efficiency of the vaporization process gradually declines with each cycle because the remaining moles stranded in the reservoirs are fewer and the difference between the liquid phase and vapor phase is less accentuated than in the earlier cycles. The recovery process then becomes less effective but still economical. To find this optimal economic point at which to switch the compressor to the next pad, an economic work flow has been developed as a function of commodity price and costs.

## Conclusions

• The results of this study suggest a likely incremental oil recovery of 41% with gas-injection EOR using produced gas.
• On the basis of the sensitivity work, containment of the injected gas is the highest risk to the project.
• Compressor use, rotating the compressors as a function of the pad performance, and economic variables could result in a highly economical project, even in a low-price environment.
• Modeling efforts, although imperfect, provide a guide for designing a suitable surveillance plan.

This article, written by JPT Technology Editor Chris Carpenter, contains highlights of paper SPE 191673, “Viability of Gas-Injection EOR in Eagle Ford Shale Reservoirs,” by Safian Atan, SPE, Arashi Ajayi, Matt Honarpour, Edward Turek, SPE, Eric Dillenbeck, and Cheryl Mock, BHP, and Mahmood Ahmadi and Carlos Pereira, MI3 Petroleum Engineering, prepared for the 2018 SPE Annual Technical Conference and Exhibition, Dallas, 24–26 September. The paper has not been peer reviewed.