diff --git a/dG3D/src/dG3DMaterialLaw.cpp b/dG3D/src/dG3DMaterialLaw.cpp
index 630001205bd71a311f51535f053d04280ca3a7f3..d271db0cdc8300a0bc05106c0765dd62321c5910 100644
--- a/dG3D/src/dG3DMaterialLaw.cpp
+++ b/dG3D/src/dG3DMaterialLaw.cpp
@@ -1907,7 +1907,8 @@ torchANNBasedDG3DMaterialLaw::torchANNBasedDG3DMaterialLaw(const int num, const
                 _EXXmean(EXXmean), _EXXstd(EXXstd), _EXYmean(EXYmean), _EXYstd(EXYstd), _EYYmean(EYYmean), _EYYstd(EYYstd), _EYZmean(EYZmean),
                 _EYZstd(EYZstd), _EZZmean(EZZmean), _EZZstd(EZZstd), _EZXmean(EZXmean), _EZXstd(EZXstd), _SXXmean(SXXmean), _SXXstd(SXXstd), _SXYmean(SXYmean),
                 _SXYstd(SXYstd), _SYYmean(SYYmean), _SYYstd(SYYstd), _SYZmean(SYZmean), _SYZstd(SYZstd), _SZZmean(SZZmean), _SZZstd(SZZstd),
-                _SZXmean(SZXmean), _SZXstd(SZXstd), _tangentByPerturbation(pert), _pertTol(tol), _kinematicInput(EGL)
+                _SZXmean(SZXmean), _SZXstd(SZXstd), _tangentByPerturbation(pert), _pertTol(tol), _kinematicInput(EGL),
+                _Radiusmean(-1.0), _Radiusstd(-1.0), _CellSizemean(-1.0), _CellSizestd(-1.0) // Constructor initializes these last 4 Class parameters, specific to Lattices on negative values @Mohib
 {
 #if defined(HAVE_TORCH)
     try{
@@ -1950,13 +1951,39 @@ torchANNBasedDG3DMaterialLaw::torchANNBasedDG3DMaterialLaw(const int num, const
 
 }
 
+// Constructor definition for Lattice based torch (.pt) model @Mohib
+torchANNBasedDG3DMaterialLaw::torchANNBasedDG3DMaterialLaw(const int num, const double rho,
+                                                           const int numberOfInput, const int numInternalVars, const char* nameTorch,
+                                                           const double Radiusmean, const double Radiusstd,
+                                                           const double CellSizemean, const double CellSizestd,
+                                                           const double EXXmean, const double EXXstd, const double EYYmean, const double EYYstd, const double EZZmean, const double EZZstd,
+                                                           const double EXYmean, const double EXYstd, const double EYZmean, const double EYZstd, const double EXZmean, const double EXZstd,
+                                                           const double SXXmean, const double SXXstd, const double SYYmean, const double SYYstd, const double SZZmean, const double SZZstd,
+                                                           const double SXYmean, const double SXYstd, const double SYZmean, const double SYZstd, const double SXZmean, const double SXZstd,
+                                                           bool pert, double tol): torchANNBasedDG3DMaterialLaw(num, rho, numberOfInput, numInternalVars, nameTorch,
+                                                                                                                EXXmean,  EXXstd,  EXYmean, EXYstd,  EYYmean,  EYYstd,
+                                                                                                                EYZmean,  EYZstd,  EZZmean, EZZstd, EXZmean,EXZstd,
+                                                                                                                SXXmean,  SXXstd,  SXYmean, SXYstd, SYYmean,  SYYstd,
+                                                                                                                SYZmean,  SYZstd,  SZZmean, SZZstd, SXZmean,SXZstd,
+                                                                                                                pert, tol)
+{
+
+  _Radiusmean = Radiusmean;
+  _Radiusstd = Radiusstd;
+  _CellSizemean = CellSizemean;
+  _CellSizestd = CellSizestd;
+
+}
+
+
 torchANNBasedDG3DMaterialLaw::torchANNBasedDG3DMaterialLaw(const torchANNBasedDG3DMaterialLaw& src):
       dG3DMaterialLaw(src), _numberOfInput(src._numberOfInput), _numberOfInternalVariables(src._numberOfInternalVariables),
                 _EXXmean(src._EXXmean), _EXXstd(src._EXXstd), _EXYmean(src._EXYmean), _EXYstd(src._EXYstd), _EYYmean(src._EYYmean), _EYYstd(src._EYYstd),
                 _EYZmean(src._EYZmean), _EYZstd(src._EYZstd), _EZZmean(src._EZZmean), _EZZstd(src._EZZstd), _EZXmean(src._EZXmean), _EZXstd(src._EZXstd),
                 _SXXmean(src._SXXmean), _SXXstd(src._SXXstd), _SXYmean(src._SXYmean), _SXYstd(src._SXYstd), _SYYmean(src._SYYmean), _SYYstd(src._SYYstd),
                 _SYZmean(src._SYZmean), _SYZstd(src._SYZstd), _SZZmean(src._SZZmean), _SZZstd(src._SZZstd), _SZXmean(src._SZXmean), _SZXstd(src._SZXstd),
-                _tangentByPerturbation(src._tangentByPerturbation),_pertTol(src._pertTol), _kinematicInput(src._kinematicInput)
+                _tangentByPerturbation(src._tangentByPerturbation),_pertTol(src._pertTol), _kinematicInput(src._kinematicInput),
+                _Radiusmean(src._Radiusmean), _Radiusstd(src._Radiusstd), _CellSizemean(src._CellSizemean), _CellSizestd(src._CellSizestd) // Constructor initializes these last 4 Class parameters, specific to Lattice based torch model @Mohib
 {
 #if defined(HAVE_TORCH)
        module = src.module;
diff --git a/dG3D/src/dG3DMaterialLaw.h b/dG3D/src/dG3DMaterialLaw.h
index 234321640135c11b24053a1687bf9c35e0bb1a8a..b327c39a32956434bfb50b77a2f95afae4965df4 100644
--- a/dG3D/src/dG3DMaterialLaw.h
+++ b/dG3D/src/dG3DMaterialLaw.h
@@ -502,6 +502,13 @@ class torchANNBasedDG3DMaterialLaw : public dG3DMaterialLaw{
     double _SZXmean;
     double _SZXstd;
 
+    // Lattice Parameter inside of torch (.pt) model @ Mohib
+    double _Radiusmean;
+    double _Radiusstd;
+
+    double _CellSizemean;
+    double _CellSizestd;
+
     bool _tangentByPerturbation;
     double _pertTol;
 #if defined(HAVE_TORCH)
@@ -527,6 +534,17 @@ class torchANNBasedDG3DMaterialLaw : public dG3DMaterialLaw{
                 const double SXYstd, const double SYYmean, const double SYYstd, const double SYZmean, const double SYZstd, const double SZZmean,
                 const double SZZstd, const double SZXmean, const double SZXstd, bool pert=false, double tol = 1e-5);
 
+        // Constructor declaration for Lattice based torch model @Mohib
+        torchANNBasedDG3DMaterialLaw(const int num, const double rho,
+                                     const int numberOfInput, const int numInternalVars, const char* nameTorch,
+                                     const double Radiusmean, const double Radiusstd,
+                                     const double CellSizemean, const double CellSizestd,
+                                     const double EXXmean, const double EXXstd, const double EYYmean, const double EYYstd, const double EZZmean, const double EZZstd,
+                                     const double EXYmean, const double EXYstd, const double EYZmean, const double EYZstd, const double EXZmean, const double EXZstd,
+                                     const double SXXmean, const double SXXstd, const double SYYmean, const double SYYstd, const double SZZmean, const double SZZstd,
+                                     const double SXYmean, const double SXYstd, const double SYZmean, const double SYZstd, const double SXZmean, const double SXZstd,
+                                     bool pert=false, double tol = 1e-5);
+
 		void setKinematicInput(const int i);
     #ifndef SWIG
 		torchANNBasedDG3DMaterialLaw(const torchANNBasedDG3DMaterialLaw& src);