diff --git a/GUI/coregui/Models/ParticleDistributionItem.cpp b/GUI/coregui/Models/ParticleDistributionItem.cpp
index 45434d9a5eb0fe7b66a12d51d9901a78fa142120..df9ec6db891dbf5b6f674999bc4cf12bef45c371 100644
--- a/GUI/coregui/Models/ParticleDistributionItem.cpp
+++ b/GUI/coregui/Models/ParticleDistributionItem.cpp
@@ -63,10 +63,11 @@ std::unique_ptr<ParticleDistribution> ParticleDistributionItem::createParticleDi
     if (!P_particle)
         throw GUIHelpers::Error("DomainObjectBuilder::buildParticleDistribution()"
                                 " -> Error! No correct particle defined");
-    auto distr_item = getGroupItem(ParticleDistributionItem::P_DISTRIBUTION);
+    auto distr_item = dynamic_cast<DistributionItem*>(
+                getGroupItem(ParticleDistributionItem::P_DISTRIBUTION));
     Q_ASSERT(distr_item);
 
-    auto P_distribution = TransformToDomain::createDistribution(*distr_item);
+    auto P_distribution = distr_item->createDistribution();
 
     auto prop
         = getItemValue(ParticleDistributionItem::P_DISTRIBUTED_PARAMETER).value<ComboProperty>();
diff --git a/GUI/coregui/Models/TransformFromDomain.cpp b/GUI/coregui/Models/TransformFromDomain.cpp
index 7fcfccb54adc7dd4d6ceaaed7ef89bf2fd0b9118..8f65fbc05c5c71f7e84fb09b4b0fa985e6c6a95c 100644
--- a/GUI/coregui/Models/TransformFromDomain.cpp
+++ b/GUI/coregui/Models/TransformFromDomain.cpp
@@ -744,7 +744,8 @@ void setDistribution(SessionItem* item, ParameterDistribution par_distr,
     if (pdfItem) {
         pdfItem->setItemValue(DistributionItem::P_NUMBER_OF_SAMPLES,
                                        (int)par_distr.getNbrSamples());
-        pdfItem->setItemValue(DistributionItem::P_SIGMA_FACTOR,
+        if(pdfItem->isTag(DistributionItem::P_SIGMA_FACTOR))
+            pdfItem->setItemValue(DistributionItem::P_SIGMA_FACTOR,
                                        par_distr.getSigmaFactor());
     }
 }
diff --git a/GUI/coregui/Models/TransformToDomain.cpp b/GUI/coregui/Models/TransformToDomain.cpp
index 9376eebbcd81f1154018a6c559737bf950af187e..b722592155a828a11c8ff9eb39491a79175643a2 100644
--- a/GUI/coregui/Models/TransformToDomain.cpp
+++ b/GUI/coregui/Models/TransformToDomain.cpp
@@ -142,14 +142,6 @@ std::unique_ptr<ParticleDistribution> TransformToDomain::createParticleDistribut
     return P_part_distr;
 }
 
-std::unique_ptr<IDistribution1D>
-TransformToDomain::createDistribution(const SessionItem& item)
-{
-    auto distr_item = dynamic_cast<const DistributionItem*>(&item);
-    Q_ASSERT(distr_item);
-    return distr_item->createDistribution();
-}
-
 std::unique_ptr<Instrument> TransformToDomain::createInstrument(const SessionItem& item)
 {
     Q_UNUSED(item);
diff --git a/GUI/coregui/Models/TransformToDomain.h b/GUI/coregui/Models/TransformToDomain.h
index 423ae56a222927a34c1da7ed8c58e23bcc01f59f..d9378960879b53b0e2994bceec478deb97923a01 100644
--- a/GUI/coregui/Models/TransformToDomain.h
+++ b/GUI/coregui/Models/TransformToDomain.h
@@ -36,7 +36,6 @@ class SessionItem;
 namespace TransformToDomain
 {
 BA_CORE_API_ std::unique_ptr<Beam> createBeam(const SessionItem& item);
-BA_CORE_API_ std::unique_ptr<IDistribution1D> createDistribution(const SessionItem& item);
 BA_CORE_API_ std::unique_ptr<IMaterial> createDomainMaterial(const SessionItem& item);
 BA_CORE_API_ std::unique_ptr<IParticle> createIParticle(const SessionItem& item);
 BA_CORE_API_ std::unique_ptr<Instrument> createInstrument(const SessionItem& item);