Articles

Examen de Vibrations 27/12/2022 - Exercice 1

Image
  Exercice sur l'utilisation d'un isolateur. On donne une machine qui transmet une force importante au sol qu'on voudrait limiter à 10 KN à cause d'un balourd qui tourne à une certaine vitesse. On démontre qu'avec un seul isolateur, le problème ne pas être résolu. Avec deux isolateurs en série la force transmise est limite. La société ne disposant que d'un seul isolateur, la solution serait d'augmenter la masse totale. On calcule la masse à ajouter pour que la force transmise soit acceptable.

Manipulation des classeurs et des feuilles en VBA

Image
  Dans cette vidéo on traite la manipulation des classeurs et des feuilles par code. On voit notamment : comment ajouter un nouveau classeur à la collection Workbooks Récupérer le nom du classeur Balayer les feuilles d'un classeur en utilisant la collections Worksheets La différence entre les objets ThisWorkbook et ActiveWorkbook Comment ajouter une feuille en précisant sa position par rapport à une feuille Ajouter une feuille de type graphique La différence entres les collections Worksheets, Sheets et Charts Comment sauvegarder un classeur Codes Sources: Option Explicit Sub test() Dim f As Worksheet Debug.Print "Nom application " & Application.Name Debug.Print "Nom du classeur " & Application.ThisWorkbook.Name Debug.Print "Application installée en " & Application.Path Debug.Print "Nom du classeur " & Application.Workbooks(1).Name Debug.Print "Liste des " & Worksheets.Count & " feuilles du classeur ...

Gestion des Tableaux en VBA

Image
Les éléments vues dans cette vidéo sont: Option Base, Array, UBound, LBound, ReDim et Preserve. Code Source: Option Explicit Option Base 1 Sub test() Dim Trimestre(4) As String, i As Integer For i = 1 To 4     Trimestre(i) = "Trim " & i Next For i = 1 To 4     Debug.Print i & " " & Trimestre(i) Next End Sub Sub test1() Dim Trimestre(4) As String, i As Integer For i = LBound(Trimestre) To UBound(Trimestre)     Trimestre(i) = "Trim " & i Next For i = LBound(Trimestre) To UBound(Trimestre)     Debug.Print i & " " & Trimestre(i) Next End Sub Sub test2() Dim Trimestre() As Variant, i As Integer Trimestre = Array("Trim 1", "Trim 2", "Trim 3", "Trim 4") For i = LBound(Trimestre) To UBound(Trimestre)     Debug.Print i & " " & Trimestre(i) Next End Sub Sub test3() Dim Trimestre() As Variant, i As Integer Trimestre = Array("Trim 1", "Trim 2", "Trim 3...

Modules dans Excel VBA

Image
Le module est un conteneur qui peut regrouper plusieurs procédures et fonctions pouvant être appelées depuis toute procédure du projet.

Changer la langue de l'interface de Microsoft Excel

Image
Envi de suivre un tutoriel en anglais et vous disposez d'une version d'Excel en Français, pas de panique. Changer l'interface en toute langue est possible sans devoir tout réinstaller.

Quelques fonctions de manipulation de chaines de caractères

Image
Les fonctions traitées sont: String, Split, Mid, InStr, Len, Left, Right, UCase, LCase et Trim Code source: Option Explicit Sub test_split() Dim chemin As String, a As Variant, e As Variant chemin = ThisWorkbook.Path Debug.Print chemin Debug.Print String(100, "-") a = Split(chemin, "\") For Each e In a     Debug.Print e Next End Sub Sub test_split2() Dim chemin As String Dim i, ideb chemin = ThisWorkbook.Path Debug.Print chemin Debug.Print String(100, "-") i = 0 ideb = 0 Do     i = InStr(i + 1, chemin, "\")     Debug.Print Mid(chemin, ideb + 1, IIf(i = 0, Len(chemin), i - 1) - ideb)     ideb = i Loop Until i = 0 End Sub Sub test_leftright() Dim NC As String, nomfichier As String, ext As String NC = ThisWorkbook.Name nomfichier = Left(NC, InStr(NC, ".") - 1) ext = Right(NC, Len(NC) - InStr(NC, ".")) Debug.Print "Nom complet:" & NC & " Fichier:" & nomfichier & " ,extension:" & e...

Branchements conditionnels en VBA

Image
Dans cette vidéo on montre l'utilisation des instructions suivantes: If Then End If If Then Else End If IIF If Then ElseIf Else End If Select Case end select Code source: Option Explicit Sub test1() Dim i As Integer i = WorksheetFunction.RandBetween(0, 100) If i Mod 2 = 0 Then Beep: Debug.Print i & " est paire" End Sub Sub test2() Dim i As Integer i = WorksheetFunction.RandBetween(0, 100) If i Mod 2 = 0 Then     Debug.Print i & " est paire" Else     Debug.Print i & " est impaire" End If End Sub Sub test3() Dim i As Integer i = WorksheetFunction.RandBetween(0, 100) Debug.Print i & " est " & IIf(i Mod 2 = 0, "paire", "impaire") End Sub Sub test4() Dim i As Integer i = WorksheetFunction.RandBetween(0, 100) Debug.Print i & " est " & IIf(i Mod 2 = 0, "", "im") & "paire" End Sub Sub test5() Dim i i = InputBox("Taper un nombre entre 0 et 100") If Is...

Les boucles dans VBA

Image
Les différentes façons d'exprimer tant que condition répéter. Les 5 façons sont : While cond ... Wend Do ... while cond Loop Do ... Loop while cond Do until cond ... Loop Do ... Loop until cond Code source: Option Explicit Function f(x As Single) As Single 'f=3*x^3 + 3*x^2 - 9*x f = x ^ 3 + 3 * x ^ 2 - 9 * x End Function Function df(x As Single) As Single 'f'=9*x^2 + 6*x - 9 df = 3 * x ^ 2 + 6 * x - 9 End Function Function newton(x0 As Single) As Single Dim pre As Single Dim cond As Boolean pre = 0.001 cond = False If Abs(f(x0)) > pre Then     Do         'Do Until Not cond             'Do                 'Do While cond                     'While cond                         If df(x0) = 0 Then                         ...

Utilisation des fonctions InputBox et msgBox en VBA

Image
Toutes les utilisations possibles des fonctions InputBox et msgBox pour interagir avec l'utilisateur. Code source Option Explicit Sub test1() Dim nom As String nom = InputBox("Donner votre nom") Debug.Print "nom tappé: " & nom End Sub Sub test2() Dim nom As String nom = InputBox("Donner votre nom", "EMI", "Mohamed") If nom = "" Then     MsgBox "Attention nom vide" Else     Debug.Print "nom tappé: " & nom End If End Sub Sub test3() Dim nom As String Dim reponse As Integer Dim cond As Boolean cond = True Do While cond     nom = InputBox("Donner votre nom", "EMI", "Mohamed")     If nom = "" Then         reponse = MsgBox("Attention nom vide, vous voulez réessayer?", _         vbYesNo + vbInformation + vbDefaultButton2 + vbMsgBoxHelpButton, "EMI") '        If reponse = vbYes Then '            cond = True '        Else '    ...

Types de variables en VBA

Image
Les variables vues dans cette vidéo sont: Integer, Long, LongLong, LongPtr, Currency, Decimal, Single, Double, Objet, Date, Type défini par l'utilisateur et Collection Code source Option Explicit Const pi As Single = 3.1415926 Sub test_integer() Dim i 'For i = 0 To 100000 Step 10000 '    Debug.Print i 'Next Debug.Print VarType(i) i = 0 Debug.Print VarType(i) i = "0" Debug.Print VarType(i) End Sub Sub test_decimal() Dim d As Variant d = CDec(100 / 3) Debug.Print d d = CDec("1,12345678") Debug.Print d End Sub Sub test_objet() Dim Feuille As Object Dim Nom As String * 50 Set Feuille = Worksheets(1) Nom = "Nom fichier """ & Feuille.Name & """" Debug.Print Nom Nom = "Nom fichier " & Chr(34) & Feuille.Name & Chr(34) Debug.Print Nom End Sub Sub test_date() Dim d1 As Date, d2 As Date d1 = 1.86 Debug.Print d1 Debug.Print Format(d1 + 1, "m/dd/yyyy") Debug.Print Format(d1 + 1, ...

Vibration d'une poutre simplement appuyée avec une masse concentrée au milieu

Image
Plusieurs méthodes sont utilisées pour trouver les modes propres d'une poutre simplement appuyée aux extrémités et ayant une masse concentrée au milieu. Les méthodes utilisées sont: La méthode analytique L'approximation par un système à un degré de liberté La méthode de Rayleigh La méthode de Dunkerley La méthode des éléments finis (version h)

حقيقة إعتناق مورغان فريمان الإسلامحقيقة إعتناق مورغان فريمان الإسلام

Image
تداول العديد من رواد مواقع التواصل الاجتماعي العديد من المنشورات التي تشير إلى إعتناق مورغان فريمان الإسلام عقب افتتاح كأس العالم 2022، نبين في هذا الفيديو زيف الخبر

Response of a damped mass spring system excited by various conditions on...

Image
In this video, we will see how to find the response of a damped mass spring system excited by various conditions.   The governing equation is: md2x/dt^2+cdx/dt + kx=f Where m is the mass, c the viscous damping coefficient and k the spring stiffness. This gives the acceleration d2x/dt^2=(f - cdx/dt - kx)/m Using various blocks, we will build our model piece by piece. From a function x, we get dx/dt  by differentiating with respect to time . Then we multiply dx/dt  by c and x by k and sum the two expressions. Adding the external force and subtracting cdx/dt+kx  then dividing by m we should get the acceleration d2x/dt^2  which is also the result of differentiating dx/dt  with respect to time Working with integrators is better than with differentiator as in the former we could use the initial condition which gives better control on the solution obtained. The model becomes: On Simulink, we will need the following blocks: two integrators, 3 amp...

Solving differential equations on Simulink

Image
  Simulink capability of solving differential equations is put to the test. A simple equation with known solution is solved on Simulink.

Fractale de Newton sur Excel

Image
 Script VBA  Sub drawfractal() Dim c As Variant n = 201 xmax = 1.2 xmin = -1.2 ymax = 1.2 ymin = -1.2 For i = 1 To n     For j = 1 To n         c = WorksheetFunction.Complex((ymax - ymin) * (j - 1) / (n - 1) + ymin, (xmax - xmin) * (i - 1) / (n - 1) + xmin)         If c = WorksheetFunction.Complex(0, 0) Then         Else             Call iterate(c, Range("A1").Offset(i - 1, j - 1))         End If     Next Next End Sub Sub iterate(c As Variant, cel As Range) k = 1 cond = True Z0 = c While cond = True    Z = WorksheetFunction.ImSub(Z0, WorksheetFunction.ImDiv(WorksheetFunction.ImSub(WorksheetFunction.ImPower(Z0, 3), 1), WorksheetFunction.ImProduct(3, WorksheetFunction.ImPower(Z0, 2))))    If WorksheetFunction.ImAbs(WorksheetFunction.ImSub(Z, WorksheetFunction.Complex(1, 0))) < 0.001 Then         cond = False ...

Fractale de Newton sur Geogebra

Image
On génère la fractale de Newton sur Geogebra. La méthode de Newton Raphson est appliquée pour résoudre l'équation complexe Z^3-1=0. Les pixels sont coloriés en fonction de la solution finale obtenue en lançant la méthode à partir du pixel considéré comme nombre complexe

Fractale de Mandelbrot sur Excel

Image
Comment générer la fameuse fractale de Mandelbrot sur une feuille Excel Scripts VBA Sub drawMandelbrot() Dim c As Variant n = 201 xmax = 1.2 xmin = -1.2 ymax = 0.6 ymin = -1.5 For i = 1 To n     For j = 1 To n         c = WorksheetFunction.Complex((ymax - ymin) * (j - 1) / (n - 1) + ymin, (xmax - xmin) * (i - 1) / (n - 1) + xmin)         Call iterate(c, Range("A1").Offset(i - 1, j - 1))     Next Next End Sub Sub iterate(c As Variant, cel As Range) k = 1 cond = True Z = 0 While cond = True     'Zn+1=Zn^2+c     Z = WorksheetFunction.ImSum(WorksheetFunction.ImProduct(Z, Z), c)     If WorksheetFunction.ImAbs(Z) > 2 Then         cond = False     Else         k = k + 1     End If     If k > 255 Then         cond = False         cel.Interior.Color = vbBlack     End If Wend End Sub

Triangle de Sierpinski sur Excel

Image
Utiliser une feuille Excel pour générer le triangle de Sierpinski Vidéo sur @SparksMaths Code VBA Sub draw() Dim cel1 As Range Dim cel2 As Range Dim cel3 As Range Dim cel As Range Dim i As Integer Dim j As Integer Dim l As Single Dim Phi As Single Set cel1 = Range("A1") Set cel2 = Range("A1").Offset(0, 200) Set cel3 = Range("A1").Offset(100, 100) cel1.Interior.Color = vbRed cel2.Interior.Color = vbBlue cel3.Interior.Color = vbGreen Set cel = cel1.Offset(25, 100) cel.Interior.Color = vbBlack For i = 1 To 10000     j = Int((3 - 1 + 1) * Rnd() + 1)     Select Case j         Case 1             l = Sqr((cel1.Column - cel.Column) ^ 2 + (cel1.Row - cel.Row) ^ 2)             Phi = WorksheetFunction.Atan2((cel1.Column - cel.Column), (cel1.Row - cel.Row))         Case 2             l = Sqr((cel2.Column - cel.Column) ^ 2 + (cel2.Row - cel.Row) ^ 2) ...

Méthode de Jacobi (vibrations)

Image
Application de la méthode de Jacobi pour trouver les valeurs et vecteurs propres d'un système à plusieurs degrés de liberté en appliquant des rotations successives.

Méthode de déflation

Image
Application de la méthode de déflation et de la puissance itérée pour trouver les modes supérieurs