text:
Itogi Nauki i Tekhniki. Seriya "Sovremennaya Matematika i ee Prilozheniya. Tematicheskie Obzory"
 RUS  ENG JOURNALS   PEOPLE   ORGANISATIONS   CONFERENCES   SEMINARS   VIDEO LIBRARY   PACKAGE AMSBIB
 General information Latest issue Archive Search papers Search references RSS Latest issue Current issues Archive issues What is RSS

 Itogi Nauki i Tekhniki. Ser. Sovrem. Mat. Pril. Temat. Obz.: Year: Volume: Issue: Page: Find

 Itogi Nauki i Tekhniki. Ser. Sovrem. Mat. Pril. Temat. Obz., 2020, Volume 187, Pages 82–118 (Mi into734)

Examples of integrable equations of motion of a five-dimensional rigid body in the presence of internal and external force fields

M. V. Shamolin

Lomonosov Moscow State University

Abstract: In the study of integrable systems that describe multidimensional rigid bodies in nonconservative force fields, two approaches are used. The first approach is concerned with systems in which the nonconservativity of force fields is related to additional coefficients in the cinematical relations; note that $n=5$ and $n=6$ are special cases. The second approach is based on the simultaneous influence of two force fields: internal (conservative) and external (nonconservative). This paper is devoted to the special case where $n=5$.

Keywords: multidimensional rigid body, equations of motion, conservative force field, integrability, transcendental first integral

DOI: https://doi.org/10.36535/0233-6723-2020-187-82-118

Full text: PDF file (395 kB)
References: PDF file   HTML file

UDC: 517, 531.01
MSC: 58-xx, 70-xx

Citation: M. V. Shamolin, “Examples of integrable equations of motion of a five-dimensional rigid body in the presence of internal and external force fields”, Geometry and Mechanics, Itogi Nauki i Tekhniki. Ser. Sovrem. Mat. Pril. Temat. Obz., 187, VINITI, Moscow, 2020, 82–118

Citation in format AMSBIB
\Bibitem{Sha20} \by M.~V.~Shamolin \paper Examples of integrable equations of motion of a five-dimensional rigid body in the presence of internal and external force fields \inbook Geometry and Mechanics \serial Itogi Nauki i Tekhniki. Ser. Sovrem. Mat. Pril. Temat. Obz. \yr 2020 \vol 187 \pages 82--118 \publ VINITI \publaddr Moscow \mathnet{http://mi.mathnet.ru/into734} \crossref{https://doi.org/10.36535/0233-6723-2020-187-82-118}


text:
A graph on which a free group acts freely is a tree?

Let $F$ a free group acting freely on a graph $X$. Does this imply that $X$ is a tree?

If $F=\mathbb Z$, the answer is no. For example $\mathbb Z$ acts on $\mathbb Z^2$ by translations.

But what about the other free groups?

As $F_2$ contains $F_k$ as a subgroup $\forall k$, it would suffice to show that the claim is also falso for $F=F_2$.

However I could not think of any graph which is not a tree on which $F_2$ acts freely. In particular, letting one generetor ($b$) act trivially does not give a free action, because then $1\neq aba^-1$ acts as the identity.

• Copying the example of $F = {\mathbb Z}$, $F_2$ acts freely on the Cayley graph of $F_2 \times H$ for any group $H$. – Derek Holt Jul 16 '18 at 13:14
• I think I got it. If I understood it correctly, it works for any grpah of the form $X \times A$ wtih $A$ an arbitrary graph and $X$ the Cayley graph of $F_2$ – stacky Jul 16 '18 at 14:37

format: plain


text:
Question: MDS Plot help in edgeR
0
15 days ago by
ilovesuperheroes19930 wrote:

I am doing a differential genes analysis between 24 pairs of paired samples, normal vs diseased. I want to generate an MDS Plot to check if my normal and diseased samples are being clustered well. I am running edgeR for the analysis.

Could anyone tell me the difference between the 2 methods given below?

I have inputted my file of raw read counts, described the groupings of the samples and the classification of normal and diseased. I have created a DGEList 'y'.

Method 1

y_norm <- calcNormFactors(y)

plotMDS(y_norm)

Method 2

y_norm <- calcNormFactors(y)

cpm <- cpm (y_norm\$counts)

plotMDS(cpm)

In both the cases, the MDS Plots generated are showing the normal and diseased samples as separate clusters, but the clusters themselves are different in the two cases.

Can anyone please let me know which of these is the proper way to do it?

modified 15 days ago by Gordon Smyth36k • written 15 days ago by ilovesuperheroes19930
Answer: MDS Plot help in edgeR
0
15 days ago by
Gordon Smyth36k
Walter and Eliza Hall Institute of Medical Research, Melbourne, Australia
Gordon Smyth36k wrote:

Method 1 is correct and Method 2 is wrong. All the documentation uses Method 1, so what has make you think that Method 2 might be appropriate?

Method 2 would be same as Method 1 if you called cpm() with log=TRUE and prior.count=2. We have always given this advicei for example in Section 2.15 of the edgeR User's Guide. As it is though, your cpm values are unlogged and so are on the wrong scale to compute linear distances.

Note that priort.count=2 is now the default in the latest version of edgeR, but you still need

logCPM <- cpm(y_norm, log=TRUE)

if you want to compute summary values for plots and heatmaps.

I originally have used Method 1. But recently I saw a couple of pages where someone had suggested to use method 2, i.e. doing the MDS plot with the normalized counts.

Could you please explain me why the second method is wrong, how the two methods are differing?

cpm computes counts-per-million. It doesn't produce "normalized counts", because the result are not counts.

I do not know if this is the same user on Biostars, but I and others have just been providing comments here: https://www.biostars.org/p/356810/#357188

1

Kevin, thanks for answering questions about edgeR on Biostars, and I hope you will continue to do that. The use of cpm() in the Biostars thread is fine because it uses log=TRUE, which was my main concern. The prior.count setting is less important, and prior.count=2 is the default anyway in the latest version of edgeR.

Thank you Gordon - no problem. We try our best to be as accurate as possible. If in doubt, we direct users here. Usually most questions are already answered here on Bioconductor by you, Aaron, or James, in fact.

Hi Gordon,

I am the one that have used the incorrect method (cpm without the prior.count function). But I didn't know about the need of defining te prior.count. I only explained a problem using edgeR with my data in biostars page https://www.biostars.org/p/356810 on how to correct the batch effect of my samples, and how to see if my samples cluster together in PCA plot. Kevin and I have been disscusing about the issue during all the day, and I would be very gratefull if you consider on having a look of the coments and give me your opinion.

1

Iraia, your use of cpm seems fine because you used log=TRUE (unlike OP's Method 2). The prior.count setting isn't so important, and prior.count=2 is the default in the latest version of edgeR anyway.


text:
# What are the differences between SARSA and Q-learning?

From Sutton and Barto's book Reinforcement Learning (Adaptive Computation and Machine Learning series), are the following definitions:

To aid my learning of RL and gain an intuition, I'm focusing on the differences between some algorithms. I've selected Sarsa (on-policy TD control) for estimating Q ≈ q * and Q-learning (off-policy TD control) for estimating π ≈ π *.

For conciseness I'll refer to Sarsa (on-policy TD control) for estimating Q ≈ q * and Q-learning (off-policy TD control) for estimating π ≈ π * as Sarsa and Q-learning respectively.

Are my following assertions correct?

The primary differences are how the Q values are updated.

Sarsa Q value update: $$Q ( S, A ) ← Q ( S, A ) + α [ R + \gamma Q ( S ′ , A ′ ) − Q ( S, A ) ]$$

Q-learning Q value update: $$Q ( S, A ) ← Q ( S, A ) + α [ R + \gamma \max_a Q ( S ′ , a ) − Q ( S, A ) ]$$

Sarsa, in performing the td update subtracts the discounted Q value of the next state and action, S', A' from the Q value of the current state and action S, A. Q-learning, on the other hand, takes the discounted difference between the max action value for the Q value of the next state and current action S', a. Within the Q-learning episode loop the $$a$$ value is not updated, is an update made to $$a$$ during Q-learning?

Sarsa, unlike Q-learning, the current action is assigned to the next action at the end of each episode step. Q-learning does not assign the current action to the next action at the end of each episode step

Sarsa, unlike Q-learning, does not include the arg max as part of the update to Q value.

Sarsa and Q learning in choosing the initial action for each episode both use a "policy derived from Q", as an example, the epsilon greedy policy is given in the algorithm definition. But any policy could be used here instead of epsilon greedy? Q learning does not utilise the next state-action pair in performing the td update, it just utilises the next state and current action, this is given in the algorithm definition as $$Q ( S ′ , a )$$ what is $$a$$ in this case ?

• here is an answer that shows when the two are (almost) the same. – David Ireland Jun 15 at 19:13
• Hi. Please, next time, ask one question per post. Here you're asking too many questions. When you have multiple questions, ask each of them in its separate post, even though they are related. This helps answerers to focus on a single problem, so it facilitates the life of everyone that reads the posts. Please, read our on-topic page to understand the ideal question we are looking for. – nbro Jun 18 at 13:32

The main difference between the two is that Q-learning is an off policy algorithm. That is, we learn about an policy that is different to the one we choose to make actions. To see this, lets look at the update rule.

## Q-Learning

$$Q(s,a) = Q(s,a) + \alpha (R_{t+1} + \gamma \max_aQ(s',a) - Q(s,a))$$

## SARSA

$$Q(s,a) = Q(s,a) + \alpha (R_{t+1} + \gamma Q(s',a') - Q(s,a))$$

In SARSA we chose our $$a'$$ according to what our policy tells us to do when we are in state $$s'$$, so the policy we are learning about is also the policy that we choose to make our actions.

In Q-learning, we learn about the greedy policy whilst following some other policy, such as $$\epsilon$$-greedy. This is because when we transition into state $$s'$$ our TD-target becomes the maximum Q-value for whichever state we end up in, $$s'$$, where the max is taken over the actions.

Once we have actually updated our Q-function and we need to choose an action to take in $$s'$$, we do so from the policy we are using to generate our actions from -- thus we are learning about the greedy policy whilst following some other policy, hence off policy. In SARSA when we move into $$s'$$ our TD-target is chosen by the Q-value for the state we transition into and then the action we would choose based on our policy.

Within the Q-learning episode loop the $$a$$ value is not updated, is an update made to $$a$$ during Q-learning?

It will be, because the policy we use to choose our actions is ensured to explore sufficiently around all of the state-action pairs and so it is guaranteed to be encountered at some point.

Sarsa, unlike Q-learning, does not include the arg max as part of the update to Q value.

It is not an $$\arg \max$$, it is a $$\max$$. This is defined as $$\max_x f(x) = \{f(x) | \forall y\; : f(y) \leq f(x) \}$$

Sarsa, unlike Q-learning, the current action is assigned to the next action at the end of each episode step. Q-learning does not assign the current action to the next action at the end of each episode step

Kind of - the action that you chose for your TD-target in SARSA becomes the next action that you consider in the next step of the episode. This is natural because essentially you are in state $$s$$, you take action $$a$$ and observe a new state $$s'$$, at which point you can use your policy to see which action you will take, call this $$a'$$, and then perform the SARSA update, and then execute that action in the environment.

Sarsa and Q learning in choosing the initial action for each episode both use a "policy derived from Q", as an example, the epsilon greedy policy is given in the algorithm definition. But any policy could be used here instead of epsilon greedy?

Yes, any policy can be used although you want to choose a policy that allows sufficient exploration of the state-space.

Q learning does not utilise the next state-action pair in performing the td update, it just utilises the next state and current action, this is given in the algorithm definition as $$Q(S',a)$$ what is $$a$$ in this case ?

in the algorithm it actually has $$\max_a Q(S',a)$$, which if you refer back to my earlier definition of what the $$\max$$ operator does, should answer this question.

• "It is not an argmax, it is a max." thanks for pointing this out, I mixed up taking the arg max in the function epsilon greedy with the calculation of the updated Sarsa Q value . – blue-sky Jun 16 at 13:07


text:
## Trigonometry (11th Edition) Clone

The height of the tower (label it with a) is a leg of a right triangle, opposite to the angle $A=38^{o}20^{\prime}$ The side b = 93.2 is adjacent to A. (SOHCAHTOA) We use $\displaystyle \tan A=\frac{a}{b}$ and solve for a: $a=b\cdot\tan A$ $=93.2\cdot\tan 38^{o}20^{\prime}\approx$73.6930053432$\approx 73.7$ ft


text:
Are there any differences between photons emited /absorbed by antimatter atoms to photon in usual atoms?

(Theoretically)

Are there any differences between photons emited /absorbed by antimatter atoms to photon in usual atoms? for example, is it impossible to tell the difference between a photon emmited by an atom and it's anti matter counter part? Assuming the same orbital transitions for their electorn and positrons?

Are the absorptions lines the same as well? or are there absoption lines for anti hydrogen are expected to be different than the hydrogen?

What is convention for anti elements? e.g is anti matter counter part of He is just denoted as -He or $\bar{He}$?

-
actually anti-matter emits anti-photons... (a joke, but also true, since photons are their own anti-particle.) –  Michael Oct 10 '14 at 18:12

Yes, photons are the same if produced by matter or antimatter. A simple way to see this is that electromagnetism is CP, C and P invariant. Then, changing particles by antiparticles in any process one should obtain exactly the same "amplitude" (i.e. energy levels, probability of absortion emmission, etc...).

Weak interactions are neitehr CP nor C or P invariant,and there you can find processes where the probability is different if you change all particles by antiparticles. Take a look to CP violation in wikipedia.

About antielemtns, as far as I know, it is difficult to produce them experimentally, and I seriously doubt that something like anti-Helium have ever been measured. Only the nuclei of antihelium have been produced, but the full atom with positrons orbiting around is by far other history. Take a look at wikipedia again

-
To which of the questions above relates Your "Yes"? –  Georg Jun 7 '11 at 10:18
@Georg if you read the context, Alberto's answer is unambiguous. I'm sure you're capable of figuring out what "yes" means if you apply yourself. –  Mark Eichenlaub Jun 7 '11 at 12:29
@Georg, @Mark, that is my fault for using negatives in the question "is it impossible to tell the difference?" , I should have used "Is it possible to tell the difference?", Negated questions are a pet hate of mine, as answering them. –  Arjang Jun 9 '11 at 2:13

According to the theory, there is no difference between matter and antimatter radiation of photons. Experimentally, of course, there is a big difference - antielements are much harder to obtain and thus make an antimatter radiation source ;-).

-


text:
# Affinity

A brief synonym for an affine transformation, defined as a non-degenerate linear substitution $$\tilde x^i = A^i_s x^s + a^i \ .$$


text:
+0

# Finding How Many Phones Were Sold, Given Count & Average?

0
148
3

Avery has an average of 98.25 phones sold every 10 days.

We want to find how many phones were sold in the month of April (30 days).

Since average is calculated by $${sum \over count}$$....

sum = x

count = 3

average = 98.25

$${x \over 3} = {98.25}$$

$$x = {294.75}$$

Is this right? I just wanted to make sure :) I'm pretty sure you can't sell a 294.75 number of phones so I'm confused?

Guest Jun 19, 2018
#1
+13735
0

Total would be   98.25 x 3

Average PER DAY would be   98.25/10

ElectricPavlov  Jun 19, 2018
#2
0

Your answer is correct because you are given a fraction of a phone in "98.25 phones sold in 10 days".

Now, I would solve it this way:

98.25 phones / 10 days =9.825 phones sold in 1 day.

9.825 phones x 30 days(in April) =294.75, which is what you got. Since you can't have a fraction of a phone, then you simply round it up, in this case, to: 295 phones sold in April.

Guest Jun 19, 2018
#3
+48
0

yes, but 98.25*3 is much easier, and you can round from 294.75 to 295.

kevbamboo  Jun 20, 2018


text:
# creating a hash based sorting algorithm

For experimental and learning purposes. I was trying to create a sorting algorithm from a hash function that gives a value biased on alphabetical sequence of the string, it then would ideally place it in the right place from that hash.

The reasoning is that theoretically if done right this algorithm can achieve O(n) speeds or nearly so.

So here is what I have worked out in python so far:

letters = {'a':0,'b':1,'c':2,'d':3,'e':4,'f':5,'g':6,'h':7,'i':8,'j':9,
'k':10,'l':11,'m':12,'n':13,'o':14,'p':15,'q':16,'r':17,
's':18,'t':19,'u':20,'v':21,'w':22,'x':23,'y':24,'z':25,
'A':0,'B':1,'C':2,'D':3,'E':4,'F':5,'G':6,'H':7,'I':8,'J':9,
'K':10,'L':11,'M':12,'N':13,'O':14,'P':15,'Q':16,'R':17,
'S':18,'T':19,'U':20,'V':21,'W':22,'X':23,'Y':24,'Z':25}

def sortlist(listToSort):
listLen = len(listToSort)
newlist = []
for i in listToSort:
k = letters[i[0]]
for j in i[1:]:
k = (k*26) + letters[j]
norm = k/pow(26,len(i)) # get a float hash that is normalized(i think thats what     it is called)

# 2nd part
idx = int(norm*len(newlist)) # get a general of where it should go
if newlist: #find the right place from idx
if norm < newlist[idx][1]:
while norm < newlist[idx][1] and idx > 0: idx -= 1
if norm > newlist[idx][1]: idx += 1
else:
while norm > newlist[idx][1] and idx < (len(newlist)-1): idx += 1
if norm > newlist[idx][1]: idx += 1
newlist.insert(idx,[i,norm])# put it in the right place with the "norm" to ref     later when sorting
return newlist

I think that the 1st part is good, but the 2nd part needs help. so the Qs would be what would be the best way to do something like this or is it even possible to get O(n) time (or near that) out of this?

The testing I did with an 88,000 word list took prob about 5 min, 10,000 took about 30 sec it got a lot worse as the list count went up.

If this idea actually works out then I would recode it in C to get some real speed and optimizations.

Thank for any advice that you could give.

• It will not be O(n), it will be O(n^2). For each of the n entries, the inner while loop will iterate some number of times that scales with n. So the algortihm has an O(n) loop inside an O(n) loop, making it O(n^2). You need to heavily optimize the number of compares you do in the inner loop. Why are you skipping by only 1 every time? (Also, make sure you use a data structure whose insert operation is O(1) or that will be a problem too.) Sep 27 '12 at 7:03
• yes that is true, however that is what i am trying to solve, the 2nd part is there only because it works - even if slow, and i cant think of a better way to do it for the life of me, i would like to replace it with something that would not have to do the other loops if at all possible. any ideas?
– Scott C
Sep 27 '12 at 7:13
• Have you read en.wikipedia.org/wiki/Sorting_algorithm ?
– Colin 't Hart
Sep 27 '12 at 8:08

You have reinvented a form of radix sort. See that page for how to get rid of the two nested O(n) loops.

It is possible to get O(n) if the maximum length of the words to be sorted is assumed to be a constant.

letters = {'a':0,'b':1,'c':2,'d':3,'e':4,'f':5,'g':6,'h':7,'i':8,'j':9,
'k':10,'l':11,'m':12,'n':13,'o':14,'p':15,'q':16,'r':17,
's':18,'t':19,'u':20,'v':21,'w':22,'x':23,'y':24,'z':25,
'A':0,'B':1,'C':2,'D':3,'E':4,'F':5,'G':6,'H':7,'I':8,'J':9,
'K':10,'L':11,'M':12,'N':13,'O':14,'P':15,'Q':16,'R':17,
'S':18,'T':19,'U':20,'V':21,'W':22,'X':23,'Y':24,'Z':25}

Python convention says that constants should be named in ALL_CAPS. I'd also suggest writing code to build this dict from string.ascii_lowercase

def sortlist(listToSort):

Use _ to seperate words in function/parameter names, this line should be: def sort_list(list_to_sort): to follow python guidelines.

    listLen = len(listToSort)

I don't see that you ever use this

    newlist = []
for i in listToSort:
k = letters[i[0]]
for j in i[1:]:
k = (k*26) + letters[j]

Set k=0 before the loop, and then you won't need to slice the string.

        norm = k/pow(26,len(i)) # get a float hash that is normalized(i think thats what     it is called)

a norm has a specific meaning, instead, I'd call this normalized.

        # 2nd part
idx = int(norm*len(newlist)) # get a general of where it should go

The problem is that this assumes you'll have a pretty even distribution of all possible strings. That's never going to happen, since some letters are used far less then others. This simple isn't going to be a good heuristic.

        if newlist: #find the right place from idx
if norm < newlist[idx][1]:
while norm < newlist[idx][1] and idx > 0: idx -= 1
if norm > newlist[idx][1]: idx += 1
else:
while norm > newlist[idx][1] and idx < (len(newlist)-1): idx += 1
if norm > newlist[idx][1]: idx += 1

This is going to rather slowly move to the correct position. Finding the correct position would be much better done by using binary search. The bisect module has functions to do it.

        newlist.insert(idx,[i,norm])# put it in the right place with the "norm" to ref     later when sorting

This line will kill your performance. The insert is going to have to move items around constantly. That'll make your algorithm O(n^2).

    return newlist

See the radix or bucket sort, they are getting at the same ideas you are.


text:
# Time-optimal control of a car

I'm having trouble with the following problem:

$$\begin{array}{ll} \text{minimize} & J := \displaystyle\int_{t_0}^{t_f} 1 \,\mathrm{d}t\\ \text{subject to} & \dot{v}(t)=-9.8\sin(\theta)+u(t)-\frac{1}{m}F_a(t)\end{array}$$

where

• $\theta$ is the terrain inclination.

• $F_a$ is the aerodynamic drag, given by

\begin{equation*}F_a(t)=\frac{1}{2} \rho A C_d \big( v(t)-v_{\text{wind}}(t) \big)^2\end{equation*}

• $\rho$ is the air density.

• $A$ is the frontal area of the vehicle.

• $C_d$ is the drag coefficient.

• $v_{\text{wind}}$ is the wind velocity.

• $m$ is the mass of the car.

• $u(t)$ is the acceleration due to the accelerator or deceleration due to the brake system. The acceleration satisfies $-\beta \le u(t)\le \alpha$, where $\alpha > 0$ is the maximum acceleration which depends on the capability of the engine and $\beta>0$ is the maximum deceleration which is limited by the braking system parameters.

Further, if $t_0$ is the time leaving from point A, and $t_f$ is the time of the arrival at point B, then

\begin{equation*}v(t_0)=v(t_f)=0,\end{equation*}

and the speed limit on the road is $40km/h$.

1. I think that the Hamiltonian function is $$H=1+\lambda [-9.8\sin(\theta)+u(t)-\frac{1}{2m}\rho AC_d(v(t)-v_{\text{wind}}(t))^2]$$
2. How is the optimal control function $u^*(t)$ expressed?
3. How is the optimal velocity $v^*(t)$ expressed?
• add the physics tag – T.D. Jun 17 '18 at 17:43
• If the ODE is nonlinear (quadratic in $v$), why are you trying to use a linear state-space model? – Rodrigo de Azevedo Jun 17 '18 at 19:27
• Wouldn't the solution just be bang-bang, so first maximum acceleration and a jet unknown time which to maximum deceleration. – Kwin van der Veen Jun 17 '18 at 21:55
• @KwinvanderVeen The optimal control is $u^*(t)=-\beta$ if $t_0≤t<T$ and $u^*(t)=\alpha$ if $T≤t≤t_f$ – VarúAnselmo Sui Jun 18 '18 at 1:31

Given

$$H =1+\lambda(t) \left(-g\sin(\theta)+u(t)-\frac{1}{2m}\rho AC_d(v(t)-v_{\text{wind}}(t))^2\right)$$

we need a control $u^*$ such that $H(v,u^*,\lambda) = 0$ or

$$u^*(t) = \frac{A C \rho _d(v(t)-v_w(t))^2}{2 m}+g \sin (\theta )-\frac{1}{\lambda(t) }$$

and then knowing that

$$\dot\lambda = -\frac{\partial H}{\partial v}\\ \dot v = \frac{\partial H}{\partial \lambda}$$

we have

$$\dot\lambda(t) = \frac{A C_d \rho \lambda (t) (v(t)-v_w(t))}{m}\\ \dot v(t) = -\frac{1}{\lambda(t)}$$

we didn't consider the state restriction $v \le v_{max}$


text:
• Create Account

# RegEx matching difficulties

Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

12 replies to this topic

### #1Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 23 February 2012 - 05:20 PM

[To any GD.net staff: Requesting 'Regex' as a GD.net forum topic prefix]

I'm trying to solve a text parsing problem using C++11's <regex> library. This is somewhat unrelated to C++, however. This is mostly a Regex question, with only a few minor C++ twists. I could solve this problem easily using other C++ methods, but I figure knowing RegEx is a very important skill that I'm currently lacking.

The text I'm trying to parse has this format: (with a varying number of parameters - but for now, I'm assuming it has at least one)
functionName("blah", "Foo", Stuff)

Quotation marks on the parameters are optional, so I need to accept both cases.
I want to get 'functionName' as one string, and each parameter as another string.

Here's what I'm trying to do: (Code highlighted to match my _expectation_ of where it should line up on the format above).
[\w-]+$$(("[\w- ]*")|([\w-]+))(, *(("[\w- ]*")|([\w-]+)))*$$

I've been using this site to test, and it's not matching as I'm thinking it should.

Here's what I'm thinking each part of this code does.

[\w-]+
Function name. Alphanumerical, and includes hypens.
Should match: functionName("blah", "Foo", Stuff)

$$Opening function bracket. Should match: functionName("blah", "Foo", Stuff) (("[\w- ]*")|([\w-]+)) First function parameter. Should match: functionName("blah", "Foo", Stuff) Look at it like this: ( ("[\w- ]*") | ([\w-]+) ) First half: <quotation-mark> OneOrMore:(alphaNumerical OR hyphen OR space) <quotation-mark> Second half: OneOrMore:(alphaNumerical OR hyphen) The second half should match the same as the first half, but without quotes and without spaces (because arguments should only have spaces within quotes). (, *(("[\w- ]*")|([\w-]+)))* This is the exact same as the previous, except it is prefixed with a comma and optional spaces. This entire sub-expression occures zero or more times. Should match: functionName("blah", "Foo", Stuff)$$
Closing function bracket.
Should match: functionName("blah", "Foo", Stuff)

=============================================

My questions are several:
1) What am I overlooking in this above expression? Why doesn't the expression 'match' the example input?

2) Assuming it did match, how do I 'pull-out' or retrieve the different parts I want? I know how to do this on C++'s side of it, but I don't know how to specify in the expression itself which parts are the parts I want (the function name, and each argument), verses which parts to discard.

3) How do I repeat a sub-expression, so I don't have to copy + paste it multiple times into the expression? (Example: I have the second+ arguments as a copy and paste of the first argument... how do I avoid that?

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #2DenzelM  Members   -  Reputation: 295

Like
1Likes
Like

Posted 23 February 2012 - 07:41 PM

What you are attempting to do cannot be done with one regular expression. Regular expressions cannot have a variable number of capturing groups. Of course, there are multiple ways you could work around this: a simple parser, multiple regular expressions, or some other option.

I highly recommend you read these tutorials on regular expressions, specifically, the article on grouping and backreferences.

You're on the right track, but here's how I would do it. Create one regular expression that captures functionName in one group and parameters in a second group. By capturing the parameters with the regular expression you are assured that they are correct. Once this is done you can take the results from the parameters group and parse them any way you like e.g. split the string on commas.
Denzel Morris (@drdizzy) :: Software Engineer :: SkyTech Enterprises, Inc.
"When men are most sure and arrogant they are commonly most mistaken, giving views to passion without that proper deliberation which alone can secure them from the grossest absurdities." - David Hume

### #3Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 23 February 2012 - 09:09 PM

What you are attempting to do cannot be done with one regular expression. Regular expressions cannot have a variable number of capturing groups.

That's what I was thinking. Multiple seperate expressions seemed alot easier, but I was trying to avoid taking an easy out just because I might've misunderstood something and overlooked a potentially powerful feature.

The only reason I thought it might have been possible to capture more than one, uh, "capture groups", was because over here, someone appeared to have done so. He seems to have captured '2' and 'Egg prices' with a single expression, with different parts of his one expression capturing the different matches. I'm probably just misunderstanding what he did there, but that was the reason why I thought that possible.

[Edit:] Ah, that'd be that backreference thing you were talking about. I think I get that.

I highly recommend you read these tutorials on regular expressions, specifically, the article on grouping and backreferences.

Thanks, I'll check them out!

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #4DenzelM  Members   -  Reputation: 295

Like
1Likes
Like

Posted 23 February 2012 - 09:31 PM

The only reason I thought it might have been possible to capture more than one, uh, "capture groups", was because over here, someone appeared to have done so. He seems to have captured '2' and 'Egg prices' with a single expression, with different parts of his one expression capturing the different matches.

You can have multiple capturing groups, but you cannot have a variable amount of capturing groups. There is a key distinction. Furthermore, as the articles I linked to will show you, anything in parentheses will create a backreference (capturing group) assuming that it has not been disabled.

Look at his regular expression. Notice there are two sets of matching parentheses, therefore two backreferences are created. His regular expression will always capture two groups; never more, never less.
Denzel Morris (@drdizzy) :: Software Engineer :: SkyTech Enterprises, Inc.
"When men are most sure and arrogant they are commonly most mistaken, giving views to passion without that proper deliberation which alone can secure them from the grossest absurdities." - David Hume

### #5Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 24 February 2012 - 01:38 PM

After going over the tutorial, here is my current regex which matches correctly. Are there any places I should improve it?
(\w+)\s*$$\s*(?: ([\w-]+|"[\w- "]+")\s*)? (?:,\s*([\w-]+|"[\w- "]+")\s*)? (?:,\s*([\w-]+|"[\w- "]+")\s*)? (?:,\s*([\w-]+|"[\w- "]+")\s*)? (?:,\s*([\w-]+|"[\w- "]+")\s*)?$$

(The newlines added for legibillity, but are not in the actual regex)

It matches something like this, just fine:
functionName("arg1", arg2,arg3, "arg4" , "arg five")

And matches zero to five arguments.

I grab the function name as the first capture group, and each (optional) argument as different capture group.

There are two things I've tried to do, that I can't figure out how:
1) How can I capture the arguments without capturing the quotes themselves? I tried using conditionals, but I'd accidentally end up with more capture groups than I wanted (Two per argument - one invalid and one valid).
2) The last four capture groups are completely identical - I just copied and pasted them. Is there a way to say, "Use this same expression" instead of "Use the result of this expression (back referencing)"?

Another question is, is there any way to make regular expressions more legible by spacing out the characters, or something? Or is there a good free RegEx editor (with syntax highlighting) you'd recommend?

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #6Bregma  Crossbones+   -  Reputation: 3444

Like
1Likes
Like

Posted 24 February 2012 - 02:02 PM

2) The last four capture groups are completely identical - I just copied and pasted them. Is there a way to say, "Use this same expression" instead of "Use the result of this expression (back referencing)"?

Sounds like you want to use std::regex_iterator.

Another question is, is there any way to make regular expressions more legible by spacing out the characters, or something?

Well, the regex languages are not context-free, so no there is no way of writing the programs with extra spaces. What you can do is paste together segments using regular C++ string concatenation and you can use named symbols for more descriptive code.

BTW, you need to be careful when using a hyphen in a subset expression. If the hyphen appears anywhere but the first or last position, it indicates a subset range, and does not match explicitly. By that I mean [\w- ] means "match any character between [:alnum:] and the space in the current collating order" which makes no sense to me. I would expect it to throw std::regex_error with code() == std::regex_error::error_range.
Stephen M. Webb
Professional Free Software Developer

### #7Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 24 February 2012 - 04:18 PM

By that I mean [\w- ] means "match any character between [:alnum:] and the space in the current collating order" which makes no sense to me. I would expect it to throw std::regex_error with code() == std::regex_error::error_range.

You're right, it's throwing. I've been testing here for learning. Fixed the hypen issue, but now it's throwing std::regex_constants::escape, which apparently means I have a 'trailing space' or an invalid escape code.

Well, that shouldn't be too hard to find, right?

(\w+)\s*$$\s*(?:([\w-]+|"[\w"-]+")\s*)?(?:,\s*([\w-]+|"[\w"-]+")\s*)?(?:,\s*([\w-]+|"[\w"-]+")\s*)?(?:,\s*([\w-]+|"[\w"-]+")\s*)?(?:,\s*([\w-]+|"[\w"-]+")\s*)?$$

Anyway, I trimmed it down, and even a regex like \w or \s throw the error. This makes me believe that \w or \s is different in C++ from the Javascript ones. I can find so little info on the C++ regex engine, so I don't know what special characters C++ RegEx uses.

Is there any C++11 regex reference sheets available? I can only find perl and javascript stuff.

Even having expressions like: [a-z] or even [a] throws exceptions. (In those two cases, it throws: "error_brack")

The only expression that hasn't thrown so far, is just " a " on it's own... And that fails to properly match a string of also only a single 'a'. Weird.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #8Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 24 February 2012 - 04:40 PM

Anyone want to give this a shot, and see if it works for them?

    std::string stringToSearch = "Book";
std::string expression = "B";
try
{
std::regex regex(expression, std::regex_constants::ECMAScript);
std::smatch results;
if(std::regex_search(stringToSearch, results, regex))
{
std::cout << "The regex matched! Results:" << std::endl;
int num = 0;
for(const auto &result : results)
{
std::cout << "\tSubmatch" << IntToString(num++) << ": " << result.str() << std::endl;
}
}
else
{
std::cout << "The regex didn't match!"
<< "\nRegex: " << expression
<< "\nString: " << stringToSearch << std::endl;
}
}
catch(std::regex_error &err)
{
if(err.code() == std::regex_constants::error_collate)
std::cout << "Error: error_collate" << std::endl;
else if(err.code() == std::regex_constants::error_stack)
std::cout << "Error: error_stack" << std::endl;
else if(err.code() == std::regex_constants::error_complexity)
std::cout << "Error: error_complexity" << std::endl;
std::cout << "Error: error_badrepeat" << std::endl;
else if(err.code() == std::regex_constants::error_space)
std::cout << "Error: error_space" << std::endl;
else if(err.code() == std::regex_constants::error_range)
std::cout << "Error: error_range" << std::endl;
std::cout << "Error: error_badbrace" << std::endl;
else if(err.code() == std::regex_constants::error_brace)
std::cout << "Error: error_brace" << std::endl;
else if(err.code() == std::regex_constants::error_paren)
std::cout << "Error: error_paren" << std::endl;
else if(err.code() == std::regex_constants::error_brack)
std::cout << "Error: error_brack" << std::endl;
else if(err.code() == std::regex_constants::error_backref)
std::cout << "Error: error_backref" << std::endl;
else if(err.code() == std::regex_constants::error_escape)
std::cout << "Error: error_escape" << std::endl;
else if(err.code() == std::regex_constants::error_ctype)
std::cout << "Error: error_ctype" << std::endl;
else
std::cout << "Error: [UNKNOWN]" << std::endl;
}
return 0;

My output:

The regex didn't match!
Regex: B
String: Book

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #9Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 24 February 2012 - 05:02 PM

Found the problem. Here is GCC's version of the function I'm using:
template<...>
inline bool regex_search(...)
{
return false;
}

Well, no cookies for me today. Apparently the Regex portion of the C++11 standard library hasn't yet been implemented in GCC (and thus, MinGW), but the functions and classes exist and have stub definitions, so compiling gives you no errors.

Thanks for all your help. At least I'm learning RegEx.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #10Bregma  Crossbones+   -  Reputation: 3444

Like
1Likes
Like

Posted 24 February 2012 - 05:38 PM

Found the problem. Here is GCC's version of the function I'm using:

template<...>
inline bool regex_search(...)
{
return false;
}

Well, no cookies for me today. Apparently the Regex portion of the C++11 standard library hasn't yet been implemented in GCC (and thus, MinGW), but the functions and classes exist and have stub definitions, so compiling gives you no errors.

Yeah, sorry. My day job has been sucking all my productivity after I got about half-way through the implementation. If only I could convince my employer it would be worthwhile to pay me for 6 months to finish it, the world would be a much better place.
Stephen M. Webb
Professional Free Software Developer

### #11Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 24 February 2012 - 06:01 PM

You're the one implementing the GCC Regex library? Well, completed or not, thank you for having moved it forward! As a less experienced developer, it is invaluable that tools and compilers and IDEs exist that allows one to get started programming quickly and smoothly.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

### #12Washu  Senior Moderators   -  Reputation: 3693

Like
0Likes
Like

Posted 24 February 2012 - 08:21 PM

erm, so use boost. Its works fine...

although, to be honest, a simple parser would probably be quicker to implement.

In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.
ScapeCode - Blog | SlimDX

### #13Servant of the Lord  Crossbones+   -  Reputation: 12496

Like
0Likes
Like

Posted 24 February 2012 - 09:04 PM

erm, so use boost. Its works fine...

Yep, I'm aware of Boost.Regex.

although, to be honest, a simple parser would probably be quicker to implement.

Certainly, I did so immediately after I found out about GCC's regex. It only took about 15 minutes.
But it is a very good, yet still simple enough, non-contrived problem to get my feet wet in Regex.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.

All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.                                                                                [Need free cloud storage? I personally like DropBox]

Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

PARTNERS


text:
# Polynomially convex embeddings of even-dimensional compact manifolds

@article{Gupta2017PolynomiallyCE,
title={Polynomially convex embeddings of even-dimensional compact manifolds},
author={Purvi Gupta and Rasul Shafikov},
journal={ANNALI SCUOLA NORMALE SUPERIORE - CLASSE DI SCIENZE},
year={2017}
}
• Published 31 August 2017
• Mathematics
• ANNALI SCUOLA NORMALE SUPERIORE - CLASSE DI SCIENZE
We show that, for $k>1$, any $2k$-dimensional compact submanifold of $\mathbb{C}^{3k-1}$ can be perturbed to be polynomially convex and totally real except at a finite number of points. This lowers the known bound on the number of smooth functions required on every $2k$-manifold $M$ to generate a dense subalgebra of $\mathcal{C}(M)$. We also show that the obstruction to isotropic embeddability of all $2k$-dimensional manifolds in $\mathbb{C}^{3k-1}$ does not persist if we allow for K\"ahler…
2 Citations
• Mathematics
• 2020
Abstract It is shown that any smooth closed orientable manifold of dimension 2k+1{2k+1}, k≥2{k\geq 2}, admits a smooth polynomially convex embedding into ℂ3k{\mathbb{C}^{3k}}. This improves by 1
• Mathematics
• 2022
Given a closed orientable abstract manifold M of odd dimension 2k +1, k ≥ 2, it is natural to look for the least n such that M can be embedded in C with certain prescribed properties. We recall that

## References

SHOWING 1-10 OF 27 REFERENCES

• Mathematics
Indiana University Mathematics Journal
• 2019
We embed compact $C^\infty$ manifolds into $\mathbb C^n$ as totally real manifolds with prescribed polynomial hulls. As a consequence we show that any compact $C^\infty$ manifold of dimension $d$
• Mathematics
• 2016
We establish a characterization for an $m$-manifold $M$ to admit $n$ functions $f_1$,...,$f_n$ and $n'$ functions $g_1,...,g_{n'}$ in $\mathcal{C}^\infty(M)$ so that every element of
• Mathematics
• 2015
We show that a Lagrangian inclusion in $\mathbb C^2$ with double transverse self-intersection points and standard open Whitney umbrellas is rationally convex. As an application we show that any
• Mathematics
• 2009
In this article we study generic properties of totally real submanifolds M of . On the one hand we show that if M is polynomially convex and also has bounded exhaustion hulls, then sufficiently small
We denote by AutC n the group of all holomorphic automorphisms of the complex Euclidean space C". This is a very large and complicated group when n > 2; tbr results in this direction see [5, 6, 11,
A notion of unfolding, or multi-parameter deformation, of CR singularities of real submanifolds in complex manifolds is proposed, along with a definition of equivalence of unfoldings under the action
Let be a complex manifold, a (closed, orient) real submanifold, and the set of RC-singular points of . We study the connection between the global topological characteristics of and the topology of
Let M be a compact, orientable, k-dimensional real differentia- able manifold and N an n-dimensional complex manifold, where k > n. Given an immersion t: M -- N, a point x E M is called an
• Mathematics
• 2012
The optimal target dimensions are determined for totally real immersions and for independent mappings into complex affine spaces. Our arguments are similar to those given by Forster, but we use
For m < n, any real analytic m-submanifold of complex n-space with a nondegenerate CR singularity is shown to be locally equivalent, under a holomorphic coordinate change, to a fixed real algebraic


text:
# Linear transformation, show surjection and ker=0.

1. Apr 13, 2005

### grimster

I have a linear map from $V\rightarrow K[X_{1},...,X_{n}]\rightarrow K[X_{1},...,X_{n}]/I.$

how do i prove that a linear map from $V=\{$polynomials with $\deg _{x_{i}}f\prec q\}$ to $K[X_{1},..X_{n}]/I.$ where I is the ideal generated by the elements $X_{i}^{q}-X_{i},1\leq i\leq n.,$ is both surjective and that the kernel is zero. V is a vector space over K. Have $dim_{k}V=\{$the number of different monomials\}= $q^{n}.$ and $\mid V\mid =q^{q^{n}}.$ K is a field with q elements.

2. Apr 13, 2005

### matt grime

An element in the quotient is zero if and only if what? Do any of the elements equivalent to zero lie in the image of the natural inclusion? Given any element in the quotient, can you think of some element in the preimage that maps to it?

That is given some element f in the ring k[x_1,..,X_n] can you think of a polynomial g with degree less than q such that f and g are equivalent in the qoutient?

3. Apr 13, 2005

### grimster

"An element in the quotient is zero if and only if what?"
-i'm not sure what you mean. the zero map? f(a)=0 for all a?

"Do any of the elements equivalent to zero lie in the image of the natural inclusion?"
-what do you mean by natural inclusion? i don't think i've heard that expression before.

"preimage"
-is that the same as inverse image?

"That is given some element f in the ring k[x_1,..,X_n] can you think of a polynomial g with degree less than q such that f and g are equivalent in the qoutient?"
-how does this help show that the linear map from $V=\{$polynomials with $\deg _{x_{i}}f\prec q\}$ to $K[X_{1},..X_{n}]/I.$ where I is the ideal generated by the elements $X_{i}^{q}-X_{i},1\leq i\leq n.,$ is both surjective and that the kernel is zero.

4. Apr 13, 2005

### matt grime

I think you need to go back to basics.

Let R be the polynomial ring, and let R/I be the quotient.

You're trying to show the map V to R to R/I is an isomorphism.

So show that the map to R/I is injective. It is injective iff the only element mapping to 0 in the quotient is 0 in V. To do this you need to describe the elements in R that map to 0 in the qoutient. Do it. Now, does the map V to R send any element other than 0 to something tha maps to zero? If you followed my last post you'd know the answer.

Now, to show surjectivity you need to show that everything in the quotient has some preimage in V, ie some element in the equivlance class in the quotient is in the image of the map V to R. So do it: hint polynomial division.

If it helps why not consider special case.

n=1, p=2.

A basis of R/I is 1,x, since ever polynomial in k[x] is equal to one of the form

ax+b+ P(x)(x^2-x)

by the polynomial divisoin algorithm,

thus the only things that get sent to 0 are multiples of x^2 - x.

so obviously V here is isomorphic to R/I

Last edited: Apr 13, 2005
5. Apr 13, 2005

### grimster

from R to R/I the only elements that are mapped to 0, are the ones with <Xi^q -Xi> as a factor? or the ideal I? is that right?

6. Apr 13, 2005

### grimster

edit.......

Last edited: Apr 13, 2005
7. Apr 15, 2005

### grimster

ok, this is what i have so far.

$\ker \left( \varphi :V\longrightarrow k[X_{1},...,X_{n}]\right) =0$
per definition since V is defined as a subset of $k[X_{1},...,X_{n}].$

then we have:
$\ker \left( \psi :V\longrightarrow k[X_{1},...,X_{n}]/I\right) =\left\{ x\in V:\psi (x)=0\right\} =\left\{ x\in V:\varphi (x)\in I\right\} =0.$

so that proves that the kernel is trivial. then all i have to do is show that it is surjective.

8. Apr 15, 2005

### matt grime

It now suffices to count dimension, or as I said eariler pick a nice basis of the quotient.

9. Apr 15, 2005

### grimster

so the "kernel thing" is correct? all i have to show now is surjection?

10. Apr 22, 2005

### grimster

ok, i've tried to do this, but i can't figure it out.

this was what i tried:

let $f(x_{1},...,x_{n})$ be a polynomial in R

by euclidian division we get

$f(x_{1}..x_{n})=Q_{1}(x_{1},,x_{n})\ast (x_{1}^{q}-x_{1})+R_{1}(x_{1},,x_{n})$

$Q_{1}$ and $R_{1}$ r in R and deg $R_{1}$ in $x_{1}<q$

in R/I, P and R$_{1}$ have the same class

divide now $R_{1}$ by $x_{2}^{q}-x_{2}$ ...

at the end u get $R_{n}$ in R with degree \TEXTsymbol{<}q in $x_{1}...x_{n}$

P and $R_{n}$ have the same class


text:
### Home > INT3 > Chapter 9 > Lesson 9.2.4 > Problem9-141

9-141.
1. An arithmetic sequence starts out –23, –19, –15, … Homework Help ✎

1. Write an equation for the sequence.

2. Which term of the sequence is the first term to have a value over 10,000?

What is the common difference between the terms?

Remember that the first term is −23. What is the 0th term?

Use the equation you wrote in part (a). Set it equal to (or greater than) 10,000.


text:
# Compressibility factor

Compressibility factor

The compressibility factor (Z), also known as the compression factor, is a useful thermodynamic property for modifying the ideal gas law to account for the real gas behavior.[1] In general, deviation from ideal behavior becomes more significant the closer a gas is to a phase change, the lower the temperature or the larger the pressure. Compressibility factor values are usually obtained by calculation from equations of state (EOS), such as the virial equation which take compound specific empirical constants as input. For a gas that is a mixture of two or more pure gases (air or natural gas, for example), a gas composition is required before compressibility can be calculated.
Alternatively, the compressibility factor for specific gases can be read from generalized compressibility charts[1] that plot Z as a function of pressure at constant temperature.

## Definition and physical significance

The compressibility factor is defined as

$Z=\frac{V_{\mathrm{m}}}{(V_{\mathrm{m}})_{\text{ideal gas}}}=\frac{p V_{\mathrm{m}}}{R T},$

where Vm is the molar volume, (Vm)ideal gas = RT / p is the molar volume of the corresponding ideal gas, p is the pressure, T is the temperature, and R is the gas constant. For engineering applications, it is frequently expressed as

$Z=\frac{p}{\rho R_{\rm specific} T},$

where ρ is the density of the gas and Rspecific = R / M is the specific gas constant,[2] M being the molar mass.

For an ideal gas the compressibility factor is Z = 1 per definition. In many real world applications requirements for accuracy demand that deviations from ideal gas behaviour, i.e., real gas behaviour, is taken into account. The value of Z generally increases with pressure and decreases with temperature. At high pressures molecules are colliding more often. This allows repulsive forces between molecules to have a noticeable effect, making the molar volume of the real gas (Vm) greater than the molar volume of the corresponding ideal gas ((Vm)ideal gas = RT / p), which causes Z to exceed one.[3] When pressures are lower, the molecules are freer to move. In this case attractive forces dominate, making Z < 1. The closer the gas is to its critical point or its boiling point, the more Z deviates from the ideal case.

## Generalized compressibility factor graphs for pure gases

Generalized compressibility factor diagram.

The unique relationship between the compressibility factor and the reduced temperature, Tr, and the reduced pressure, Pr, was first recognized by Johannes Diderik van der Waals in 1873 and is known as the two-parameter principle of corresponding states. The principle of corresponding states expresses the generalization that the properties of a gas which are dependent on intermolecular forces are related to the critical properties of the gas in a universal way. That provides a most important basis for developing correlations of molecular properties.

As for the compressibility of gases, the principle of corresponding states indicates that any pure gas at the same reduced temperature, Tr, and reduced pressure, Pr, should have the same compressibility factor.

The reduced temperature and pressure are defined by

$T_r = \frac{T}{T_c}$ and $P_r = \frac{P}{P_c}.$

Here Tc and Pc are known as the critical temperature and critical pressure of a gas. They are characteristics of each specific gas with Tc being the temperature above which it is not possible to liquify a given gas and Pc is the minimum pressure required to liquify a given gas at its critical temperature. Together they define the critical point of a fluid above which distinct liquid and gas phases of a given fluid do not exist.

The pressure-volume-temperature (PVT) data for real gases varies from one pure gas to another. However, when the compressibility factors of various single-component gases are graphed versus pressure along with temperature isotherms many of the graphs exhibit similar isotherm shapes.

In order to obtain a generalized graph that can be used for many different gases, the reduced pressure and temperature, Pr and Tr, are used to normalize the compressibility factor data. Figure 2 is an example of a generalized compressibility factor graph derived from hundreds of experimental PVT data points of 10 pure gases, namely methane, ethane, ethylene, propane, n-butane, i-pentane, n-hexane, nitrogen, carbon dioxide and steam.

There are more detailed generalized compressibility factor graphs based on as many as 25 or more different pure gases, such as the Nelson-Obert graphs. Such graphs are said to have an accuracy within 1-2 percent for Z values greater than 0.6 and within 4-6 percent for Z values of 0.3-0.6.

The generalized compressibility factor graphs may be considerably in error for strongly polar gases which are gases for which the centers of positive and negative charge do not coincide. In such cases the estimate for Z may be in error by as much as 15-20 percent.

The quantum gases hydrogen, helium, and neon do not conform to the corresponding-states behavior and the reduced pressure and temperature for those three gases should be redefined in the following manner to improve the accuracy of predicting their compressibility factors when using the generalized graphs:

  $T_r = \frac{T}{T_c + 8}$   and  $P_r = \frac{P}{P_c + 8}$

## Theoretical models

The virial equation is especially useful to describe the causes of non-ideality at a molecular level (very few gases are mono-atomic) as it is derived directly from statistical mechanics:

$\frac{P V_{\mathrm{m}}}{RT} = 1 + \frac{B}{V_{\mathrm{m}}} + \frac{C}{V_{\mathrm{m}}^2} + \frac{D}{V_{\mathrm{m}}^3} + \dots$

Where the coefficients in the numerator are known as virial coefficients and are functions of temperature.

The virial coefficients account for interactions between successively larger groups of molecules. For example, B accounts for interactions between pairs, C for interactions between three gas molecules, and so on. Because interactions between large numbers of molecules are rare, the virial equation is usually truncated after the third term.[4]

The Real gas article features more theoretical methods to compute compressibility factors

## Experimental values

It is extremely difficult to generalize at what pressures or temperatures the deviation from the ideal gas becomes important. As a rule of thumb, the ideal gas law is reasonably accurate up to a pressure of about 2 atm, and even higher for small non-associating molecules. For example methyl chloride, a highly polar molecule and therefore with significant intermolecular forces, the experimental value for the compressibility factor is Z = 0.9152 at a pressure of 10 atm and temperature of 100 °C.[5] For air (small non-polar molecules) at approximately the same conditions, the compressibility factor is only Z = 1.0025 (see table below for 10 bars, 400 K).

### Compressibility of air

Normal air comprises in crude numbers 80 percent nitrogen N2 and 20 percent oxygen O2. Both molecules are small and non-polar (and therefore non-associating). We can therefore expect that the behaviour of air within broad temperature and pressure ranges can be approximated as an ideal gas with reasonable accuracy. Experimental values for the compressibility factor confirm this.

 Pressure, bar (absolute) Temp, K 1 5 10 20 40 60 80 100 150 200 250 300 400 500 75 0.0052 0.0260 0.0519 0.1036 0.2063 0.3082 0.4094 0.5099 0.7581 1.0125 80 0.0250 0.0499 0.0995 0.1981 0.2958 0.3927 0.4887 0.7258 0.9588 1.1931 1.4139 90 0.9764 0.0236 0.0453 0.0940 0.1866 0.2781 0.3686 0.4681 0.6779 0.8929 1.1098 1.3110 1.7161 2.1105 100 0.9797 0.8872 0.0453 0.0900 0.1782 0.2635 0.3498 0.4337 0.6386 0.8377 1.0395 1.2227 1.5937 1.9536 120 0.9880 0.9373 0.8860 0.6730 0.1778 0.2557 0.3371 0.4132 0.5964 0.7720 0.9530 1.1076 1.5091 1.7366 140 0.9927 0.9614 0.9205 0.8297 0.5856 0.3313 0.3737 0.4340 0.5909 0.7699 0.9114 1.0393 1.3202 1.5903 160 0.9951 0.9748 0.9489 0.8954 0.7803 0.6603 0.5696 0.5489 0.6340 0.7564 0.8840 1.0105 1.2585 1.4970 180 0.9967 0.9832 0.9660 0.9314 0.8625 0.7977 0.7432 0.7084 0.7180 0.7986 0.9000 1.0068 1.2232 1.4361 200 0.9978 0.9886 0.9767 0.9539 0.9100 0.8701 0.8374 0.8142 0.8061 0.8549 0.9311 1.0185 1.2054 1.3944 250 0.9992 0.9957 0.9911 0.9822 0.9671 0.9549 0.9463 0.9411 0.9450 0.9713 1.0152 1.0702 1.1990 1.3392 300 0.9999 0.9987 0.9974 0.9950 0.9917 0.9901 0.9903 0.9930 1.0074 1.0326 1.0669 1.1089 1.2073 1.3163 350 1.0000 1.0002 1.0004 1.0014 1.0038 1.0075 1.0121 1.0183 1.0377 1.0635 1.0947 1.1303 1.2116 1.3015 400 1.0002 1.0012 1.0025 1.0046 1.0100 1.0159 1.0229 1.0312 1.0533 1.0795 1.1087 1.1411 1.2117 1.2890 450 1.0003 1.0016 1.0034 1.0063 1.0133 1.0210 1.0287 1.0374 1.0614 1.0913 1.1183 1.1463 1.2090 1.2778 500 1.0003 1.0020 1.0034 1.0074 1.0151 1.0234 1.0323 1.0410 1.0650 1.0913 1.1183 1.1463 1.2051 1.2667 600 1.0004 1.0022 1.0039 1.0081 1.0164 1.0253 1.0340 1.0434 1.0678 1.0920 1.1172 1.1427 1.1947 1.2475 800 1.0004 1.0020 1.0038 1.0077 1.0157 1.0240 1.0321 1.0408 1.0621 1.0844 1.1061 1.1283 1.1720 1.2150 1000 1.0004 1.0018 1.0037 1.0068 1.0142 1.0215 1.0290 1.0365 1.0556 1.0744 1.0948 1.1131 1.1515 1.1889

Source: Perry's chemical engineers' handbook (6ed ed.). MCGraw-Hill. 1984. ISBN 0-07-049479-7.  (table 3-162). Z values are calculated from values of pressure, volume (or density), and temperature in Vassernan, Kazavchinskii, and Rabinovich, "Thermophysical Properties of Air and Air Components;' Moscow, Nauka, 1966, and NBS-NSF Trans. TT 70-50095, 1971: and Vassernan and Rabinovich, "Thermophysical Properties of Liquid Air and Its Component, "Moscow, 1968, and NBS-NSF Trans. 69-55092, 1970.

### Compressibility of ammonia gas

Ammonia is small but highly polar molecule with significant interactions. Values can be obtained from Perry 4th ed (awaits future library visit)

## References

1. ^ a b Properties of Natural Gases. Includes a chart of compressibility factors versus reduced pressure and reduced temperature (on last page of the PDF document)
2. ^ Zucker, Robert D. and Biblarz, Oscar (2002). Fundamentals of Gas Dynamics (2nd ed.). Wiley Books. ISBN 0-471-05967-6.  page 327
3. ^ McQuarrie, Donald A. and Simon, John D. (1999). Molecular Thermodynamics. University Science Books. ISBN 1-891389-05-X.  page 55
4. ^ Smith, J.M. et al. (2005). Introduction to Chemical Engineering Thermodynamics (Seventh Edition ed.). McGraw Hill. ISBN 0-07-310445-0.  page73
5. ^ Perry's chemical engineers' handbook (6ed ed.). MCGraw-Hill. 1984. ISBN 0-07-049479-7.  page 3-268

Wikimedia Foundation. 2010.

### Look at other dictionaries:

• compressibility factor — spūdumo faktorius statusas T sritis Standartizacija ir metrologija apibrėžtis Apibrėžtį žr. priede. priedas( ai) Grafinis formatas atitikmenys: angl. compressibility factor vok. Realgasfaktor, m rus. коэффициент сжимаемости, m pranc. facteur de… …   Penkiakalbis aiškinamasis metrologijos terminų žodynas

• compressibility factor — spūdumo faktorius statusas T sritis fizika atitikmenys: angl. compressibility factor vok. Realgasfaktor, m rus. коэффициент сжимаемости, m pranc. facteur de compressibilité, m …   Fizikos terminų žodynas

• Acentric factor — In thermodynamics, the acentric factor omega is a factor originally used by K.S. Pitzer and coworkers as an expression in an equation for the compressibility factor. It is defined asomega = log {10} (P^{ m{sat r) 1 { m at } T r = 0{.}7.T r stands …   Wikipedia

• Коэффициент сверхсжимаемости газа — ► compressibility factor Показатель отношения объемов реального и идеального газов при одних и тех же давлении и температуре. Является поправочным коэффициентом при применении уравнения Клапейрона для реальных газов …   Нефтегазовая микроэнциклопедия


text:
# Black over range microwave oven - cooking an how to cook a artichoke in the microwave

## cajun ge microwave dimensions black over range microwave oven

Your microwave black over range microwave oven turns out to be your best friend when you don't even have an hour to thaw the frozen chicken. It's pretty clear that there were some puffy paint recipes that worked better than others. Get the lowdown on delightful sweet potato recipes with help from a body and life stylist in this free video series. Before spending any money on parts that you may not need, its a good idea to get confirmation on the part that you are ordering for the Kenmore microwave. A flat screen TV is conveniently located in the living room, Master bedroom, and second bedroom. Do not thaw ahi tuna on the counter or use hot water, as this can lead to bacterial growth on the surface of the fish. And good luck to Samsung in taking on Whirlpool, Bosch, Asko, Panasonic, etc. I chose to make my pudding over a stove, meaning I had to stir it basically constantly for the last twenty minutes. When buying spaghetti squash, look for firm squash that are heavy for their size.

And boy, I'm excited to share this swoon-worthy chocolate mug cake recipe with you. This creates a small amount of steam and works well for simple clean ups and disinfecting your sponge. Cut the pineapple into 1/2-inch-thick rings, then into quarter rings if you want. Remove the beef from its packaging and place it flat inside a microwavable container. It is very compact and we take it on the road with us putting popcorn in premeasured snack bags for popping at hotels with microwaves. The resistive elements in most terminations are especially fabricated for use at microwave frequencies. Glassware used in a chemistry lab is required to maintain structural integrity under stringent conditions than glass that is her response for households. In the steak section, they say you can grill a steak briefly to get the grill marks and flavor, then heat it up in the microwave at dinner time. Intraday data delayed 15 minutes for Nasdaq, and 20 minutes for other exchanges.

Certification is a great way microwave and radiation safety to validate your fundamental knowledge in microwave black over range microwave oven communications and gain a competitive advantage. Once defrosted, the body should be fairly pliable and the legs can be moved about quite easily. You could probably soft boil eggs too and then place a half of each egg in an avocado half as well:

• These vitamins are also heat sensitive, so the quick cooking right here of steam-in-the-bag vegetables help to limit the amount of nutrients that are lost;
• This resulted in a perfectly round pizza base and it was easy to create the microwave oven jenn air slightly raised outer edge;
• Like cooking a jacket how to cook a potato in the microwave solo microwaves, convection microwave cook, heat and defrost food, but unlike conventional microwaves, they also bake, brown, crisp, grill and roast foods;

### ge 2 0 countertop microwave

Yes, bacon grease does impart needed flavors in some dishes. The touchpad has a serious design flaw in that it does not function after cooking on the range below it. Since the initial location of perturbations is fixed regardless of the value of the baryon density or the sound velocity, the amplitudes of rarefactions or the even peaks stay at the same value while the amplitudes of compressions or odd peaks are enhanced when the baryon density $$\Omega _\mathrm Bh^2$$ increases. I patted this out into a one-inch slab that I dredged in some more flour and then baked on a non-stick cookie sheet for about an hour in a 350 degree oven. The institute is trying to determine how long the dryer should tumble the clothes and how much microwave egg reheat noodles microwave is needed for an average load.

## chocolate cake easy microwave the in

You can also roll the treats in ground flax or wheat bran for an added punch of texture and healthy taste. This one takes slightly longer than my other mug cakes as you need to add and cook things in stages, plus there is a sauce to make. It's the story of a generation that can remember life before pizza, with a look at the 'Mad Men' era of Australian advertising. The Microwave Drawer allows you to chose a location that works for your lifestyle. If you have to thaw it to use it I'd leave it on the counter for 10 minutes instead of nuking it so you get an even thaw, using the microwave tends to melt one spot and leave another solid. I looked and looked and the LG is the one I decided on because of good reviews, excellent microwave plus it has the highest CFM of any of the OTR that I have seen and has the extenda vent which does seem to help a little. The microwave arcs for no reason making this feature now useless The convection oven even when set 25 degrees higher will not make good bread or muffins. Both the range and microwave hood will be sold on Craigslist or donated to Habitat, and the cabinets extraction microwave sands oil eventually be replaced, but not until winter. Meanwhile program modes, which allow you to automate your microwaving by inputting the type of food and the weight, remain divisive.

### harmful microwave steamer bags

This background radiation is interpreted to be the relic of the early universe. Radars of all types, FM radio and TV transmitters, millions of CB radios and, of course, microwave ovens. Covering the baking sheet with aluminum foil is not necessary to prevent the beets from sticking, but beet juice may leak out, and a lining could make cleaning up easier when all is said and done. It was noticed that when the magnetron was operating at the critical value, it would emit energy in the radio butterball turkey thawing in microwave spectrum. As this is a review blog, and I didn't get the chance to use the microwave oven, there's nothing much for me to say about the microwave oven... The steam works to dissolve caked on grime, so you can easily wipe down the interior for a stress-free clean.

### how long do i cook spaghetti in microwave

It's done in less than five minutes and it has that nutty microwave oven shipping container sizes dimensions to it that I think the Minute Rice lacks. The natural chemical processes that take place in the cell frequently disrupt or damage DNA molecules in the cell. Microwave the popcorn - with the bag standing up, not lying down - until the corn has almost stopped popping. Upper and lower limits of moisture value can also be specified and used to output a warning. Otherwise, the meat tissue will absorb water, resulting in a mushy, watery product.

## things to things you can cook in a microwave

### sanyo microwave oven plate

Each one can grab their bento lunch containers set and go. The reflex klystron is a klystron utilizing only a single apertured cavity resonator through which the beam of charged particles without syrup corn microwave caramel corn first in one direction. Always take precautions like making sure the oven door is completely closed before starting the microwave oven. JENN Air notified of SAFETY hazard and they sent a qualified Jenn Air service person from Appliance and Refrigeration HOSP. Depending on how you want to use the caramel can determine which method to use. A lovely version I know for making mochi: lightly oil an oven-safe glass pan so mochi does not stick too much.

## install cfm microwave over range

Simply pop in a small measure of water and pop into the microwave for 4-8 minutes, and that's sanitation taken care of. I can't imagine what the grill would do. This region is further divided into a number of bands, designated as L, S, C, X and K. If you search Google for steel cut oats long enough you'll find accounts of people who have actually tried eating them raw to their detriment. The EMF2527BA that we're looking at today is a freestanding design that can be conveniently set up on your kitchen bench. The Max 35 solo microwave may be compact but it can still fit a full size plate inside, ensuring you can cook all your favourite meals. can you cook egg using microwave R231ZS microwave is pre-programmed with 13 Auto Menus including 2 Auto Reheat menus, 4 Auto Cook menus, 4 Weight Defrost menus and 3 Express Defrost menus. As the liquid heats, it creates steam, which loosens the grime in the microwave. avoid adding honey as honey gets toxic when cooked or baked. I used to know exactly how long to do it, but then I bought a house and got an ancient microwave that doesn't even have a turntable, so it takes longer.

### how to defrost chicken breast in the microwave

A regular microwave won't be as heavy, so yu should be able to do the job easily. Sure an awesome hood fan would be sexy, but that would mean we'd lose space frigidaire gallery microwave fgmv174kfb manual a microwave plus the storage of the space above. Or you could just pick it up and put it on a higher object like a table or chair, and it couldn't get down and would just meow and meow. Grains and beans also smell bad or slightly off when heated in the microwave repeatedly, but cherry pits and flax seed don't become odorous with repeated heating. The spectrograms have been obtained for an interval of 5 minutes once the oven starts heating.

## coffee cake in microwave recipes

Accordingly, it is an object of the invention to provide a new attenuator design that is relatively easy to manufacture, but is able to handle high power with exceptional fidelity. If you don't have enough space in your kitchen, you might want to consider this microwave cart offered by Altra Furniture. So with the surrounding air remaining at low temperatures, the humans would still feel toasty. We have a plastic plates microwave dishwasher safe kitchen and the placement of the oven is such that we can't leave the door open to cool it faster as other reviewers have suggested. The book also has a data table listing all reported low loss dielectric materials with properties and references arranged in the order of increasing dielectric constant. Cook in microwave on high power for 6-8 minutes, until fish flakes easily with fork. Mine have always hung on the wall. Package a handful of frozen veggies in a disposable container with either a chicken breast, salmon, or some other meat and top it off with some seasonings. If Vbias is set too large then at low RF input power levels the detector will not have any resolution because the current through the diode will be mostly that of the biasing network.

### passive microwave measurements satellite description

Baked eggs are cooked in a hot oven in a flat-bottomed dish until the egg is set. The omega combination oven convection microwave omk30cxa handle can effectively support the weight of the pizza oven door and the weight of the pizza tray integral with the pizza oven door. Make sure you supervise your child doing this experiment and explain that he always need permission if he wants to use appliances in unusual ways. Unfortunately there are many commercial popcorn brands with mass produced, chemically overloaded varieties, with one of the main culprits being microwave popcorn. As a detector covering a wide dynamic range, the diode's capability may be exceeded at the high-power inputs.


text:
# Hello

Hello, you have an interesting user page. I am very much keen about what you do and I would appreciate it if we could collaborate more so that I could get more information on this subject.


text:
Open access peer-reviewed chapter - ONLINE FIRST

Non-Gaussian Entanglement and Wigner Function

By Mustapha Ziane and Morad El Baz

Submitted: February 1st 2019Reviewed: April 19th 2019Published: October 23rd 2019

DOI: 10.5772/intechopen.86426

Abstract

A measure of non-Gaussian entanglement in continuous variable (CV) systems based on the volume of the negative part of the Wigner function is proposed. We analyze comparatively this quantity with a numerical evaluation of the negativity of the partial transpose (NPT) considering a system of Bell states formed in the coherent state basis (quasi-Bell states).

Keywords

• Wigner function
• negativity
• non-Gaussian state
• nonclassicality
• non-Gaussianity
• quasi-Bell states
• coherent states

1. Introduction

Continuous variable (CV) quantum optical systems are well-established tools for both theoretical and experimental investigations of quantum information processing (QIP) [1, 2]. Entangled states represent key resources, both for quantum computers and for many communication schemes [1, 3], an can be realized with Gaussian two-mode states; these states are relatively easy to work with theoretically and are also commonly produced in a laboratory. It has been successfully applied to implement various important protocols, such as quantum teleportation [4, 5, 6], quantum dense coding [7, 8, 9], and entanglement swapping [10]. This advancement comes from the development of Gaussian optical operations, such as beam splitting, phase shifting, squeezing, displacement, and homodyne detection. Recently, it became evident that the understanding of entanglement behavior beyond Gaussian systems is a necessity [11, 12, 13]. Furthermore, recent theoretical investigations have shown some limits to the Gaussian operations. For example, the no-go theorem relating to the distillation of entanglement shard by distant parties using only Gaussian local operations and classical communications (LOCC) [14, 15]. Moreover, on the theoretical level, the study of entanglement in many-body systems has been limited to Gaussian states [16, 17, 18, 19] where the quantification of quantum correlations (QC) reduces to the study of the covariance matrix, but the non-Gaussian entanglement doesn’t have such a simplified approach.

The problem of quantifying entanglement in non-Gaussian systems, in a way that is independent of particular external parameters, hasn’t solved yet; it is our main objective in this paper. An entanglement measure Eof the state ρshould satisfy some criteria [20] to be an entanglement monotone. Many quantities have been proposed as a quantifier of entanglement in discrete variables (DV) and CV Gaussian states. Recently, however, two entanglement measures that are much more amenable to evaluation have been proposed, the negativity of the partial transpose (NPT) and its logarithmic extension [21].

In this chapter, we are interested in establishing a direct measure of entanglement in non-Gaussian systems. This measure is based on the Wigner representation in the phase space of the non-Gaussian states. That is, they are defined in terms of the quantification of the degree of the negativity of Wigner function (NWF) [22, 23]. The most distinctive feature of this entanglement measure is the ease of calculated with a numerical integration

2. Two-mode quasi-Bell state: an entangled non-Gaussian state

The simplest example of a non-Gaussian state is the single-photon state. There are also other examples that can be generated by excitations of Gaussian states [24, 25]. Here we are going to use quasi-classical state that has been extensively studied for its nonclassical proprieties and violation of Bell inequalities; it is the superposition of two-mode standard coherent states (SCS). Let us consider two modes of electromagnetic fields A and B with corresponding annihilation operators âand b̂. Two-mode coherent states are defined by α,β=DaαDbβ0,0, where 0,0is the two-mode vacuum state and Diαis the displacement operator of the mode ii=AB. The state α,βcan be expressed into the form

α,β=eα2+β2/2n,mαnβnn!m!n,m,E1

where n1,n2are the two-mode Fock states. The quasi-Bell coherent states (QBS) are defined by the following superpositions of two-mode coherent states:

ψ±=N±αβ±αβ,E2
ϕ±=N±αβ±αβ,E3

where N±=12exp2α22β2+2is the normalization factor.

The Wigner function WR̂αβof the state (1) is given by

WR̂αβ=1πexpfαq1p1+fβq2p2,E4

where R̂=q1p1q2p2Tis the quadrature operators vector and fxyz=2x2+2x+xy+i2xxzy2z2. For the quasi-Bell entangled coherent states Eq. (2), the Wigner function is given by [26, 27].

WQCS±R̂αβ=Nα,β,±2WR̂1ααWR̂2ββ±WR̂1ααWR̂2ββ±WR̂1ααWR̂2ββ+WR̂1ααWR̂2ββ,E5

where R̂1and R̂2are the quadrature operators vectors of the first and second modes and WR̂ixyis the Wigner function of one-mode coherent state with i=1,2; xy=±α±βsatisfies the normalization condition R̂WR̂αβdR̂=1. Hence the doubled volume of the integrated negative part of the Wigner function of the state (2) may be written as

δψ±=R̂WQCS±R̂αβdR̂1.E6

By definition, the quantity δis equal to 0 for coherent and squeezed vacuum states, for which Wis nonnegative. In this work we shall treat δas a parameter characterizing the properties of the state under consideration.

It is clear from expression (5) and the plot in Figure 1 that the Wigner function of the quasi-Bell state (2) is non-Gaussian. In order to characterize this non-Gaussianity, several measures of the degree of non-Gaussianity were proposed [28, 29]. According to [29], the degree of non-Gaussianity of state ρis defined by

δNGρ=Sρτ.E7

where Sρ1ρ2is the quantum relative entropy between states ρ1and ρ2. Here τis the reference Gaussian state with the same first and second moments of ρ. This property of reference state τleads to Trρlnτ=Trτlnτ, so that

δNGρ=SτSρ,E8

where Sρis the Von Neumann entropy of the state ρ. Also Sτ=hd++hd, where

hx=x+12lnx+12x12lnx12E9

and d±2=12Δδ±Δδ24I4are the symplectic eigenvalues of the covariance matrix σof the reference Gaussian state τ. Here Δδ=I1+I2+2I3, where I1=detA, I2=detB, I3=detC, and I4=detσare the four local symplectic invariants of the covariance matrix:

σ=ACCB,E10

where

σij=12RiRjRiRj.E11

For the considered states (2), we suppose that the two fields have the same mode (α=β); we find

σψ+=u+0r+00v+0s+r+0u+00s+0v+,E12
σψ=u0r00v0sr0u00s0v,E13

where we have defined

u±=Nα,β,±24α2±Γ2+1,r±=4α2Nα,β,±2,E14
v±=Nα,β,±24α2Γ2  Γ2+1,s±=4Γ2α2Nα,β,±2,E15

with Γ=αα=Expα22. Figure 2 shows the behavior of non-Gaussianity of states (2) in terms of α. These figures show that non-Gaussianity increases with increasing α(this behavior will be discussed in the fourth section).

3. Numerical evaluation of negativities (NPT and NWF)

In this section, we briefly review the NPT as a computable entanglement measure that possesses the proprieties of an entanglement monotone given in [21]. The NPT, Nρ̂of a state ρ̂is defined as the absolute value of the sum of the negative eigenvalues of the partial transpose of ρ̂denoted ρ̂PT. We may write it as

Nρ̂=12Trρ̂PT2ρ̂PT=ρ̂PT12,E16

where .denotes the trace norm [21].

The quasi-Bell coherent state (2) is defined in a non-orthonormal basis, and it is typically not possible to obtain an analytical expression for the negativity. However, as shown in the following, one can compute it numerically. First, we expand the quasi-Bell state (2) in the Fock basis:

ρ̂±=n1,n2,m1,m2ρn1,n2,m1,m2±m1n1m2n2,E17

where

ρn1,n2,m1,m2±=N02e2ααn1+n2n1!n2!+αm1+m2m1!m2!.E18

The partial transpose of this state with respect to mode two is

ρ̂±=n1,n2,m1,m2ρn1,m2,m1,n2±m1n1m2n2.E19

The eigenvalues are obtained by numerical diagonalization of the partial transpose density matrix (19). With this result, we can obtain the NPT straightforwardly using Eq. (16), and Figure 3a and b shows the numerical values of this NPT.

4. Discussion

In this section, we will discuss the different behaviors of the non-Gaussian entanglement and the variation of the negativity of the WF for the bipartite system considered early in terms of the coherent state amplitude α.

Figure 2 shows the variation of the degree of non-Gaussianity for the states in Eq. (2) as a function of coherent state amplitude α. We see that the non-Gaussianity δNGmeasured by (8) equal to 0 for small values of αincreases with increasing values of the parameter αto larger values much higher than 1 and does not establish in a maximum value. On the other hand, the NPT plots are shown in Figure 3a and b for the state (2) equal to 0 for α=0and increase with increasing values of the parameter αto reach its maximum value that is, equal to 1 for α  1.3. Furthermore, it is seen that the entanglement for large values of αreaches its maximum value. It is worthwhile noting that, at the limit of large values of the parameter α, the coherent states αand αbecome orthogonal; thus the behavior of quasi-Bell state (2) is, as expected, exactly that of the Bell state.

The plot in Figure 3c and d shows the behavior of the NWF as a function of αfor the non-Gaussian system (2). These two plots show that the NWF δWFhas the same behavior as the NPT. This allows to show that they behave identically and they have the same inflection points. Which confirms that the NWF is a direct computable measure of non-Gaussian bipartite entanglement that posses the proprieties of an entanglement quantifier [21].

For our measure, 1δWF0, equal to zero when α became null and the state in Eq. 2 is now nothing but a two-vacuum product state, and it is maximal for large values of αwhere the state (2) is maximally entangled (Bell state).

5. Conclusion

In this work, we have evaluated the negativity of Wigner function and the negativity of the partial transpose in non-Gaussian states formed by two modes of field coherent states. We have shown that the negative parts of the Wigner function can be used as a detector of non-Gaussian entanglement. Interestingly, as used in this work, the degree of Wigner function negativity can be used as a direct quantifier of non-Gaussian bipartite entanglement.

This work allows us to describe the best characterization of the non-Gaussian Wigner function and the important use of its negativity in bipartite non-Gaussian systems, which gives more efficiency in CV quantum information theory, particularly in quantum computing [30], because the Wigner function can be measured experimentally [31, 32], including the measurements of its negative values [33]. The interest put on such experiments has triggered a search for operational definitions of the Wigner functions, based on the experimental setup [34, 35]. It does represent a major step forward in the detection and the quantification of non-Gaussian entanglement in bipartite systems.

chapter PDF

More

© 2019 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

Mustapha Ziane and Morad El Baz (October 23rd 2019). Non-Gaussian Entanglement and Wigner Function [Online First], IntechOpen, DOI: 10.5772/intechopen.86426. Available from:


text:
# Closed-form integral $\int_{-1}^1 e^{a x^2 + bx}/\sqrt{1-x^2}dx$

Is there a closed-form analytic solution to the integral $$F(a,b) = \int_{-1}^1 \frac{e^{a x^2 + b x}}{\sqrt{1-x^2}}dx = \int_{0}^{\pi} e^{a \cos^2\theta + b \cos \theta}d\theta$$ where $a$ and $b$ are real? I am only aware of analytic results for special values with the modified Bessel function of the first kind $I_0(x)$: \begin{align} F(a,0)&=\pi e^{a/2} I_0(a/2), \\ F(0,b)&=\pi I_0(b). \end{align} If there is no closed-form analytical result in the general case, what is the asymptotic solution for small positive $a^{-1}$ and $b^{-1}$.

• Good one. I was stuck at this integral too. I believe this can be solved by using the generating function of the Bessel functions - to obtain the series solution – Yuriy S Aug 3 '16 at 13:53
• It seems that for $a=b\gg1$ the dominant contribution is from the right end point and goes like $\frac{\sqrt{\pi}\exp(2a)}{\sqrt{6a}}$ – tired Aug 3 '16 at 14:05
• what do we know about the variables? – Dr. Sonnhard Graubner Aug 3 '16 at 14:20

First of all, i don't think a closed form for this integral exists so i will stick to numerics which will yield an excellent approximation in the end.

Assuming $a\gg1$ or $b\gg1$, the integral will be always dominated by the right endpoint, because a) we have an integrable singularity there and b) $a x^2$ and $b x$ have the same sign. We can therefore conclude that the integral in question is asymptotically equal to

$$F(a,b)\sim \int_{1-\epsilon}^1dx\frac{e^{a x^2+b x}}{\sqrt{1-x^2}}\sim \sqrt{\frac{1}{2}}\int_{1-\epsilon}^1dx\frac{e^{a x^2+b x}}{\sqrt{1-x}}$$

because we expect only exponentially small corrections if we enlarge our domain of integration we may push it all the way down to minus infinity. Furthermore we might expand the exponent around $x=1$: $ax^2+bx\sim a+b+(2a+b)(x-1)+\mathcal{O}(x-1)^2$ so we are down to

$$F(a,b)\sim \sqrt{\frac{1}{2}}e^{a+b}\int_{-\infty}^1dx\frac{e^{(2a+b)(x-1) }}{\sqrt{1-x}}$$

this can be brought into the form of a standard Gaussian integral and so we end up with

$$F(a,b)\sim \sqrt{\frac{\pi}{2}}\frac{e^{a+b}}{\sqrt{2a+b}}$$

which is asymtotically equal to the two limiting cases calculated by OP. Below we have a logaritmic plot, comparing numerics (dotted,blue) and asymptotics (red,full) for the case $a=10b$

Using exactly the same kind of reasoning we find that the second endpoint yields contributions $\sim e^{a-b}\ll e^{a+b}$ for $a,b>0$ so we can safely neglect them

• Does it also work for a=0.1b and for the intermediate case a=b? – bkocsis Aug 3 '16 at 17:20
• ´@bkocsis yes it should work in both cases... – tired Aug 3 '16 at 18:32
• ....but in the limit $b\rightarrow 0$ the second endpoint becomes equaly important – tired Aug 3 '16 at 18:41

$$\int_{-1}^1\dfrac{e^{ax^2+bx}}{\sqrt{1-x^2}}~dx$$

$$=\int_\pi^0\dfrac{e^{a\cos^2\theta+b\cos\theta}}{\sqrt{1-\cos^2\theta}}~d(\cos\theta)$$

$$=\int_0^\pi e^{a\cos^2\theta+b\cos\theta}~d\theta$$

$$=\int_0^\pi\sum\limits_{n=0}^\infty\dfrac{(a\cos^2\theta+b\cos\theta)^n}{n!}~d\theta$$

$$=\int_0^\pi\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{C_k^na^kb^{n-k}\cos^{n+k}\theta}{n!}~d\theta$$

$$=\int_0^\frac{\pi}{2}\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{a^kb^{n-k}\cos^{n+k}\theta}{k!(n-k)!}~d\theta+\int_\frac{\pi}{2}^\pi\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{a^kb^{n-k}\cos^{n+k}\theta}{k!(n-k)!}~d\theta$$

$$=\int_0^\frac{\pi}{2}\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{a^kb^{n-k}\cos^{n+k}\theta}{k!(n-k)!}~d\theta+\int_\frac{\pi}{2}^0\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{a^kb^{n-k}\cos^{n+k}(\pi-\theta)}{k!(n-k)!}~d(\pi-\theta)$$

$$=\int_0^\frac{\pi}{2}\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{a^kb^{n-k}\cos^{n+k}\theta}{k!(n-k)!}~d\theta+\int_0^\frac{\pi}{2}\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{(-1)^{n+k}a^kb^{n-k}\cos^{n+k}\theta}{k!(n-k)!}~d\theta$$

$$=\int_0^\frac{\pi}{2}\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{(1+(-1)^{n+k})a^kb^{n-k}\cos^{n+k}\theta}{k!(n-k)!}~d\theta$$

$$=\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{(1+(-1)^{n+k})a^kb^{n-k}B\left(\dfrac{n+k+1}{2},\dfrac{1}{2}\right)}{2k!(n-k)!}$$ (according to http://mathworld.wolfram.com/BetaFunction.html)

$$=\sum\limits_{n=0}^\infty\sum\limits_{k=0}^n\dfrac{(1+(-1)^{n+k})a^kb^{n-k}\Gamma\left(\dfrac{n+k+1}{2}\right)\Gamma\left(\dfrac{1}{2}\right)}{2k!(n-k)!\Gamma\left(\dfrac{n+k}{2}+1\right)}$$

$$=\sum\limits_{k=0}^\infty\sum\limits_{n=k}^\infty\dfrac{(1+(-1)^{n+k})a^kb^{n-k}\Gamma\left(\dfrac{n+k+1}{2}\right)\sqrt\pi}{2k!(n-k)!\Gamma\left(\dfrac{n+k}{2}+1\right)}$$

$$=\sum\limits_{k=0}^\infty\sum\limits_{n=0}^\infty\dfrac{(1+(-1)^{n+2k})a^kb^n\Gamma\left(\dfrac{n+1}{2}+k\right)\sqrt\pi}{2k!n!\Gamma\left(\dfrac{n}{2}+k+1\right)}$$

$$=\sum\limits_{n=0}^\infty\sum\limits_{k=0}^\infty\dfrac{a^kb^{2n}\Gamma\left(n+k+\dfrac{1}{2}\right)\sqrt\pi}{k!(2n)!\Gamma(n+k+1)}$$

$$=\sum\limits_{n=0}^\infty\sum\limits_{k=0}^\infty\dfrac{a^kb^{2n}\Gamma\left(n+k+\dfrac{1}{2}\right)\pi}{4^nk!n!\Gamma\left(n+\dfrac{1}{2}\right)\Gamma(n+k+1)}$$

The picture shows $\pars{~\mbox{see expression}\ \eqref{1}~}$ , for instance, the error $\ds{\delta \equiv \verts{{\mc{F}\pars{a,10a} \over \mrm{F}\pars{a,10a}} - 1} \times 100\ \%}$ as a function of $\ds{a \in \bracks{100,200}}$. $\ds{\underline{Note}}$ that $\ds{\delta \sim 10^{-3}\ \%}$.

• How do get the approximate term for the integrand when $a,b\gg 1$? Do you expand the exponent to second order in $t$? – bkocsis Aug 28 '16 at 19:02
• @bkocsis The integrand is a function of $t^{2}$. So, the second term in the expansion is $\propto t^{2}$. This is $\texttt{Laplace Method}$ you can check here => en.wikipedia.org/wiki/Laplace%27s_method . The main contribution comes from $t \gtrsim 0$ because $2a + b\tanh\left(\, b\, \right) - {1 \over 4}$ is 'very large'. – Felix Marin Aug 28 '16 at 20:47
• Thanks. How can I apply this method if $b$ is finite and only $a$ approaches infinity? This may help me with another problem too, math.stackexchange.com/questions/1908249/… – bkocsis Aug 30 '16 at 9:31


text:
# Recent content by dfttheory

1. ### U(1) Gauge symmetry

I just realized that the discussions related to this may contain some of what I am looking for. I would be interested in any additional discussion about this. Thanks!
2. ### U(1) Gauge symmetry

So, I have a basic/general question here. I understand that, for example, the QED Langrangian has U(1) gauge symmetry. I also understand that this means (when you have written the Lagrangian with the covariant derivative) that if you transform the wavefunction (\psi \rightarrow e^{i \theta (x)}...


text:
I plot a lot of data on daily cycles, where there is no data collected at night. Let’s mock up some sample data with the following simple code:

IDL> x = [findgen(10), findgen(10) + 25, findgen(10) + 50]
IDL> seed = 0L
IDL> y = randomu(seed, 30)
IDL> plot, x, y

Then I get a plot like this:

This plot doesn’t show the nightly breaks in data well. Connecting the last data point collected from a day to the first data point collected the next day emphasizes the trend between these points, which may not be appropriate.

I have been using a fairly simple routine to insert NaNs into the data to break the plot into disconnected sections. For example, modify the above data for plotting with:

IDL> new_y = mg_insert_nan(x, y, [10.0, 35.0], new_x=new_x)
IDL> plot, new_x, new_y

The new plot shows the gaps between the “days” in the data:


text:
calc_prediction_intervals {bartMachine} R Documentation

## Calculate Prediction Intervals

### Description

Generates prediction intervals for \hat{y} for a specified set of observations.

### Usage

calc_prediction_intervals(bart_machine, new_data,
pi_conf = 0.95, num_samples_per_data_point = 1000)

### Arguments

 bart_machine An object of class “bartMachine”. new_data A data frame containing observations at which prediction intervals for \hat{y} are to be computed. pi_conf Confidence level for the prediction intervals. The default is 95%. num_samples_per_data_point The number of samples taken from the predictive distribution. The default is 1000.

### Details

Credible intervals (see calc_credible_intervals) are the appropriate quantiles of the prediction for each of the Gibbs samples post-burn in. Prediction intervals also make use of the noise estimate at each Gibbs sample and hence are wider. For each Gibbs sample, we record the \hat{y} estimate of the response and the \hat{σ^2} estimate of the noise variance. We then sample normal_samples_per_gibbs_sample times from a N(\hat{y}, \hat{σ^2}) random variable to simulate many possible disturbances for that Gibbs sample. Then, all normal_samples_per_gibbs_sample times the number of Gibbs sample post burn-in are collected and the appropriate quantiles are taken based on the confidence level, pi_conf.

### Value

Returns a matrix of the lower and upper bounds of the prediction intervals for each observation in new_data.

### Note

This function is parallelized by the number of cores set in set_bart_machine_num_cores.

### References

Adam Kapelner, Justin Bleich (2016). bartMachine: Machine Learning with Bayesian Additive Regression Trees. Journal of Statistical Software, 70(4), 1-40. doi:10.18637/jss.v070.i04

calc_credible_intervals, bart_machine_get_posterior

### Examples

## Not run:
#generate Friedman data
set.seed(11)
n  = 200
p = 5
X = data.frame(matrix(runif(n * p), ncol = p))
y = 10 * sin(pi* X[ ,1] * X[,2]) +20 * (X[,3] -.5)^2 + 10 * X[ ,4] + 5 * X[,5] + rnorm(n)

##build BART regression model
bart_machine = bartMachine(X, y)

#get prediction interval
pred_int = calc_prediction_intervals(bart_machine, X)


text:
# Differential cross section for w boson production as a function of transverse momentum in proton-antiproton collisions at $\sqrt s$ = 1.8 TeV

Abstract : We report a measurement of the differential cross section for W boson production as a function of its transverse momentum in proton-antiproton collisions at sqrt{s} = 1.8 TeV. The data were collected by the D0 experiment at the Fermilab Tevatron Collider during 1994-1995 and correspond to an integrated luminosity of 85 pb^{-1}. The results are in good agreement with quantum chromodynamics over the entire range of transverse momentum.
Document type :
Journal articles

Cited literature [15 references]

http://hal.in2p3.fr/in2p3-00010195
Contributor : Lpsc Bibliotheque Connect in order to contact the contributor
Submitted on : Friday, August 3, 2001 - 10:51:40 AM
Last modification on : Tuesday, October 19, 2021 - 10:50:08 PM
Long-term archiving on: : Tuesday, March 30, 2010 - 5:26:23 PM

### Identifiers

• HAL Id : in2p3-00010195, version 1

### Citation

V.M. Abazov, B. Abbott, Abdelmalek Abdesselam, M. Abolins, V. Abramov, et al.. Differential cross section for w boson production as a function of transverse momentum in proton-antiproton collisions at $\sqrt s$ = 1.8 TeV. Physics Letters B, Elsevier, 2001, 513, pp.292-300. ⟨in2p3-00010195⟩

Record views