<commit_before>// @(#)root/mathcore:$Name:  $:$Id: LorentzVector.h,v 1.1 2005/06/24 18:54:24 brun Exp $
// Authors: <NAME>, <NAME>, <NAME>, <NAME>   06/2005 

/**********************************************************************
 *                                                                    *
 * Copyright (c) 2005 , LCG ROOT MathLib Team                         *
 *                                                                    *
 *                                                                    *
 **********************************************************************/

// Header file for class LorentzVector
// 
// Created by: moneta  at Tue May 31 17:06:09 2005
// 
// Last update: Jun 24 2005
// 
#ifndef ROOT_Math_LorentzVector 
#define ROOT_Math_LorentzVector 1


#include "MathCore/Cartesian4D.h"
#include "MathCore/DisplacementVector3Dfwd.h"
#ifdef LATER
// needed for definition of size_t
#include <stdlib.h>
#endif

#include "MathCore/GenVectorIO.h"

namespace ROOT { 

  namespace Math { 




    /** 
	Class describing a generic LorentzVector in the 4D space-time. 
	The metric used for the LorentzVector is (-,-,-,+).
	In the case of LorentzVector we don't distinguish the concept of points and vectors as in the 3D case, 
	since the main use case for 4D Vectors is to describe the kinematics of relativistic particles. A LorentzVector behaves like a DisplacementVector in 4D.       
    */

    template <class CoordSystem > 
    class LorentzVector { 

    public: 

      typedef typename CoordSystem::Scalar Scalar;
      typedef CoordSystem CoordinateType;<commit_msg>From Lorenzo:  use Vector3Dfwd which included the Cartesian3D forward declaration needed by LorentzVector<commit_after>// @(#)root/mathcore:$Name:  $:$Id: LorentzVector.h,v 1.2 2005/06/27 17:50:02 brun Exp $
// Authors: <NAME>, <NAME>, <NAME>, <NAME>   06/2005 

/**********************************************************************
 *                                                                    *
 * Copyright (c) 2005 , LCG ROOT MathLib Team                         *
 *                                                                    *
 *                                                                    *
 **********************************************************************/

// Header file for class LorentzVector
// 
// Created by: moneta  at Tue May 31 17:06:09 2005
// 
// Last update: Jun 24 2005
// 
#ifndef ROOT_Math_LorentzVector 
#define ROOT_Math_LorentzVector 1


#include "MathCore/Cartesian4D.h"
#include "MathCore/Vector3Dfwd.h"
#ifdef LATER
// needed for definition of size_t
#include <stdlib.h>
#endif

#include "MathCore/GenVectorIO.h"

namespace ROOT { 

  namespace Math { 




    /** 
	Class describing a generic LorentzVector in the 4D space-time. 
	The metric used for the LorentzVector is (-,-,-,+).
	In the case of LorentzVector we don't distinguish the concept of points and vectors as in the 3D case, 
	since the main use case for 4D Vectors is to describe the kinematics of relativistic particles. A LorentzVector behaves like a DisplacementVector in 4D.       
    */

    template <class CoordSystem > 
    class LorentzVector { 

    public: 

      typedef typename CoordSystem::Scalar Scalar;
      typedef CoordSystem CoordinateType;
{'fraction_non_alphanumeric': 0.16110436893203883, 'fraction_numerical': 0.03155339805825243, 'mean_word_length': 2.1701923076923078, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 12, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7304311', 'n_tokens_mistral': 988, 'n_tokens_neox': 799, 'n_words': 287}