Pages

Affichage des articles dont le libellé est structure. Afficher tous les articles
Affichage des articles dont le libellé est structure. Afficher tous les articles

Cristallographie, structure d'un crystal : CrAs sujet

mardi 8 avril 2014




Bonjour, j'étudie actuellement à Oslo et j'ai un rapport à rendre. Je planche dessus depuis plusieurs semaines déjà. Mon professeur m'a dit que mes réponses étaient fausses et qu'il ne pouvait pas accepté mon rapport. J'ai besoin d'aide s'il vous plaît.
Merci par avance de votre aide!

Task 1 – Crystal structures, crystallography and chemical bonding

CrAs (chromium arsenide) crystallises with MnP-type structure. MnP-type structure can be described as a deformed NiAs-type structure.

CrAs has unit cell dimensions a = 5.549 Å, b = 3.461 Å, c = 6.208 Å, and is described with the space group Pnma.

Relative atomic positions for CrAs are:

Cr in 4c: (x, ¼, z), with x = 0.007 and z = 0.200
As in 4c: (x, ¼, z), with x = 0.200 and z = 0.577

Information given in “International Table of Crystallography” for space group no. 62 (Pnma) can be found on Fronter or by searching the internet.

a) Describe the space group symbol and its corresponding point group. Also, give the crystal system.

b) Sketch the Bravais lattice for CrAs as a projection on the ac-plane.

c) Name the other types of lattices that exist and give the number of lattice points per unit cell for each lattice. Feel free to make sketches.

d) Draw the crystal planes described with Miller indices (101) and (102) projected on the ac-plane. Draw at least three parallel planes in the figure.

e) Show, with the help of a stereographic projection, the number of general positions generated for the corresponding point group of Pnma. You can use the additional information in the appendix. Also, give the number of equivalent atoms that will be generated in the unit cell when they are described with a general position in the space group Pnma.

f) Calculate the relative atomic coordinates of all the atoms in the unit cell for CrAs, and sketch the crystal structure as a projection on the ac-plane. Note; include atoms inside, and also those right outside the unit cell of your drawing (the last one is done to more easily being able to identify important structural features, coordination, and much more).

g) Look at the sketch in f). For CrAs there are several relatively short Cr-Cr distances. Indicate on your figure (for example with bold lines between the atoms) where these distances are, and then calculate the bonding length for these relatively short Cr-Cr distances (2 + 2). The Cr-As distances are in the size order of 2.5 Å.

h) Evaluate the bond type in CrAs based on the sketch(es) you have made and the following information:

Electron negativity: Cr: 1.66, As: 2.18
Metallic radius Cr: 1.17 Å
Ionic radius Cr3+: 0.76 Å, As3−: 1.4 Å
Covalent radius Cr: 1.20 Å, As: 1.25 Å

Metallic chromium (bcc) has a Cr-Cr distance of 2.5 Å.

i) What types of interstitial positions can you find in the NiAs-type structure?

j) On the basis of what you know about the NiAs-type structure, discuss whether or not the non-stoichiometric composition Cr1.10As can exist.




Créer un tableau dynamique à 2 dimensions dans une structure en C99. sujet

jeudi 27 mars 2014




Bonjour, :lol:

Tout est dans le titre, ou presque.

Je suis sous Windows 8.1, IDE Code::Blocks 13.12 et je m'initie doucement au C et à la bibliothèque SDL 2.0.

Je suis en train d'essayer de retranscrire un Labyrinthe, que j'avais fait et qui fonctionne sous wxLua.

Mais là n'est pas le problème.

Pour le moment, je souhaiterais pouvoir créer une table dynamique à 2 dimensions dans une structure.

Mon compilateur utilise le C99, qui si j'ai bien compris me permet de ne pas utiliser "malloc".

Si je déclare mon tableau dynamique 2 dimensions dans une fonction (pas dans la structure), ça fonctionne.

Si je déclare un tableau dynamique à 1 dimension dans la structure, ça fonctionne.

A deux dimensions, ça plante, pas à la compilation mais au lancement du programme.

Dans ma structure j'ai bien défini mon tableau avec 2 étoiles: **t_cases;

Je définis bien ma variable de structure, j'appelle sans problème les autres variables.

Je ne sais plus où chercher... :aie:

Un petit bout de code, peut-être?


Code:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

Dans main.h

typedef struct s_labyrinthe s_labyrinthe;
struct s_labyrinthe
{
... ... ...
Uint16 **t_cases;
.... .... ....
};

Dans le main
int main(int argc, char *argv[])
{
s_labyrinthe data; // définition de la variable de structure

// définition des variables lignes colonnes.
Uint16 xCases = data.Longueur - data.dx;
Uint16 yCases = data.Largeur - data.dy;

data.t_cases[xCases][yCases]; // dans cette exemple je ne vais pas plus loin, c'est la que ça plante...
... ... ...

return 0;
}



Merci pour toute l'aide que vous pourrez m'apporter et bonne journée à vous.


Claude.




Effacer et détruire une std::list de pointeurs sur une structure sujet




Bonjour,

Je cherche le moyen de supprimer les éléments d'une std::list et de libérer la mémoire associée.
J'ai testé plusieurs moyens mais la mémoire n'est jamais libérée. :aie:
La structure utilisée contient des membres de type WCHAR de taille fixe.


Code:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

MASTRUCTURE * test3 ;
std::list<MASTRUCTURE *> test2;

for(int i = 0 ; i!= 1000 ;++i)
{
test3 = new MASTRUCTURE ();
test2.push_back(test3);
}


std::list<MASTRUCTURE *>::iterator itDeb1 = test2.begin();
while (itDeb1 != test2.end ())
{
delete (*itDeb1);
itDeb1 = test2.erase (itDeb1);
}


Merci d'avance,
Antoine