Friday, March 25, 2022

How To See If A Shape Is Touching Another Shape In Java

This difference in conceptual model is reflected in the methods supported by the GLine class, which implements GScalable , but not GFillable or GResizable. It is, moreover, important to modify the notion of containment for lines, since the idea of being within the boundary of the line is not well defined. In the abstract, of course, a line is infinitely thin and therefore contains no points in its interior. In practice, however, it makes sense to define a point as being contained within a line if it is "close enough" to be considered as part of that line.

how to see if a shape is touching another shape in java - This difference in conceptual model is reflected in the methods supported by the GLine class

The motivation for this definition comes from the fact that one of the central uses of the contains method is to determine whether a mouse click applies to a particular object. As is the case in any drawing program, selecting a line with the mouse is indicated by clicking within some pixel distance of the abstract line. Thus, these methods return the appropriate dimensions of the bounding box that encloses the line.

how to see if a shape is touching another shape in java - It is

For this reason, it is a common practice to use more simple shapes for collision detection that we overlay on top of the original object. We then check for collisions based on these simple shapes; this makes the code easier and saves a lot of performance. A few examples of such collision shapes are circles, spheres, rectangles, and boxes; these are a lot simpler to work with compared to arbitrary meshes with hundreds of triangles. To detect collisions between complexly shaped game objects. It's a way to make collision detection easier and uses only basic geometric shapes, like the rectangles and circles covered in this tutorial. So, before you start building support for all kinds of complex shapes, try to think of a simple way to achieve the same effect, with basic shapes and hitboxes.

how to see if a shape is touching another shape in java - In the abstract

Although the GPolygon class is useful in a variety of contexts, it is limited to those applications in which the desired graphical object can be described as a simple closed polygon. Many graphical objects that one might want to define don't fit this model. Fortunately, the GCompound class described in section 5.7 provides the basis for a much more powerful extension mechanism. In this model, coordinate values are stored as ints, just as they are in the methods provided by the Graphics class in java.awt. Locations, sizes, and bounds for graphical objects are stored using the standard Point, Dimension, and Rectangle classes, which use integer-valued coordinates. This option is the easiest to implement and maintains consistency with the methods provided in the Graphics class.

how to see if a shape is touching another shape in java - In practice

The GImage class turns out to be relatively easy to design. By using the color of the object to specify this background, clients can use setColor to tint an image as long as that image includes pixels that are less than fully opaque. If the image contains only opaque pixels, setting its color has no effect. The first change is that GCanvas objects should use null as their default layout manager so that the positioning of the components is under client control, just as is true for graphical objects.

how to see if a shape is touching another shape in java - The motivation for this definition comes from the fact that one of the central uses of the contains method is to determine whether a mouse click applies to a particular object

Second, the add method must check the size of the component and set it to its preferred size if its bounds are empty. These simple changes seem to do exactly what students would want. Although it makes perfect sense to fill a GRect or GOval, filling is not appropriate for GImage or GLabel. Several members of the Java Task Force felt it was important to define each shape class so that it responded only to messages appropriate to graphical objects of that type.

how to see if a shape is touching another shape in java - As is the case in any drawing program

Such a design makes it possible to catch at compile time any attempts to invoke inappropriate methods. In the acm.graphics package, a filled shape is, in essence, both framed and filled, and therefore covers exactly the same pixels in either mode. This definition was necessary to support separate fill and frame colors and is also likely to generate less confusion for students. Hitboxes are imaginary geometric shapes around game objects that are used to determine collision detection.

how to see if a shape is touching another shape in java - Thus

You won't check its arms and legs for collision but instead just check a big imaginary rectangle that's placed around the player. The two specialized forms of rectangles—GRoundRect and G3DRect—appear in the hierarchy as subclasses of GRect. The purpose of introducing this additional layer in the hierarchy was to provide an intuitively compelling illustration of the nested hierarchies. Just as all the shape classes are graphical objects , the GRoundRect and G3DRect classes are graphical rectangles .

how to see if a shape is touching another shape in java - For this reason

Organizing the hierarchy in this way emphasizes the is-a relationship that defines subclassing. The objectdraw package allows an object to determine whether its bounding box overlaps that of another through the inclusion of an overlaps method. This method would be straightforward to add, but the functionality is easily obtainable by calling intersects on the bounding rectangles returned by getBounds. Making the user retrieve the bounding box has the advantage that the definition of overlap is then more explicit. The fact that two circles can "overlap" in objectdraw even when they are not touching seems likely to cause confusion.

how to see if a shape is touching another shape in java - We then check for collisions based on these simple shapes this makes the code easier and saves a lot of performance

The acm.graphics package diagram shown in Figure 5-2 contains several additional classes beyond those that have already been described. The GMath class provides an extended set of mathematical methods that are useful for graphical programs and is described in section 5.4. The GCompound class makes it possible to define one GObject as a collection of others. The GPen class provides a simple mechanism for constructing line drawings that adopts a conceptual model of a pen drawing on the canvas. The GTurtle class is similar in many respects, but offers a somewhat more restricted graphical model based on the "turtle graphics" paradigm described in Seymour Papert's Mindstorms .

how to see if a shape is touching another shape in java - A few examples of such collision shapes are circles

Instead, this is more of an animation process than anything. The variable we defined as gravity is just a numeric value—a float so that we can use decimal values, not just integers—that we add to ballSpeedVert on every loop. And ballSpeedVert is the vertical speed of the ball, which is added to the Y coordinate of the ball on each loop.

how to see if a shape is touching another shape in java - To detect collisions between complexly shaped game objects

We watch the coordinates of the ball and make sure it stays in the screen. So we watch the floor and ceiling boundries of the screen. With keepInScreen() method, we check if ballY (+ the radius) is less than height, and similarly ballY (- the radius) is more than 0. If the conditions don't meet, we make the ball bounce with makeBounceBottom() and makeBounceTop() methods. To make the ball bounce, we simply move the ball to the exact location where it had to bounce and multiply the vertical speed with -1 (multiplying with -1 changes the sign).

how to see if a shape is touching another shape in java - It

When the speed value has a minus sign, adding Y coordinate the speed becomes ballY + (-ballSpeedVert), which is ballY - ballSpeedVert. So the ball immediately changes its direction with the same speed. Then, as we add gravity to ballSpeedVert and ballSpeedVert has a negative value, it starts to get close to 0, eventually becomes 0, and starts increasing again. That makes the ball rise, rise slower, stop and start falling. Before you can detect collisions between moving objects, you'll need some objects to begin with. In the previous tutorial you've learned how to move a single rectangle.

how to see if a shape is touching another shape in java - So

Let's expand that logic and create a whole bunch of moving objects to fill your game. The GCanvas class provides the link between the world of graphical objects and the Java windowing system. Conceptually, the GCanvas class acts as a container for graphical objects and allows clients of the package to add and remove elements of type GObject from an internal display list. When the GCanvas is repainted, it forwards paint messages to each of the graphical objects it contains. Metaphorically, the GCanvas class acts as the background for a collage in which the student, acting in the role of the artist, positions shapes of various colors, sizes, and styles. These additional methods are collected into standard suites identified by interfaces.

how to see if a shape is touching another shape in java - Although the GPolygon class is useful in a variety of contexts

As an example, the shape classes that implement GFillable respond to the methods setFilled, isFilled, setFillColor, and getFillColor. The public methods defined for all graphical objects appear in Figure 5-4, and the additional methods specified by interfaces appear in Figure 5-5. This model requires aggregate structures that describe locations, sizes, and bounds in double precision and that are therefore analogous to Point, Dimension, and Rectangle in the integer world. If nothing else, these names expose the notion of inner classes, which is not generally taken to be an introductory concept.

how to see if a shape is touching another shape in java - Many graphical objects that one might want to define dont fit this model

In light of that complexity, the acm.graphics package includes definitions for the classes GPoint, GDimension, and GRectangle, which provide the same functionality. The more I think about it, the more I like James' idea of letting Java do a lot of the math work as far as figuring out whether things intersect. In Java, as in math, a Rectangle is a Polygon, which is simply a closed Shape made up of line segments, in your case 4. If your rectangles are allowed to tilt, you can't use Rectangle (note the capitalization and lower-case here. Upper case is a class name) unless you use AffineTransforms to tilt things I believe. If you are going to tilt things, use Polygon, which is a 4 sided closed Shape with right angles and line segments as the edges. Polygon and Ellipse are both Shapes, so use the Ellipse.intersects function to determine collisions.

how to see if a shape is touching another shape in java - Fortunately

For the details about whether it has collided with each of the four corners, use Ellipse.contains. You probably can't use the contains function because a Line has no area. Now check the Ellipse.intersects function to see if the circle has collided with that edge. The GTurtle class is similar to GPen but uses a "turtle graphics" model derived from the Project Logo turtle described in Seymour Papert's Mindstorms .

how to see if a shape is touching another shape in java - In this model

In the turtle graphics world, the conceptual model is that of a turtle moving on a large piece of paper. A GTurtle object maintains its current location just as a GPen does, but also maintains a current direction. The path is created by a pen located at the center of the turtle.

how to see if a shape is touching another shape in java - Locations

If the pen is down, calls to forward generate a line; if the pen is up, such calls simply move the turtle without drawing a line. The GPen class models a pen that remembers its current location on the GCanvas on which it is installed. The most important methods for GPen are setLocation and drawLine.

how to see if a shape is touching another shape in java - This option is the easiest to implement and maintains consistency with the methods provided in the Graphics class

The former corresponds to picking up the pen and moving it to a new location; the latter represents motion with the pen against the canvas, thereby drawing a line. Each subsequent line begins where the last one ended, which makes it very easy to draw connected figures. The GPen object also remembers the path it has drawn, making it possible to redraw the path when repaint requests occur. The full set of methods for the GPen class is shown in Figure 5-14. The shape classes that appear at the bottom of Figure 5-2 represent "atomic" shapes that have no internal components. Although the GCanvas class makes it possible to position these shapes on the display, it is often useful to assemble several atomic shapes into a "molecule" that you can then manipulate as a unit.

how to see if a shape is touching another shape in java - The GImage class turns out to be relatively easy to design

The need to construct this type of compound units provides the motivation behind the inclusion of the GCompound class, in the acm.graphics package. The methods available for GCompound are in some sense the union of those available to the GObject and GCanvas classes. As a GObject, a GCompound responds to method calls like setLocation and scale; as an implementer of the GContainer interface, it supports methods like add and remove. The two submitted packages that offer mouse support each provide a mechanism for responding to mouse events whose design use a callback model rather than listeners. In objectdraw, mouse events generated on the graphical canvas are eventually handled in methods contained in class WindowController, which is the extension of JApplet that contains that canvas.

how to see if a shape is touching another shape in java - By using the color of the object to specify this background

Students write a class extending WindowController and then override the event-handling methods whose behavior they wish to specify. To avoid this possible source of confusion, GArc does not implement GResizable, but instead implements the methods setFrameRectangle and getFrameRectangle. The GArc class raises a variety of interesting design issues, particularly in terms of seeking to understand the relationship between a filled arc and an unfilled one. Most notably, the contains method for the GArc class returns a result that depends on whether the arc is filled. For an unfilled arc, containment implies that the arc point is actually on the arc, subject to the same interpretation of "closeness" as described for lines in the preceding section. For a filled arc, containment implies inclusion in the wedge.

how to see if a shape is touching another shape in java - If the image contains only opaque pixels

This definition of containment is necessary to ensure that mouse events are transmitted to the arc in a way that matches the user's intuition. There was, however, one change that the Task Force decided—after extensive debate—would be worth adopting. All but one of the graphics proposals we received chose to use doubles rather than ints to specify coordinate values.

how to see if a shape is touching another shape in java - The first change is that GCanvas objects should use null as their default layout manager so that the positioning of the components is under client control

The principal advantage in adopting a double-based paradigm is that the abstract model typically makes more sense in a real-valued world. Physics, after all, operates in the continuous space of real numbers and not in the discrete world of integers, which is simply an artifact of the pixel-based character of graphical displays. Animating an object so that it has velocity or acceleration pretty much forces the programmer to work with real numbers at some point.

how to see if a shape is touching another shape in java - Second

Keeping track of object coordinates in double-precision typically makes it possible for programmers to use the stored coordinates of a graphical object as the sole description of its position. If the position of a graphical object is stored as an integer, many applications will require the programmer to keep track of an equivalent real-valued position somewhere else within the structure. On the other hand, the disadvantage of using real-valued coordinates is that doing so represents something of a break from the standard Java model . We defined the coordinates as global variables, created a method that draw the ball, called from gameScreen method. Only thing to pay attention to here is that we initialized coordinates, but we defined them in setup().

how to see if a shape is touching another shape in java - These simple changes seem to do exactly what students would want

The reason we did that is we wanted the ball to start at one fourth from left and one fifth from top. There is no particular reason we want that, but that is a good point for the ball to start. So we needed to get the width and height of the sketch dynamically. The sketch size is defined in setup(), after the first line. Width and height are not set before setup() runs, that's why we couldn't achieve this if we defined the variables on top.

how to see if a shape is touching another shape in java

You could simply use the function for rectangle collision detection, you've applied before, to check the hitboxes for collisions. It's far less CPU-intensive and makes supporting complex shapes in your game much easier. In some special cases, you could even use multiple hitboxes per game object. While this simple style of extension is accessible to introductory students, it is problematic for two reasons. First, its use is limited to those cases in which an existing class can be made to draw the desired figure.

how to see if a shape is touching another shape in java - Several members of the Java Task Force felt it was important to define each shape class so that it responded only to messages appropriate to graphical objects of that type

Second, this extension model creates class names that imply properties for an object without any guarantee that those properties can be maintained. Since GFilledSquare and GRedSquare both inherit all the methods of GRect and GObject, clients would be able to change the initial properties at will. Thus, an object declared to be a GRedSquare could end up being a green rectangle after a couple of client calls. It therefore seems preferable—at least for pedagogical reasons—to adopt one of the alternative extension models described in a subsequent section.

how to see if a shape is touching another shape in java - Such a design makes it possible to catch at compile time any attempts to invoke inappropriate methods

The GCompound class makes it possible to shift the virtual origin of any of the other figures. However, you can achieve the desired effect by embedding a GOval at the appropriate location within a GCompound. In essence, this strategy relies on the fact that GCompound objects define their own local coordinate system, which offers significant expressive power. The ObjectDragExample application installs two shapes—a red rectangle and a green oval—and then allows the user to drag either shape using the mouse. The code also illustrates z-ordering by moving the current object to the front on a mouse click.

how to see if a shape is touching another shape in java - In the acm

This demo is available as an applet on the JTF web site. The evolutionary history of Java provides two distinct models for responding to mouse events. The model that was defined for JDK 1.0 was based on callback methods whose behavior was defined through subclassing. Thus, to detect a mouse click on a component, you need to define a subclass that overrides the definition of mouseDown with a new implementation having the desired behavior. That model was abandoned in JDK 1.1 in favor of a new model based on event listeners. These models are quite different, and there is no obvious sense in which learning one helps prepare you to learn the other.

how to see if a shape is touching another shape in java - This definition was necessary to support separate fill and frame colors and is also likely to generate less confusion for students

Friday, January 7, 2022

Density Of Air At Stp Is 0 0013

We study a firn and ice core drilled at the new "Lock-In" site in East Antarctica, located 136 km away from Concordia station towards Durmont d'Urville. High resolution chemical and physical measurements were performed on the core, with a particular focus on the trapping zone of the firn where air bubbles are formed. We measured the air content in the ice, closed and open porous volumes in the firn, firn density, firn liquid conductivity and major ion concentrations, as well as methane concentrations in the ice. The closed and open porosity volumes of firn samples were obtained by the two independent methods of pycnometry and tomography, that yield similar results. The measured increase of the closed porosity with density is used to estimate the air content trapped in the ice with the aid of a simple gas trapping model. Experimental errors have been considered but do not explain the discrepancy between the model and the observations.

density of air at stp is 0 0013 - We study a firn and ice core drilled at the new

The model and data can be reconciled with the introduction of a reduced compression of the closed porosity compared to the open porosity. Yet, it is not clear if this limited compression of closed pores is the actual mechanism responsible for the low amount of air in the ice. High resolution density measurements reveal the presence of a strong layering, manifesting itself as centimeter scale variations. Despite this heterogeneous stratification, all layers, including the ones that are especially dense or less dense compared to their surroundings, display similar pore morphology and closed porosity as function of density. This implies that all layers close in a similar way, even though some close in advance or later compared to the bulk firn. Investigation of the chemistry data suggests that in the trapping zone, the observed stratification is partly related to the presence of chemical impurities.

density of air at stp is 0 0013 - High resolution chemical and physical measurements were performed on the core

We study a firn and ice core drilled at the new "Lock-In" site in East Antarctica, located 136 km away from Concordia station towards Dumont d'Urville. High-resolution chemical and physical measurements were performed on the core, with a particular focus on the trapping zone of the firn where air bubbles are formed. We measured the air content in the ice, closed and open porous volumes in the firn, firn density, firn liquid conductivity, major ion concentrations, and methane concentrations in the ice. The closed and open porosity volumes of firn samples were obtained using the two independent methods of pycnometry and tomography, which yield similar results.

density of air at stp is 0 0013 - We measured the air content in the ice

The measured increase in the closed porosity with density is used to estimate the air content trapped in the ice with the aid of a simple gas-trapping model. High-resolution density measurements reveal the presence of strong layering, manifesting itself as centimeter-scale variations. Despite this heterogeneous stratification, all layers, including the ones that are especially dense or less dense compared to their surroundings, display similar pore morphology and closed porosity as a function of density. The smoothing is due to the combined effects of diffusive mixing in the firn and the progressive closure of bubbles at the bottom of the firn.

density of air at stp is 0 0013 - The closed and open porosity volumes of firn samples were obtained by the two independent methods of pycnometry and tomography

Consequently, the gases trapped in a given ice layer span a distribution of ages. Concentration measurements thus only measure the average value in the ice layer, which removes the fast variability from the record. We focus on the study of East Antarctic plateau ice cores, as these low accumulation ice cores are particularly affected by both layering and smoothing. Our results suggest that the presence of layering artifacts in deep ice cores is linked with the chemical content of the ice. We use high-resolution methane data to parametrize a simple model reproducing the layered gas trapping artifacts for different accumulation conditions typical of the East Antarctic plateau.

density of air at stp is 0 0013 - The measured increase of the closed porosity with density is used to estimate the air content trapped in the ice with the aid of a simple gas trapping model

We also use the high-resolution methane measurements to estimate the gas age distributions of the enclosed air in the five newly measured ice core sections. It appears that for accumulations below 2 cm ie yr−1 the gas records experience nearly the same degree of smoothing. We therefore propose to use a single gas age distribution to represent the firn smoothing observed in the glacial ice cores of the East Antarctic plateau. Finally, we used the layered gas trapping model and the estimation of glacial firn smoothing to estimate their potential impacts on a million-and-a-half years old ice core from the East Antarctic plateau.

density of air at stp is 0 0013 - Experimental errors have been considered but do not explain the discrepancy between the model and the observations

Our results indicate that layering artifacts are no longer individually resolved in the case of very thinned ice near the bedrock. They nonetheless contribute to slight biases of the measured signal (less than 10 ppbv and 0.5 ppmv in the case of methane and carbon dioxide). However, these biases are small compared to the dampening experienced by the record due to firn smoothing.

density of air at stp is 0 0013 - The model and data can be reconciled with the introduction of a reduced compression of the closed porosity compared to the open porosity

This means that the gas concentration in an ice layer is the average value over a certain period of time, which removes the fast variability from the record. Here, we focus on the study of East Antarctic Plateau ice cores, as these low-accumulation ice cores are particularly affected by both layering and smoothing. We use high-resolution methane data to test a simple trapping model reproducing the layered gas trapping artifacts for different accumulation conditions typical of the East Antarctic Plateau. It appears that for accumulations below 2 cm ice equivalent yr−1 the gas records experience nearly the same degree of smoothing. We therefore propose to use a single gas age distribution to represent the firn smoothing observed in the glacial ice cores of the East Antarctic Plateau. Finally, we used the layered gas trapping model and the estimation of glacial firn smoothing to quantify their potential impacts on a hypothetical 1.5-million-year-old ice core from the East Antarctic Plateau.

density of air at stp is 0 0013 - Yet

They nonetheless contribute to slight biases of the measured signal (less than 10 ppbv and 0.5 ppmv in the case of methane using our currently established continuous CH4 analysis and carbon dioxide, respectively). Firn, firn density, firn liquid conductivity and major ion concentrations, as well as methane concentrations in the ice. Firn, the interstitial porous network shrinks until it eventually pinches and traps gases in the ice. However, the very process of gas trapping has impacts on the gas signals recorded in ice cores. The interpretation of gas records requires to characterize how ice core and atmospheric signals differ.

density of air at stp is 0 0013 - High resolution density measurements reveal the presence of a strong layering

The aim of this PhD is to study two effects altering ice core gas records, namely gas layered trapping that creates stratigraphic irregularities and firn smoothing that removes fast variability from the record. A specific focus is put on low-accumulation East Antarctic ice cores.This inquiry starts with the multi-tracer study of a firn core drilled at the Lock-In site, East Antarctica. The results show that the bottom of the firn can be seen as a stack of heterogeneous strata that densify following the same porous network evolution with density. In this vision, the stratification simply reflects the fact that some strata are in advance in their densification, but that pore closure happens in a similar fashion in all strata. This notably means that all strata contain nearly similar amounts of gases, as supported by direct measurements. For this PhD we rely on 6 new high-resolution methane records, measured in several East Antarctic ice cores at IGE.

density of air at stp is 0 0013 - Despite this heterogeneous stratification

We show that the abrupt variations are layering artifacts due to stratigraphic irregularities caused by dense firn strata closing in advance. A simple model is developed to simulate the irregular occurrence of layering artifacts.A novel technique is proposed to estimate the age distributions of gases in ice cores, that are responsible for the smoothing of fast atmospheric variations. It can notably be applied to glacial records, and for the first time provides quantitative insights on the smoothing of very low-accumulation records.

density of air at stp is 0 0013 - This implies that all layers close in a similar way

Our results show that in East Antarctica, the firn smoothing is weakly sensitive to the accumulation rate, meaning that more information than previously thought is preserved.Finally, we present the development of a new type of micro-mechanical firn model. Its ambition is to simulate the evolution of the porous network of a firn stratum. Such a model could be used to better constrain the enclosure of gases in polar ice under glacial conditions. In order to interpret the paleoclimatic record stored in the air enclosed in polar ice cores, it is crucial to understand the fundamental lock-in process. Within the porous firn, bubbles are sealed continuously until the respective horizontal layer reaches a critical porosity.

density of air at stp is 0 0013 - Investigation of the chemistry data suggests that in the trapping zone

Present-day firn air models use a postulated temperature dependence of this value as the only parameter to adjust to the surrounding conditions of individual sites. However, no direct measurements of the firn microstructure could confirm these assumptions. Here we show that the critical porosity is a climate-independent constant by providing an extensive data set of micrometer-resolution 3-D X-ray computer tomographic measurements for ice cores representing different extremes of the temperature and accumulation ranges.

density of air at stp is 0 0013 - We study a firn and ice core drilled at the new Lock-In site in East Antarctica

We demonstrate why indirect measurements suggest a climatic dependence and substantiate our observations by applying percolation theory as a theoretical framework for bubble trapping. The incorporation of our results significantly influences the dating of trace gas records, changing gas-age–ice-age differences by up to more than 1000 years. This may further help resolve inconsistencies, such as differences between East Antarctic δ15N records and model results. We expect our findings to be the basis for improved firn air and densification models, leading to lower dating uncertainties. Understanding the slow densification process of polar firn into ice is essential in order to constrain the age difference between the ice matrix and entrapped gases.

density of air at stp is 0 0013 - High-resolution chemical and physical measurements were performed on the core

The progressive microstructure evolution of the firn column with depth leads to pore closure and gas entrapment. Air transport models in the firn usually include a closed porosity profile based on available data. Pycnometry or melting–refreezing techniques have been used to obtain the ratio of closed to total porosity and air content in closed pores, respectively. X-ray-computed tomography is complementary to these methods, as it enables one to obtain the full pore network in 3-D. This study takes advantage of this nondestructive technique to discuss the morphological evolution of pores on four different Antarctic sites. The computation of refined geometrical parameters for the very cold polar sites Dome C and Lock In provides new information that could be used in further studies.

density of air at stp is 0 0013 - We measured the air content in the ice

The comparison of these two sites shows a more tortuous pore network at Lock In than at Dome C, which should result in older gas ages in deep firn at Lock In. A comprehensive estimation of the different errors related to X-ray tomography and to the sample variability has been performed. The procedure described here may be used as a guideline for further experimental characterization of firn samples. We show that the closed-to-total porosity ratio, which is classically used for the detection of pore closure, is strongly affected by the sample size, the image reconstruction, and spatial heterogeneities. In this work, we introduce an alternative parameter, the connectivity index, which is practically independent of sample size and image acquisition conditions, and that accurately predicts the close-off depth and density. Its strength also lies in its simple computation, without any assumption of the pore status .

density of air at stp is 0 0013 - The closed and open porosity volumes of firn samples were obtained using the two independent methods of pycnometry and tomography

The close-off prediction is obtained for Dome C and Lock In, without any further numerical simulations on images (e.g., by permeability or diffusivity calculations). Current processes for the capture of CO2 are dependent on amine solutions or chilled ammonia for which the issues of degrading equipment, toxicity, and the high energy cost of amine regeneration are problems (Lu et al., 2015). Inquiries into the gas storage applications of porous materials arose from their low density accompanied by a high internal surface area (Lu and Hao, 2013; Estevez et al., 2018). Inorganic zeolites were the first porous materials to be investigated for the ability to sequester CO2 (Siriwardane et al., 2005; James et al., 2011). Zeolites main attribute however is their use in catalytic cracking of hydrocarbons; an ability that is derived from the high acidity of zeolite frameworks . Compared to COF materials however zeolites will have a smaller pore size and a greater affinity to water, limiting the CO2 capture performance compared to COFs.

density of air at stp is 0 0013 - The measured increase in the closed porosity with density is used to estimate the air content trapped in the ice with the aid of a simple gas-trapping model

Other candidates for mitigating the greenhouse effect via CO2 capture include non-crystalline polymers such as covalent microporous polymers (Dawson et al., 2011a; Sun et al., 2015). CMPs have been used successfully in the fixation of CO2 to epoxides and like COFs can also be co-ordinated to metal atoms (Xiong et al., 2017). CMPs though lack crystallinity making their pore size less uniform than COF materials. Due to the amorphous nature of CMPs there is a lack of precise atomic control of the structure and spacing between the molecular building blocks of the polymer, which is something that has been achieved in COFs (Feng et al., 2012a). Polymeric graphitic carbon nitride (g-C3N4) is promising heterogenous catalyst for the metal-free photocatalytic conversion of CO2 to value added products (Shi et al., 2014; Sun and Liang, 2017). Unlike COFs the porosity of g-C3N4 is derived through the use of templating agents and in bulk application g-C3N4 often suffers low solar light absorption.

density of air at stp is 0 0013 - High-resolution density measurements reveal the presence of strong layering

COFs are one of the most recently discovered families of porous materials (Dinga and Wang, 2013; Huang et al., 2016; Lohse and Bein, 2018; Zhao F. et al., 2018). COFs are crystalline polymers synthesized from the covalent linkages of building blocks . COF materials can consist of 2D sheets of linked building blocks held together by π-stacking, or also 3D frameworks.

density of air at stp is 0 0013 - Despite this heterogeneous stratification

The high porosity and low volumetric density of COFs inspired the thorough investigation into the rational design of COF for CO2 sequestration (Jiang et al., 2019). The pore size of COFs can be varied from small to large by the selection of different sized building blocks. COFs with large pores are better suited for CO2 capture at high pressures wherein the interactions between gas molecules plays a larger role in storage than the interactions between CO2 and the pore walls (Jiang et al., 2019). Meanwhile the chemical makeup of the internal pores in small channeled COFs can be tuned to enhance CO2 affinity thus maximizing the ability for low pressure CO2 adsorption in these materials (Morris and Wheatley, 2008; Li B. et al., 2014). Moreover the porosity of COF materials endows a low density; for instance COF-108, which is a 3D COF, achieved a density of 0.17 g/cm3 which at the time was the lowest density of any COF synthesized (El-Kaderi et al., 2007).

density of air at stp is 0 0013 - The smoothing is due to the combined effects of diffusive mixing in the firn and the progressive closure of bubbles at the bottom of the firn

In real firn, the increased pressure in the already closed bubbles might slow their compression compared to open pores. A recent study by Fourteau et al. has shown that reducing the compressibility of closed pores by an amount of 50% in gas trapping models could explain a discrepancy between model results and direct measurements of air content in ice cores. It is however not clear if this reduced compressibility of 50% is physically sound or not.

density of air at stp is 0 0013 - Consequently

The results highlight many anomalous layers at the centimeter scale that are unevenly distributed along the ice core. The anomalous methane mixing ratios differ from those in the immediate surrounding layers by up to 50 ppbv. This phenomenon can be theoretically reproduced by a simple layered trapping model, creating very localized gas age scale inversions. We propose a method for cleaning the record of anomalous values that aims at minimizing the bias in the overall signal. Once the layered-trapping-induced anomalies are removed from the record, DO-17 appears to be smoother than its equivalent record from the high-accumulation WAIS Divide ice core. This is expected due to the slower sinking and densification speeds of firn layers at lower accumulation.

density of air at stp is 0 0013 - Concentration measurements thus only measure the average value in the ice layer

However, the degree of smoothing appears surprisingly similar between modern and DO-17 conditions at Vostok. This suggests that glacial records of trace gases from low-accumulation sites in the East Antarctic plateau can provide a better time resolution of past atmospheric composition changes than previously expected. We also developed a numerical method to extract the gas age distributions in ice layers after the removal of the anomalous layers based on comparison with a weakly smoothed record. It is particularly adapted for the conditions of the East Antarctic plateau, as it helps to characterize smoothing for a large range of very low-temperature and low-accumulation conditions.

density of air at stp is 0 0013 - We focus on the study of East Antarctic plateau ice cores

We measured the air content in the ice, closed and open porous volumes in the ... Air data provide evidence for presence of modern air entrapped in shallow ice core samples. We propose that this is due to closure of open pores after drilling, entrapping modern air and resulting in elevated CFC-12 mixing ratios.

density of air at stp is 0 0013 - Our results suggest that the presence of layering artifacts in deep ice cores is linked with the chemical content of the ice

Our measurements reveal the presence of open porosity below the depth at which firn air samples can be collected and demonstrate how the composition of bubble air in shallow ice cores can be altered during the post-drilling period through purely physical processes. These results have implications for investigations involving trace gas composition of bubbles in shallow ice cores. Covalent organic frameworks are porous crystalline organic polymers which have been the subject of immense research interest in the past 10 years. COF materials are synthesized by the covalent linkage of organic molecules bonded in a repeating fashion to form a porous crystal that is ideal for gas adsorption and storage. Chemists have strategically designed COFs for the purpose of heterogeneous catalysis of gaseous reactants.

density of air at stp is 0 0013 - We use high-resolution methane data to parametrize a simple model reproducing the layered gas trapping artifacts for different accumulation conditions typical of the East Antarctic plateau

Presented in this critical review are efforts toward developing COFs for the sequestration of CO2 from the atmosphere. Researchers have determined the CO2 adsorption capabilities of several COFs is competitive with the highest surface area materials. Engineering the pore environment of COFs with chemical moieties that interact with CO2 have increased the CO2 adsorption performance. The installation of CO2 binding moieties in the COF has made possible the selective adsorption of CO2 over other gases such as N2.

density of air at stp is 0 0013 - We also use the high-resolution methane measurements to estimate the gas age distributions of the enclosed air in the five newly measured ice core sections

The high degree of control of internal pore composition in COFs is coupled with high CO2 adsorption to develop heterogeneous catalysts for the conversion of CO2 to value added products. Two notable examples of this catalysis are the fixation of CO2 to epoxides for the synthesis of cyclic carbonates and the reduction of CO2 to CO. Recent examples of COFs for the capture of CO2 will be discussed followed by COF catalysts which use CO2 as a feedstock for the production of value-added products. Progress in the development of CTFs for CO2 fixation continued to 2018 when Yu et al. devised a bottom-up approach entailing deliberate linker selection for the synthesis of function-specific CTFs capable of cycloaddition of CO2 to epoxides (Yu et al., 2018). Using precisely selected polymerization conditions, porous crystalline frameworks CTF-CSU1 and CTF-CSU19 with long-range structure were attained.

density of air at stp is 0 0013 - It appears that for accumulations below 2 cm ie yr1 the gas records experience nearly the same degree of smoothing

To synthesize the CTFs, Yu et al. heated 3,6-dicyano-9H-carbazole and 3,6-dicyano-9-methylcarbazole in ZnCl2 at 400°C for 48 h with the former producing CTF-CSU1 in 93% yield and the latter producing CTF-CSU19 in 91% yield. These CTFs have an exceptionally high nitrogen content due to the presence of both carbazole and triazine moieties. The high nitrogen content of the of extended polymers is known to be beneficial for the capture and catalytic chemical fixation of CO2 (Talapaneni et al., 2015).

density of air at stp is 0 0013 - We therefore propose to use a single gas age distribution to represent the firn smoothing observed in the glacial ice cores of the East Antarctic plateau

Their results showed that in the CO2 cycloaddition, CTF-CSU19 had higher contribution under atmospheric pressure and room temperature (0.1 MPa, 25°C, 48 h) with a TBAB co-catalyst. The elevation in catalytic efficiency was prescribed to the large surface area, pore volume and high nitrogen content. The cycloaddition reaction of CO2 and epoxides having small-sized substituents can be catalyzed using CTF-CSU19 under mild conditions. In addition, CTF-CSU19 can catalyze the fixation of CO2 to epichlorohydrin in high yields although the reacitivty of the larger styrene oxide substrate was more mild .

density of air at stp is 0 0013 - Finally

On the other hand, substrates possessing large substituents like phenyl are relatively slow to react because they cannot easily diffuse into the channels for reactions. The scope of the molecules synthesized by Yu et al. in this study is presented in Table 4. For reusability test, the reaction of epibromohydrin with CO2 catalyzed by CTF-CSUs/TBAB was studied and it was showed that both CTFs can be used for 5 times with only a slight decrease in activity. In 2018 Zhi et al. identified two more COFs, so named COF-JLU6 and COF-JLU7; for the efficient synthesis of cyclic carbonates from CO2 (Zhi et al., 2018). Rather than using a triazine linkage to construct the COF framework Zhi et al. used a triazine-based anilines linked with 2,5-dihydroxyterephaladehyde through imine bonds formed during solvothermal synthesis as depicted in Figure 22. In their study, Zhi et al. used the synthesized imine-linked COFs with hydroxy groups as heterogeneous catalyst for cycloaddition of CO2 into cyclic carbonates under mild conditions.

density of air at stp is 0 0013 - Our results indicate that layering artifacts are no longer individually resolved in the case of very thinned ice near the bedrock

How To See If A Shape Is Touching Another Shape In Java

This difference in conceptual model is reflected in the methods supported by the GLine class, which implements GScalable , but not GFillable...