Produit intérieur et vecteur: Algèbre linéaire en Python <2>

algèbre linéaire

L'algèbre linéaire que vous apprendrez certainement dans une université scientifique est résumée de manière logique et facile à comprendre. Au fait, je l'ai implémenté en Python. Parfois, il peut être implémenté dans Julia. .. .. ・ Apprenez en exécutant avec Python! Nouveau manuel de mathématiques - Connaissances de base requises pour l'apprentissage automatique et l'apprentissage en profondeur - ・ Manuel mondial du MIT Introduction à l'algèbre linéaire étrange Comprendre l'algèbre linéaire basée sur et l'implémenter en python.

environnement

・ Cahier Jupyter ・ Langue: Python3, Julia1.4

Notation de formule

Comme il est décrit en notation Markdown, certaines parties représentent le produit, telles que *. Aussi, concernant les formules, la partie «Buckford» a pour but de souligner la lisibilité des formules, et ne fait pas partie du code.

Longueur et produit intérieur

v = (v₁, v₂) w = (w₁, w₂) Disons le vecteur.

produit intérieur

Le produit intérieur est exprimé en *** v ・ w ***. Il est également appelé *** produit scalaire ***. v ・ w = v₁w₁ + v₂ * w₂ Sera. A ce moment, si *** v · w = 0, ils sont orthogonaux ***.

longueur

La longueur est lorsque les vecteurs des produits internes sont les mêmes => au carré. *** (Produit intérieur v ・ v) = (Longueur au carré) ***

Lorsque v = (1, 2, 3) │v│² = 1² + 2² + 3² = 14 -> Cela représente *** le carré de la longueur *** Autrement dit, si ce carré est supprimé, il devient la longueur, donc │v│ = √14 Sera. Comme une autre façon d'écrire norm(v) = √14 Écrire. A partir de maintenant, écrivez avec norm (). À cet égard, il s'agit en fait du [Théorème des trois carrés](https://ja.wikipedia.org/wiki/%E3%83%94%E3%82%BF%E3%82%B4%E3%83%A9 C'est clair par rapport à% E3% 82% B9% E3% 81% AE% E5% AE% 9A% E7% 90% 86).

Vecteur d'unité

C'est un vecteur dont la longueur est de 1. Dans le cas du vecteur v ci-dessus, la longueur est √14, donc pour définir ceci à 1, divisez par √14. Autrement dit, si le vecteur est divisé par la longueur d'origine elle-même, il devient un vecteur unitaire. Lorsque le vecteur unitaire est u u = v/norm(v) A partir de là, u représente un vecteur de longueur 1 dans le même sens que v. Exprimé en termes concrets, quand v = (1, 2, 3), c'est norm (v) = √14, donc si vous divisez par cela, u = (1/√14, 2/√14, 3/√14) Il se trouve que

Maintenant, écrivons un programme pour calculer le produit interne et un programme pour calculer la longueur.

Python

import numpy as np
import math

v = list()
w = list()
#Entrée d'élément d'un vecteur avec trois éléments
for i in range(3):
    vvec = int(input())
    v.append(vvec)
for i in range(3):
    wvec = int(input())
    w.append(wvec)
#Conversion du contenu du tableau
v = np.array(v)
w = np.array(w)
#Calcul du produit intérieur
print(np.dot(v, w))
#Calcul de la longueur
normv = math.sqrt(np.dot(v, v))
print(normv)
#Parce que √ est utilisé lors du calcul
print("√",np.dot(v, v))

Julia est plus difficile que python, alors faites-en un code simple.

v = [1 2 3]
w = [3; 2; 1]
#Calcul du produit intérieur
v*w

#Longueur au carré
normv2 = sum(v.^ 2)
#longueur
sqrt(normv2)

En ce qui concerne le code de Julia, je suis obligé de l'apporter avec moi dans le calcul interne du produit, donc j'aimerais soulever un code un peu plus efficace plus tard.

finalement

La norme devrait être faite à l'origine, mais elle est omise car ce n'est qu'un aperçu.

Recommended Posts

Produit intérieur et vecteur: Algèbre linéaire en Python <2>
Valeurs authentiques et vecteurs propres: Algèbre linéaire en Python <7>
Indépendance et base linéaires: Algèbre linéaire en Python <6>
Matrice unitaire et matrice inverse: Algèbre linéaire en Python <4>
Calcul matriciel et équations linéaires: Algèbre linéaire en Python <3>
Première physique computationnelle: mécanique quantique et algèbre linéaire avec python.
Capturez des images d'algèbre linéaire avec python (translocation, matrice inverse, produit de matrices)
Introduction aux vecteurs: Algèbre linéaire en Python <1>
Recherche linéaire en Python
Pile et file d'attente en Python
Unittest et CI en Python
Régression linéaire en ligne en Python
Paquets qui gèrent le MIDI avec Python midi et pretty_midi
Différence entre list () et [] en Python
Différence entre == et est en python
Afficher les photos en Python et html
Algorithme de tri et implémentation en Python
Manipuler des fichiers et des dossiers en Python
À propos de Python et Cython dtype
Affectations et modifications des objets Python
Chiffrement avec Python: IND-CCA2 et RSA-OAEP
Hashing de données en R et Python
Puissance totale en Python (en utilisant functools)
Synthèse de fonctions et application en Python
Exporter et exporter des fichiers en Python
Inverser le pseudonyme plat et le katakana en Python2.7
Lire et écrire du texte en Python
[GUI en Python] Menu PyQt5 et barre d'outils-
Créer et lire des paquets de messages en Python
Liste des solveurs et modélisateurs de conception linéaire (LP) disponibles en Python
Chevauchement d'expressions régulières en Python et Java
Différence d'authenticité entre Python et JavaScript
Notes utilisant cChardet et python3-chardet dans Python 3.3.1.
Régression linéaire en Python (statmodels, scikit-learn, PyMC3)
Différences entre Ruby et Python dans la portée
Modulation et démodulation AM avec Python Partie 2
différence entre les instructions (instructions) et les expressions (expressions) en Python
Graphique à lignes pliées et ligne d'échelle en python
Régression linéaire en ligne en Python (estimation robuste)
Implémenter le filtre FIR en langage Python et C
Différences entre la syntaxe Python et Java
Vérifier et recevoir le port série en Python (vérification du port)
Rechercher et lire des vidéos YouTube avec Python
Différence entre @classmethod et @staticmethod en Python
Différence entre append et + = dans la liste Python
Différence entre non local et global en Python
Ecrire le fichier O_SYNC en C et Python
Gérer les "années et mois" en Python
Lire et écrire des fichiers JSON avec Python
Représentez facilement des données graphiques dans le shell et Python
Méthodes et champs privés en python [chiffrement]
Rechercher et vérifier la matrice inverse en Python
Retrouvez les termes généraux de la séquence de Tribonacci en algèbre linéaire et Python
Appelez sudo en Python et mot de passe à saisie automatique
Importation de modules et gestion des exceptions en python
Comment utiliser is et == en Python
Projet Euler # 1 "Multiple de 3 et 5" en Python
Matrice de Pauli et nombres quaternaires jumeaux considérés dans l'algèbre de Clifford