diff --git a/GUI/Model/FromCore/ItemizeSample.cpp b/GUI/Model/FromCore/ItemizeSample.cpp
index 043e6603f9e2accb31d2395e224f0406a9ba4fa5..9cda2a84a6681447f127b1d475beb2f65f6881e0 100644
--- a/GUI/Model/FromCore/ItemizeSample.cpp
+++ b/GUI/Model/FromCore/ItemizeSample.cpp
@@ -287,9 +287,18 @@ void set_Roughness(LayerItem* parent, const LayerInterface* top_interface)
     parent->roughnessSelection().setCertainItem(nullptr);
     if (top_interface) {
         const LayerRoughness* roughness = top_interface->roughness();
+
         if (roughness && !(roughness->allZero())) {
             auto* t = new BasicRoughnessItem(roughness->sigma(), roughness->hurst(),
                                              roughness->lateralCorrLength());
+
+            if (dynamic_cast<const ErfRoughness*>(roughness->roughnessModel()))
+                t->roughnessModelSelection().setCertainItem(new ErfRoughnessItem);
+            else if (dynamic_cast<const TanhRoughness*>(roughness->roughnessModel()))
+                t->roughnessModelSelection().setCertainItem(new TanhRoughnessItem);
+            else
+                ASSERT_NEVER;
+
             parent->roughnessSelection().setCertainItem(t);
         }
     }
diff --git a/GUI/Model/Job/ParameterTreeBuilder.cpp b/GUI/Model/Job/ParameterTreeBuilder.cpp
index 2fd0171a08759bade11e4bcb5804acc7e4fdf5cd..84e3fa993c9399bfca5de38e8797f8276e698e5a 100644
--- a/GUI/Model/Job/ParameterTreeBuilder.cpp
+++ b/GUI/Model/Job/ParameterTreeBuilder.cpp
@@ -112,7 +112,7 @@ void ParameterTreeBuilder::addSample()
         if (!layer->isTopLayer())
             if (auto* roughnessItem = layer->roughnessSelection().certainItem()) {
                 auto* roughnessLabel = new ParameterLabelItem("Top roughness", layerLabel);
-                for (auto* property : roughnessItem->roughnessProperties())
+                for (auto* property : roughnessItem->lateralProperties())
                     addParameterItem(roughnessLabel, *property);
             }
 
diff --git a/GUI/Model/Sample/RoughnessItems.h b/GUI/Model/Sample/RoughnessItems.h
index 217642ef78e2dc783a202cb644f9b77b05334029..c8e8a694b47b09731b749d00bb41a05929840664 100644
--- a/GUI/Model/Sample/RoughnessItems.h
+++ b/GUI/Model/Sample/RoughnessItems.h
@@ -26,7 +26,7 @@ public:
 
     virtual void writeTo(QXmlStreamWriter* w) const;
     virtual void readFrom(QXmlStreamReader* r);
-    virtual DoubleProperties roughnessProperties() = 0;
+    virtual DoubleProperties lateralProperties() = 0;
 
     PolyPtr<RoughnessModelItem, RoughnessModelCatalog>& roughnessModelSelection()
     {
@@ -59,7 +59,7 @@ public:
     void writeTo(QXmlStreamWriter* w) const override;
     void readFrom(QXmlStreamReader* r) override;
 
-    DoubleProperties roughnessProperties() override
+    DoubleProperties lateralProperties() override
     {
         return {&m_sigma, &m_hurst, &m_lateral_correlation_length};
     }
diff --git a/GUI/View/Sample/RoughnessForm.cpp b/GUI/View/Sample/RoughnessForm.cpp
index b1fef4297dbaa7f2d9ffd2b44b62c5f0b35c0375..10324021243edb655e077d3dd202836a1bdb9a73 100644
--- a/GUI/View/Sample/RoughnessForm.cpp
+++ b/GUI/View/Sample/RoughnessForm.cpp
@@ -63,7 +63,7 @@ void RoughnessForm::createRoughnessWidgets()
     RoughnessItem* roughness = m_rs.certainItem();
 
     if (auto* rsi = dynamic_cast<BasicRoughnessItem*>(roughness)) {
-        m_layout->addGroupOfValues("Parameters", rsi->roughnessProperties());
+        m_layout->addGroupOfValues("Parameters", rsi->lateralProperties());
         m_layout->addSelection(roughness->roughnessModelSelection());
     }
 }