Merge pull request #10935 from marioalexis84/Fem-force
Fem: Force constraint overhaul
This commit is contained in:
@@ -42,6 +42,9 @@ ConstraintForce::ConstraintForce()
|
||||
"ConstraintForce",
|
||||
(App::PropertyType)(App::Prop_None),
|
||||
"Element giving direction of constraint");
|
||||
// RefDispl must get a global scope, see
|
||||
Direction.setScope(App::LinkScope::Global);
|
||||
|
||||
ADD_PROPERTY(Reversed, (0));
|
||||
ADD_PROPERTY_TYPE(Points,
|
||||
(Base::Vector3d()),
|
||||
@@ -53,8 +56,9 @@ ConstraintForce::ConstraintForce()
|
||||
"ConstraintForce",
|
||||
App::PropertyType(App::Prop_ReadOnly | App::Prop_Output),
|
||||
"Direction of arrows");
|
||||
naturalDirectionVector =
|
||||
Base::Vector3d(0, 0, 0); // by default use the null vector to indicate an invalid value
|
||||
|
||||
// by default use the null vector to indicate an invalid value
|
||||
naturalDirectionVector = Base::Vector3d(0, 0, 0);
|
||||
Points.setValues(std::vector<Base::Vector3d>());
|
||||
}
|
||||
|
||||
@@ -63,6 +67,21 @@ App::DocumentObjectExecReturn* ConstraintForce::execute()
|
||||
return Constraint::execute();
|
||||
}
|
||||
|
||||
void ConstraintForce::handleChangedPropertyType(Base::XMLReader& reader,
|
||||
const char* TypeName,
|
||||
App::Property* prop)
|
||||
{
|
||||
// property Force had App::PropertyFloat, was changed to App::PropertyForce
|
||||
if (prop == &Force && strcmp(TypeName, "App::PropertyFloat") == 0) {
|
||||
App::PropertyFloat ForceProperty;
|
||||
// restore the PropertyFloat to be able to set its value
|
||||
ForceProperty.Restore(reader);
|
||||
// force uses m while FreeCAD uses internally mm thus
|
||||
// e.g. "2.5" must become 2500 to result in 2.5 N
|
||||
Force.setValue(ForceProperty.getValue() * 1000);
|
||||
}
|
||||
}
|
||||
|
||||
void ConstraintForce::onChanged(const App::Property* prop)
|
||||
{
|
||||
// Note: If we call this at the end, then the arrows are not oriented correctly initially
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
/// Constructor
|
||||
ConstraintForce();
|
||||
|
||||
App::PropertyFloat Force;
|
||||
App::PropertyForce Force;
|
||||
App::PropertyLinkSub Direction;
|
||||
App::PropertyBool Reversed;
|
||||
// Read-only (calculated values). These trigger changes in the ViewProvider
|
||||
@@ -55,6 +55,9 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
void handleChangedPropertyType(Base::XMLReader& reader,
|
||||
const char* TypeName,
|
||||
App::Property* prop) override;
|
||||
void onChanged(const App::Property* prop) override;
|
||||
|
||||
private:
|
||||
|
||||
@@ -459,8 +459,8 @@ void CmdFemConstraintForce::activated(int)
|
||||
"App.activeDocument().addObject(\"Fem::ConstraintForce\",\"%s\")",
|
||||
FeatName.c_str());
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Force = 1.0",
|
||||
FeatName.c_str()); // OvG: set default not equal to 0
|
||||
"App.activeDocument().%s.Force = \"1 N\"",
|
||||
FeatName.c_str()); // OvG: set default to 1 N
|
||||
doCommand(Doc,
|
||||
"App.activeDocument().%s.Reversed = False",
|
||||
FeatName.c_str()); // OvG: set default to False
|
||||
|
||||
@@ -57,35 +57,12 @@ TaskFemConstraintForce::TaskFemConstraintForce(ViewProviderFemConstraintForce* C
|
||||
ui->setupUi(proxy);
|
||||
QMetaObject::connectSlotsByName(this);
|
||||
|
||||
// create a context menu for the listview of the references
|
||||
createDeleteAction(ui->listReferences);
|
||||
connect(deleteAction, &QAction::triggered, this, &TaskFemConstraintForce::onReferenceDeleted);
|
||||
connect(ui->spinForce,
|
||||
qOverload<double>(&Gui::QuantitySpinBox::valueChanged),
|
||||
this,
|
||||
&TaskFemConstraintForce::onForceChanged);
|
||||
connect(ui->buttonDirection,
|
||||
&QToolButton::clicked,
|
||||
this,
|
||||
&TaskFemConstraintForce::onButtonDirection);
|
||||
connect(ui->checkReverse, &QCheckBox::toggled, this, &TaskFemConstraintForce::onCheckReverse);
|
||||
connect(ui->listReferences,
|
||||
&QListWidget::itemClicked,
|
||||
this,
|
||||
&TaskFemConstraintForce::setSelection);
|
||||
|
||||
this->groupLayout()->addWidget(proxy);
|
||||
|
||||
// Temporarily prevent unnecessary feature recomputes
|
||||
ui->spinForce->blockSignals(true);
|
||||
ui->listReferences->blockSignals(true);
|
||||
ui->buttonDirection->blockSignals(true);
|
||||
ui->checkReverse->blockSignals(true);
|
||||
|
||||
// Get the feature data
|
||||
Fem::ConstraintForce* pcConstraint =
|
||||
static_cast<Fem::ConstraintForce*>(ConstraintView->getObject());
|
||||
double f = pcConstraint->Force.getValue();
|
||||
auto force = pcConstraint->Force.getQuantityValue();
|
||||
std::vector<App::DocumentObject*> Objects = pcConstraint->References.getValues();
|
||||
std::vector<std::string> SubElements = pcConstraint->References.getSubValues();
|
||||
std::vector<std::string> dirStrings = pcConstraint->Direction.getSubValues();
|
||||
@@ -96,9 +73,10 @@ TaskFemConstraintForce::TaskFemConstraintForce(ViewProviderFemConstraintForce* C
|
||||
bool reversed = pcConstraint->Reversed.getValue();
|
||||
|
||||
// Fill data into dialog elements
|
||||
ui->spinForce->setUnit(pcConstraint->Force.getUnit());
|
||||
ui->spinForce->setMinimum(0);
|
||||
ui->spinForce->setMaximum(FLOAT_MAX);
|
||||
ui->spinForce->setValue(f);
|
||||
ui->spinForce->setValue(force);
|
||||
ui->listReferences->clear();
|
||||
for (std::size_t i = 0; i < Objects.size(); i++) {
|
||||
ui->listReferences->addItem(makeRefText(Objects[i], SubElements[i]));
|
||||
@@ -109,15 +87,25 @@ TaskFemConstraintForce::TaskFemConstraintForce(ViewProviderFemConstraintForce* C
|
||||
ui->lineDirection->setText(dir.isEmpty() ? QString() : dir);
|
||||
ui->checkReverse->setChecked(reversed);
|
||||
|
||||
ui->spinForce->blockSignals(false);
|
||||
ui->listReferences->blockSignals(false);
|
||||
ui->buttonDirection->blockSignals(false);
|
||||
ui->checkReverse->blockSignals(false);
|
||||
// create a context menu for the listview of the references
|
||||
createDeleteAction(ui->listReferences);
|
||||
connect(deleteAction, &QAction::triggered, this, &TaskFemConstraintForce::onReferenceDeleted);
|
||||
connect(ui->buttonDirection,
|
||||
&QToolButton::clicked,
|
||||
this,
|
||||
&TaskFemConstraintForce::onButtonDirection);
|
||||
connect(ui->checkReverse, &QCheckBox::toggled, this, &TaskFemConstraintForce::onCheckReverse);
|
||||
connect(ui->listReferences,
|
||||
&QListWidget::itemClicked,
|
||||
this,
|
||||
&TaskFemConstraintForce::setSelection);
|
||||
|
||||
// Selection buttons
|
||||
buttonGroup->addButton(ui->btnAdd, (int)SelectionChangeModes::refAdd);
|
||||
buttonGroup->addButton(ui->btnRemove, (int)SelectionChangeModes::refRemove);
|
||||
|
||||
ui->spinForce->bind(pcConstraint->Force);
|
||||
|
||||
updateUI();
|
||||
}
|
||||
|
||||
@@ -259,13 +247,6 @@ void TaskFemConstraintForce::removeFromSelection()
|
||||
updateUI();
|
||||
}
|
||||
|
||||
void TaskFemConstraintForce::onForceChanged(double f)
|
||||
{
|
||||
Fem::ConstraintForce* pcConstraint =
|
||||
static_cast<Fem::ConstraintForce*>(ConstraintView->getObject());
|
||||
pcConstraint->Force.setValue(f);
|
||||
}
|
||||
|
||||
void TaskFemConstraintForce::onReferenceDeleted()
|
||||
{
|
||||
TaskFemConstraintForce::removeFromSelection(); // OvG: On right-click face is automatically
|
||||
@@ -359,9 +340,9 @@ void TaskFemConstraintForce::onCheckReverse(const bool pressed)
|
||||
pcConstraint->Reversed.setValue(pressed);
|
||||
}
|
||||
|
||||
double TaskFemConstraintForce::getForce() const
|
||||
const std::string TaskFemConstraintForce::getForce() const
|
||||
{
|
||||
return ui->spinForce->value().getValue();
|
||||
return ui->spinForce->value().getSafeUserString().toStdString();
|
||||
}
|
||||
|
||||
const std::string TaskFemConstraintForce::getReferences() const
|
||||
@@ -467,21 +448,10 @@ bool TaskDlgFemConstraintForce::accept()
|
||||
static_cast<const TaskFemConstraintForce*>(parameter);
|
||||
|
||||
try {
|
||||
// Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "FEM force constraint changed"));
|
||||
|
||||
if (parameterForce->getForce() <= 0) {
|
||||
QMessageBox::warning(parameter,
|
||||
tr("Input error"),
|
||||
tr("Please specify a force greater than 0"));
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
QByteArray num = QByteArray::number(parameterForce->getForce());
|
||||
Gui::Command::doCommand(Gui::Command::Doc,
|
||||
"App.ActiveDocument.%s.Force = %s",
|
||||
name.c_str(),
|
||||
num.data());
|
||||
}
|
||||
Gui::Command::doCommand(Gui::Command::Doc,
|
||||
"App.ActiveDocument.%s.Force = \"%s\"",
|
||||
name.c_str(),
|
||||
parameterForce->getForce().c_str());
|
||||
|
||||
std::string dirname = parameterForce->getDirectionName().data();
|
||||
std::string dirobj = parameterForce->getDirectionObject().data();
|
||||
|
||||
@@ -55,7 +55,7 @@ public:
|
||||
explicit TaskFemConstraintForce(ViewProviderFemConstraintForce* ConstraintView,
|
||||
QWidget* parent = nullptr);
|
||||
~TaskFemConstraintForce() override;
|
||||
double getForce() const;
|
||||
const std::string getForce() const;
|
||||
const std::string getReferences() const override;
|
||||
const std::string getDirectionName() const;
|
||||
const std::string getDirectionObject() const;
|
||||
@@ -63,7 +63,6 @@ public:
|
||||
|
||||
private Q_SLOTS:
|
||||
void onReferenceDeleted();
|
||||
void onForceChanged(double);
|
||||
void onButtonDirection(const bool pressed = false);
|
||||
void onCheckReverse(bool);
|
||||
void addToSelection() override;
|
||||
|
||||
@@ -90,12 +90,18 @@
|
||||
<item>
|
||||
<widget class="QLabel" name="labelForce">
|
||||
<property name="text">
|
||||
<string>Load [N]</string>
|
||||
<string>Force</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="Gui::QuantitySpinBox" name="spinForce">
|
||||
<property name="unit" stdset="0">
|
||||
<string>N</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>500.000000000000000</double>
|
||||
</property>
|
||||
|
||||
@@ -103,7 +103,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "FemConstraintForce")
|
||||
con_force.References = [(geom_obj, "Face6")]
|
||||
con_force.Force = 40000.0
|
||||
con_force.Force = "40000.0 N"
|
||||
con_force.Direction = (geom_obj, ["Edge5"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -161,14 +161,14 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraints force
|
||||
con_force_in_x = ObjectsFem.makeConstraintForce(doc, "Force_in_X")
|
||||
con_force_in_x.References = [(geom_obj, ("Edge3", "Edge7", "Edge8", "Edge12"))]
|
||||
con_force_in_x.Force = 155350
|
||||
con_force_in_x.Force = "155350 N"
|
||||
con_force_in_x.Reversed = False
|
||||
con_force_in_x.Direction = (geom_obj, ["Edge4"])
|
||||
analysis.addObject(con_force_in_x)
|
||||
|
||||
con_force_rev_x = ObjectsFem.makeConstraintForce(doc, "Force_rev_X")
|
||||
con_force_rev_x.References = [(geom_obj, ("Edge1", "Edge5", "Edge10", "Edge14"))]
|
||||
con_force_rev_x.Force = 155350
|
||||
con_force_rev_x.Force = "155350 N"
|
||||
con_force_rev_x.Reversed = True
|
||||
con_force_rev_x.Direction = (geom_obj, ["Edge4"])
|
||||
analysis.addObject(con_force_rev_x)
|
||||
|
||||
@@ -141,7 +141,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Edge3")]
|
||||
con_force.Force = 17162160 # 17'162.16 N
|
||||
con_force.Force = "17162160 N"
|
||||
con_force.Reversed = True
|
||||
con_force.Direction = (geom_obj, ["Edge2"])
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -122,7 +122,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Face6")]
|
||||
con_force.Force = 21
|
||||
con_force.Force = "21 N"
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
|
||||
@@ -115,7 +115,7 @@ def setup_cantilever_base_edge(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Vertex2")]
|
||||
con_force.Force = 9000000.0 # 9'000'000 N = 9 MN
|
||||
con_force.Force = "9000000.0 N" # 9 MN
|
||||
con_force.Direction = (load_line, ["Edge1"])
|
||||
con_force.Reversed = False
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -100,7 +100,7 @@ def setup_cantilever_base_face(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Edge3")]
|
||||
con_force.Force = 9000000.0 # 9'000'000 N = 9 MN
|
||||
con_force.Force = "9000000.0 N"
|
||||
con_force.Direction = (geom_obj, ["Edge3"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -73,7 +73,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Face2")]
|
||||
con_force.Force = 9000000.0
|
||||
con_force.Force = "9000000.0 N"
|
||||
con_force.Direction = (geom_obj, ["Edge5"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -78,7 +78,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geom_obj, "Vertex7"),
|
||||
(geom_obj, "Vertex8")
|
||||
]
|
||||
con_force.Force = 9000000.0
|
||||
con_force.Force = "9000000.0 N"
|
||||
con_force.Direction = (doc.Box, ["Edge5"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -182,7 +182,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
# TODO use point of tube boolean fragment
|
||||
con_force.References = [(force_point, "Vertex1")]
|
||||
con_force.Force = 5000.0
|
||||
con_force.Force = "5000.0 N"
|
||||
con_force.Direction = (load_line, ["Edge1"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -142,7 +142,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Edge2")]
|
||||
con_force.Force = 10000.0 # 10000 N = 10 kN
|
||||
con_force.Force = "10000.0 N" # 10 kN
|
||||
con_force.Direction = (geom_obj, ["Edge2"])
|
||||
con_force.Reversed = False
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -149,7 +149,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Face1")]
|
||||
con_force.Force = 2500.0 # 2500 N = 2.5 kN
|
||||
con_force.Force = "2500.0 N" # 2.5 kN
|
||||
con_force.Direction = (load_line, ["Edge1"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -183,7 +183,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(doc.Box4, "Face6"),
|
||||
(doc.Box5, "Face6")
|
||||
]
|
||||
con_force.Force = 10000.00
|
||||
con_force.Force = "10000.00 N"
|
||||
con_force.Direction = (doc.Box1, ["Edge1"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -182,7 +182,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(doc.Face4, "Edge4"),
|
||||
(doc.Face5, "Edge4")
|
||||
]
|
||||
con_force.Force = 10000.00
|
||||
con_force.Force = "10000.00 N"
|
||||
con_force.Direction = (doc.Face1, ["Edge1"])
|
||||
con_force.Reversed = True
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -170,7 +170,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geom_obj, "Vertex4"),
|
||||
(geom_obj, "Vertex8"),
|
||||
]
|
||||
con_force.Force = 600 # 600 N on six nodes == 100 N/Node
|
||||
con_force.Force = "600 N" # 600 N on six nodes == 100 N/Node
|
||||
con_force.Reversed = False
|
||||
con_force.Direction = (geom_obj, ["Edge2"])
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -151,7 +151,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, "Edge7")]
|
||||
con_force.Force = 1000000.0
|
||||
con_force.Force = "1000000.0 N"
|
||||
con_force.Direction = (geom_obj, ["Edge8"])
|
||||
con_force.Reversed = False
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -135,7 +135,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force1
|
||||
con_force1 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce1")
|
||||
con_force1.References = [(geom_obj, "Edge9")]
|
||||
con_force1.Force = 100000.00
|
||||
con_force1.Force = "100000.00 N"
|
||||
con_force1.Direction = (geom_obj, ["Edge9"])
|
||||
con_force1.Reversed = True
|
||||
analysis.addObject(con_force1)
|
||||
@@ -143,7 +143,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force2
|
||||
con_force2 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce2")
|
||||
con_force2.References = [(geom_obj, "Edge3")]
|
||||
con_force2.Force = 100000.00
|
||||
con_force2.Force = "100000.00 N"
|
||||
con_force2.Direction = (geom_obj, ["Edge3"])
|
||||
con_force2.Reversed = True
|
||||
analysis.addObject(con_force2)
|
||||
@@ -151,7 +151,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force3
|
||||
con_force3 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce3")
|
||||
con_force3.References = [(geom_obj, "Edge11")]
|
||||
con_force3.Force = 100000.00
|
||||
con_force3.Force = "100000.00 N"
|
||||
con_force3.Direction = (geom_obj, ["Edge11"])
|
||||
con_force3.Reversed = True
|
||||
analysis.addObject(con_force3)
|
||||
@@ -159,7 +159,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force4
|
||||
con_force4 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce4")
|
||||
con_force4.References = [(geom_obj, "Edge6")]
|
||||
con_force4.Force = 100000.00
|
||||
con_force4.Force = "100000.00 N"
|
||||
con_force4.Direction = (geom_obj, ["Edge6"])
|
||||
con_force4.Reversed = True
|
||||
analysis.addObject(con_force4)
|
||||
|
||||
@@ -289,7 +289,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force1
|
||||
con_force1 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce1")
|
||||
con_force1.References = [(geoforces_obj, "Vertex1"), (geoforces_obj, "Vertex14")]
|
||||
con_force1.Force = 5555.56
|
||||
con_force1.Force = "5555.56 N"
|
||||
con_force1.Direction = (geom_obj, ["Edge9"])
|
||||
con_force1.Reversed = False
|
||||
analysis.addObject(con_force1)
|
||||
@@ -297,7 +297,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force2
|
||||
con_force2 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce2")
|
||||
con_force2.References = [(geoforces_obj, "Vertex2"), (geoforces_obj, "Vertex8")]
|
||||
con_force2.Force = 5555.56
|
||||
con_force2.Force = "5555.56 N"
|
||||
con_force2.Direction = (geom_obj, ["Edge3"])
|
||||
con_force2.Reversed = False
|
||||
analysis.addObject(con_force2)
|
||||
@@ -310,7 +310,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex22"),
|
||||
(geoforces_obj, "Vertex23"),
|
||||
(geoforces_obj, "Vertex24"), ]
|
||||
con_force3.Force = 27777.78
|
||||
con_force3.Force = "27777.78 N"
|
||||
con_force3.Direction = (geom_obj, ["Edge9"])
|
||||
con_force3.Reversed = False
|
||||
analysis.addObject(con_force3)
|
||||
@@ -323,7 +323,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex11"),
|
||||
(geoforces_obj, "Vertex12"),
|
||||
(geoforces_obj, "Vertex13"), ]
|
||||
con_force4.Force = 27777.78
|
||||
con_force4.Force = "27777.78 N"
|
||||
con_force4.Direction = (geom_obj, ["Edge3"])
|
||||
con_force4.Reversed = False
|
||||
analysis.addObject(con_force4)
|
||||
@@ -337,7 +337,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex46"),
|
||||
(geoforces_obj, "Vertex47"),
|
||||
(geoforces_obj, "Vertex48"), ]
|
||||
con_force5.Force = 66666.67
|
||||
con_force5.Force = "66666.67 N"
|
||||
con_force5.Direction = (geom_obj, ["Edge9"])
|
||||
con_force5.Reversed = False
|
||||
analysis.addObject(con_force5)
|
||||
@@ -351,7 +351,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex34"),
|
||||
(geoforces_obj, "Vertex35"),
|
||||
(geoforces_obj, "Vertex36"), ]
|
||||
con_force6.Force = 66666.67
|
||||
con_force6.Force = "66666.67 N"
|
||||
con_force6.Direction = (geom_obj, ["Edge3"])
|
||||
con_force6.Reversed = False
|
||||
analysis.addObject(con_force6)
|
||||
@@ -359,7 +359,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force7
|
||||
con_force7 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce7")
|
||||
con_force7.References = [(geoforces_obj, "Vertex1"), (geoforces_obj, "Vertex2")]
|
||||
con_force7.Force = 5555.56
|
||||
con_force7.Force = "5555.56 N"
|
||||
con_force7.Direction = (geom_obj, ["Edge11"])
|
||||
con_force7.Reversed = False
|
||||
analysis.addObject(con_force7)
|
||||
@@ -367,7 +367,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# con_force8
|
||||
con_force8 = ObjectsFem.makeConstraintForce(doc, name="ConstraintForce8")
|
||||
con_force8.References = [(geoforces_obj, "Vertex8"), (geoforces_obj, "Vertex14")]
|
||||
con_force8.Force = 5555.56
|
||||
con_force8.Force = "5555.56 N"
|
||||
con_force8.Direction = (geom_obj, ["Edge6"])
|
||||
con_force8.Reversed = False
|
||||
analysis.addObject(con_force8)
|
||||
@@ -380,7 +380,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex5"),
|
||||
(geoforces_obj, "Vertex6"),
|
||||
(geoforces_obj, "Vertex7"), ]
|
||||
con_force9.Force = 27777.78
|
||||
con_force9.Force = "27777.78 N"
|
||||
con_force9.Direction = (geom_obj, ["Edge11"])
|
||||
con_force9.Reversed = False
|
||||
analysis.addObject(con_force9)
|
||||
@@ -393,7 +393,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex17"),
|
||||
(geoforces_obj, "Vertex18"),
|
||||
(geoforces_obj, "Vertex19"), ]
|
||||
con_force10.Force = 27777.78
|
||||
con_force10.Force = "27777.78 N"
|
||||
con_force10.Direction = (geom_obj, ["Edge6"])
|
||||
con_force10.Reversed = False
|
||||
analysis.addObject(con_force10)
|
||||
@@ -407,7 +407,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex28"),
|
||||
(geoforces_obj, "Vertex29"),
|
||||
(geoforces_obj, "Vertex30"), ]
|
||||
con_force11.Force = 66666.67
|
||||
con_force11.Force = "66666.67 N"
|
||||
con_force11.Direction = (geom_obj, ["Edge11"])
|
||||
con_force11.Reversed = False
|
||||
analysis.addObject(con_force11)
|
||||
@@ -421,7 +421,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
(geoforces_obj, "Vertex40"),
|
||||
(geoforces_obj, "Vertex41"),
|
||||
(geoforces_obj, "Vertex42"), ]
|
||||
con_force12.Force = 66666.67
|
||||
con_force12.Force = "66666.67 N"
|
||||
con_force12.Direction = (geom_obj, ["Edge6"])
|
||||
con_force12.Reversed = False
|
||||
analysis.addObject(con_force12)
|
||||
|
||||
@@ -446,7 +446,7 @@ def setup(doc=None, solvertype="ccxtools"):
|
||||
# constraint force
|
||||
con_force = ObjectsFem.makeConstraintForce(doc, "ConstraintForce")
|
||||
con_force.References = [(geom_obj, ("Vertex5", "Vertex6"))]
|
||||
con_force.Force = 60000.0 # 30 kN on each Node
|
||||
con_force.Force = "60000.0 N" # 30 kN on each Node
|
||||
con_force.Direction = (load_line, ["Edge1"])
|
||||
con_force.Reversed = False
|
||||
analysis.addObject(con_force)
|
||||
|
||||
@@ -803,7 +803,8 @@ def get_force_obj_vertex_nodeload_table(
|
||||
# ("refshape_name.elemname", node_load_table)
|
||||
# ]
|
||||
force_obj_node_load_table = []
|
||||
node_load = frc_obj.Force / len(frc_obj.References)
|
||||
force_quantity = FreeCAD.Units.Quantity(frc_obj.Force.getValueAs("N"))
|
||||
node_load = force_quantity / len(frc_obj.References)
|
||||
for o, elem_tup in frc_obj.References:
|
||||
node_count = len(elem_tup)
|
||||
for elem in elem_tup:
|
||||
@@ -863,7 +864,8 @@ def get_force_obj_edge_nodeload_table(
|
||||
)
|
||||
sum_ref_edge_length += ref_edge.Length
|
||||
if sum_ref_edge_length != 0:
|
||||
force_per_sum_ref_edge_length = frc_obj.Force / sum_ref_edge_length
|
||||
force_quantity = FreeCAD.Units.Quantity(frc_obj.Force.getValueAs("N"))
|
||||
force_per_sum_ref_edge_length = force_quantity / sum_ref_edge_length
|
||||
for o, elem_tup in frc_obj.References:
|
||||
for elem in elem_tup:
|
||||
ref_edge = o.Shape.getElement(elem)
|
||||
@@ -907,7 +909,8 @@ def get_force_obj_edge_nodeload_table(
|
||||
for node in ref_shape[1]:
|
||||
sum_node_load += ref_shape[1][node] # for debugging
|
||||
|
||||
ratio = sum_node_load / frc_obj.Force
|
||||
force_quantity = FreeCAD.Units.Quantity(frc_obj.Force.getValueAs("N"))
|
||||
ratio = sum_node_load / force_quantity
|
||||
if ratio < 0.99 or ratio > 1.01:
|
||||
FreeCAD.Console.PrintMessage(
|
||||
"Deviation sum_node_load to frc_obj.Force is more than 1% : {}\n"
|
||||
@@ -927,7 +930,7 @@ def get_force_obj_edge_nodeload_table(
|
||||
)
|
||||
FreeCAD.Console.PrintMessage(
|
||||
" frc_obj.Force: {}\n"
|
||||
.format(frc_obj.Force)
|
||||
.format(force_quantity)
|
||||
)
|
||||
FreeCAD.Console.PrintMessage(
|
||||
" the reason could be simply a circle length --> "
|
||||
@@ -1135,7 +1138,8 @@ def get_force_obj_face_nodeload_table(
|
||||
)
|
||||
sum_ref_face_area += ref_face.Area
|
||||
if sum_ref_face_area != 0:
|
||||
force_per_sum_ref_face_area = frc_obj.Force / sum_ref_face_area
|
||||
force_quantity = FreeCAD.Units.Quantity(frc_obj.Force.getValueAs("N"))
|
||||
force_per_sum_ref_face_area = force_quantity / sum_ref_face_area
|
||||
for o, elem_tup in frc_obj.References:
|
||||
for elem in elem_tup:
|
||||
ref_face = o.Shape.getElement(elem)
|
||||
@@ -1178,7 +1182,8 @@ def get_force_obj_face_nodeload_table(
|
||||
for node in ref_shape[1]:
|
||||
sum_node_load += ref_shape[1][node] # for debugging
|
||||
|
||||
ratio = sum_node_load / frc_obj.Force
|
||||
force_quantity = FreeCAD.Units.Quantity(frc_obj.Force.getValueAs("N"))
|
||||
ratio = sum_node_load / force_quantity
|
||||
if ratio < 0.99 or ratio > 1.01:
|
||||
FreeCAD.Console.PrintMessage(
|
||||
"Deviation sum_node_load to frc_obj.Force is more than 1% : {}\n"
|
||||
@@ -1198,7 +1203,7 @@ def get_force_obj_face_nodeload_table(
|
||||
)
|
||||
FreeCAD.Console.PrintMessage(
|
||||
" frc_obj.Force: {}\n"
|
||||
.format(frc_obj.Force)
|
||||
.format(force_quantity)
|
||||
)
|
||||
FreeCAD.Console.PrintMessage(
|
||||
" the reason could be simply a circle area --> "
|
||||
|
||||
@@ -54,14 +54,15 @@ def write_meshdata_constraint(f, femobj, force_obj, ccxwriter):
|
||||
f.write("** {}\n".format(ref_shape[0]))
|
||||
for n in sorted(ref_shape[1]):
|
||||
node_load = ref_shape[1][n]
|
||||
# the loads in ref_shape[1][n] are without unit
|
||||
if abs(direction_vec.x) > dir_zero_tol:
|
||||
v1 = "{:.13E}".format(direction_vec.x * node_load)
|
||||
v1 = "{}".format(direction_vec.x * node_load)
|
||||
f.write("{},1,{}\n".format(n, v1))
|
||||
if abs(direction_vec.y) > dir_zero_tol:
|
||||
v2 = "{:.13E}".format(direction_vec.y * node_load)
|
||||
v2 = "{}".format(direction_vec.y * node_load)
|
||||
f.write("{},2,{}\n".format(n, v2))
|
||||
if abs(direction_vec.z) > dir_zero_tol:
|
||||
v3 = "{:.13E}".format(direction_vec.z * node_load)
|
||||
v3 = "{}".format(direction_vec.z * node_load)
|
||||
f.write("{},3,{}\n".format(n, v3))
|
||||
f.write("\n")
|
||||
f.write("\n")
|
||||
|
||||
@@ -97,7 +97,7 @@ class DeformationWriter:
|
||||
for obj in self.write.getMember("Fem::ConstraintForce"):
|
||||
if obj.References:
|
||||
for name in obj.References[0][1]:
|
||||
force = self.write.getFromUi(obj.Force, "N", "M*L*T^-2")
|
||||
force = float(obj.Force.getValueAs("N"))
|
||||
self.write.boundary(name, "Force 1", obj.DirectionVector.x * force)
|
||||
self.write.boundary(name, "Force 2", obj.DirectionVector.y * force)
|
||||
self.write.boundary(name, "Force 3", obj.DirectionVector.z * force)
|
||||
|
||||
@@ -313,7 +313,7 @@ class ElasticityWriter:
|
||||
for obj in self.write.getMember("Fem::ConstraintForce"):
|
||||
if obj.References:
|
||||
for name in obj.References[0][1]:
|
||||
force = self.write.getFromUi(obj.Force, "N", "M*L*T^-2")
|
||||
force = float(obj.Force.getValueAs("N"))
|
||||
self.write.boundary(name, "Force 1", obj.DirectionVector.x * force)
|
||||
self.write.boundary(name, "Force 2", obj.DirectionVector.y * force)
|
||||
self.write.boundary(name, "Force 3", obj.DirectionVector.z * force)
|
||||
|
||||
@@ -50,6 +50,7 @@ def add_con_force(f, model, mystran_writer):
|
||||
for ref_shape in femobj["NodeLoadTable"]:
|
||||
force_code += "# {}\n".format(ref_shape[0])
|
||||
for n in sorted(ref_shape[1]):
|
||||
# the loads in ref_shape[1][n] are without unit
|
||||
node_load = ref_shape[1][n]
|
||||
force_code += (
|
||||
"model.add_force(sid={}, node={}, mag={}, xyz=({}, {}, {}))\n"
|
||||
|
||||
@@ -157,6 +157,7 @@ class FemInputWriterZ88(writerbase.FemInputWriter):
|
||||
direction_vec = femobj["Object"].DirectionVector
|
||||
for ref_shape in femobj["NodeLoadTable"]:
|
||||
for n in sorted(ref_shape[1]):
|
||||
# the loads in ref_shape[1][n] are without unit
|
||||
node_load = ref_shape[1][n]
|
||||
if (direction_vec.x != 0.0):
|
||||
v1 = direction_vec.x * node_load
|
||||
|
||||
Binary file not shown.
@@ -507,47 +507,47 @@ FemConstraintFixed,3
|
||||
*CLOAD
|
||||
** FemConstraintForce
|
||||
** node loads on shape: Box:Face6
|
||||
2,3,-0.0000000000000E+00
|
||||
4,3,-0.0000000000000E+00
|
||||
6,3,-0.0000000000000E+00
|
||||
8,3,-0.0000000000000E+00
|
||||
18,3,-0.0000000000000E+00
|
||||
19,3,-8.3333333333333E+02
|
||||
20,3,-8.3333333333333E+02
|
||||
30,3,-0.0000000000000E+00
|
||||
31,3,-8.3333333333333E+02
|
||||
32,3,-8.3333333333333E+02
|
||||
36,3,-0.0000000000000E+00
|
||||
37,3,-8.3333333333333E+02
|
||||
38,3,-8.3333333333333E+02
|
||||
42,3,-0.0000000000000E+00
|
||||
43,3,-8.3333333333333E+02
|
||||
44,3,-8.3333333333333E+02
|
||||
170,3,-0.0000000000000E+00
|
||||
171,3,-0.0000000000000E+00
|
||||
172,3,-0.0000000000000E+00
|
||||
173,3,-0.0000000000000E+00
|
||||
174,3,-0.0000000000000E+00
|
||||
175,3,-1.6666666666667E+03
|
||||
176,3,-1.6666666666667E+03
|
||||
177,3,-1.6666666666667E+03
|
||||
178,3,-1.6666666666667E+03
|
||||
179,3,-1.6666666666667E+03
|
||||
180,3,-1.6666666666667E+03
|
||||
181,3,-1.6666666666667E+03
|
||||
182,3,-1.6666666666667E+03
|
||||
183,3,-1.6666666666667E+03
|
||||
184,3,-1.6666666666667E+03
|
||||
185,3,-1.6666666666667E+03
|
||||
186,3,-1.6666666666667E+03
|
||||
187,3,-1.6666666666667E+03
|
||||
188,3,-1.6666666666667E+03
|
||||
189,3,-1.6666666666667E+03
|
||||
190,3,-1.6666666666667E+03
|
||||
191,3,-1.6666666666667E+03
|
||||
192,3,-1.6666666666667E+03
|
||||
193,3,-1.6666666666667E+03
|
||||
194,3,-1.6666666666667E+03
|
||||
2,3,-0.0
|
||||
4,3,-0.0
|
||||
6,3,-0.0
|
||||
8,3,-0.0
|
||||
18,3,-0.0
|
||||
19,3,-833.3333333333335
|
||||
20,3,-833.3333333333335
|
||||
30,3,-0.0
|
||||
31,3,-833.3333333333335
|
||||
32,3,-833.3333333333335
|
||||
36,3,-0.0
|
||||
37,3,-833.3333333333335
|
||||
38,3,-833.3333333333335
|
||||
42,3,-0.0
|
||||
43,3,-833.3333333333335
|
||||
44,3,-833.3333333333335
|
||||
170,3,-0.0
|
||||
171,3,-0.0
|
||||
172,3,-0.0
|
||||
173,3,-0.0
|
||||
174,3,-0.0
|
||||
175,3,-1666.666666666667
|
||||
176,3,-1666.666666666667
|
||||
177,3,-1666.666666666667
|
||||
178,3,-1666.666666666667
|
||||
179,3,-1666.666666666667
|
||||
180,3,-1666.666666666667
|
||||
181,3,-1666.666666666667
|
||||
182,3,-1666.666666666667
|
||||
183,3,-1666.666666666667
|
||||
184,3,-1666.666666666667
|
||||
185,3,-1666.666666666667
|
||||
186,3,-1666.666666666667
|
||||
187,3,-1666.666666666667
|
||||
188,3,-1666.666666666667
|
||||
189,3,-1666.666666666667
|
||||
190,3,-1666.666666666667
|
||||
191,3,-1666.666666666667
|
||||
192,3,-1666.666666666667
|
||||
193,3,-1666.666666666667
|
||||
194,3,-1666.666666666667
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -764,31 +764,31 @@ ConstraintFixed,3
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: Beam:Face6
|
||||
65,3,-3.2812500000000E-01
|
||||
66,3,-6.5625000000000E-01
|
||||
67,3,-6.5625000000000E-01
|
||||
68,3,-1.3125000000000E+00
|
||||
101,3,-6.5625000000000E-01
|
||||
102,3,-1.3125000000000E+00
|
||||
135,3,-6.5625000000000E-01
|
||||
136,3,-1.3125000000000E+00
|
||||
169,3,-3.2812500000000E-01
|
||||
170,3,-6.5625000000000E-01
|
||||
203,3,-6.5625000000000E-01
|
||||
204,3,-1.3125000000000E+00
|
||||
221,3,-1.3125000000000E+00
|
||||
238,3,-1.3125000000000E+00
|
||||
255,3,-6.5625000000000E-01
|
||||
288,3,-6.5625000000000E-01
|
||||
289,3,-1.3125000000000E+00
|
||||
306,3,-1.3125000000000E+00
|
||||
323,3,-1.3125000000000E+00
|
||||
340,3,-6.5625000000000E-01
|
||||
373,3,-3.2812500000000E-01
|
||||
374,3,-6.5625000000000E-01
|
||||
391,3,-6.5625000000000E-01
|
||||
408,3,-6.5625000000000E-01
|
||||
425,3,-3.2812500000000E-01
|
||||
65,3,-0.328125
|
||||
66,3,-0.65625
|
||||
67,3,-0.65625
|
||||
68,3,-1.3125
|
||||
101,3,-0.65625
|
||||
102,3,-1.3125
|
||||
135,3,-0.65625
|
||||
136,3,-1.3125
|
||||
169,3,-0.328125
|
||||
170,3,-0.65625
|
||||
203,3,-0.65625
|
||||
204,3,-1.3125
|
||||
221,3,-1.3125
|
||||
238,3,-1.3125
|
||||
255,3,-0.65625
|
||||
288,3,-0.65625
|
||||
289,3,-1.3125
|
||||
306,3,-1.3125
|
||||
323,3,-1.3125
|
||||
340,3,-0.65625
|
||||
373,3,-0.328125
|
||||
374,3,-0.65625
|
||||
391,3,-0.65625
|
||||
408,3,-0.65625
|
||||
425,3,-0.328125
|
||||
|
||||
|
||||
|
||||
@@ -809,8 +809,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25065 (Git)
|
||||
** written on --> Tue Jun 15 10:36:32 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 03:37:15 2023
|
||||
** file name --> ccx_buckling_flexuralbuckling.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -83,7 +83,7 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: CantileverLine:Vertex2
|
||||
2,3,-9.0000000000000E+06
|
||||
2,3,-9000000.0
|
||||
|
||||
|
||||
|
||||
@@ -104,8 +104,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25432 (Git)
|
||||
** written on --> Wed Aug 4 22:12:24 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:29:54 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -83,7 +83,7 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: CantileverLine:Vertex2
|
||||
2,3,-9.0000000000000E+06
|
||||
2,3,-9000000.0
|
||||
|
||||
|
||||
|
||||
@@ -104,8 +104,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25432 (Git)
|
||||
** written on --> Wed Aug 4 22:13:20 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 03:47:22 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -83,7 +83,7 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: CantileverLine:Vertex2
|
||||
2,3,-9.0000000000000E+06
|
||||
2,3,-9000000.0
|
||||
|
||||
|
||||
|
||||
@@ -104,8 +104,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25432 (Git)
|
||||
** written on --> Wed Aug 4 22:14:46 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 03:48:55 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -403,27 +403,27 @@ ConstraintFixed,3
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: Box:Face2
|
||||
5,3,1.8750000000000E+05
|
||||
6,3,1.8750000000000E+05
|
||||
7,3,1.8750000000000E+05
|
||||
8,3,1.8750000000000E+05
|
||||
21,3,-7.5000000000000E+05
|
||||
22,3,3.7500000000000E+05
|
||||
23,3,-7.5000000000000E+05
|
||||
24,3,-7.5000000000000E+05
|
||||
25,3,3.7500000000000E+05
|
||||
26,3,-7.5000000000000E+05
|
||||
27,3,-7.5000000000000E+05
|
||||
28,3,3.7500000000000E+05
|
||||
29,3,-7.5000000000000E+05
|
||||
30,3,-7.5000000000000E+05
|
||||
31,3,3.7500000000000E+05
|
||||
32,3,-7.5000000000000E+05
|
||||
98,3,-1.5000000000000E+06
|
||||
99,3,-1.5000000000000E+06
|
||||
100,3,7.5000000000000E+05
|
||||
101,3,-1.5000000000000E+06
|
||||
102,3,-1.5000000000000E+06
|
||||
5,3,187500.00000000003
|
||||
6,3,187500.00000000003
|
||||
7,3,187500.00000000003
|
||||
8,3,187500.00000000003
|
||||
21,3,-750000.0000000001
|
||||
22,3,375000.00000000006
|
||||
23,3,-750000.0000000001
|
||||
24,3,-750000.0000000001
|
||||
25,3,375000.00000000006
|
||||
26,3,-750000.0000000001
|
||||
27,3,-750000.0000000001
|
||||
28,3,375000.00000000006
|
||||
29,3,-750000.0000000001
|
||||
30,3,-750000.0000000001
|
||||
31,3,375000.00000000006
|
||||
32,3,-750000.0000000001
|
||||
98,3,-1500000.0000000002
|
||||
99,3,-1500000.0000000002
|
||||
100,3,750000.0000000001
|
||||
101,3,-1500000.0000000002
|
||||
102,3,-1500000.0000000002
|
||||
|
||||
|
||||
|
||||
@@ -444,8 +444,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.19767 (Git)
|
||||
** written on --> Sun Mar 1 22:34:34 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 04:39:55 2023
|
||||
** file name --> CantilverHexa20FaceLoad.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -107,9 +107,9 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: CanileverPlate:Edge3
|
||||
3,3,-2.2500000000000E+06
|
||||
4,3,-2.2500000000000E+06
|
||||
13,3,-4.5000000000000E+06
|
||||
3,3,-2250000.0
|
||||
4,3,-2250000.0
|
||||
13,3,-4500000.0
|
||||
|
||||
|
||||
|
||||
@@ -130,8 +130,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25347 (Git)
|
||||
** written on --> Thu Jul 29 22:17:23 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:29:04 2023
|
||||
** file name --> test.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -95,11 +95,11 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: CanileverPlate:Edge3
|
||||
3,3,-7.5000000000000E+05
|
||||
4,3,-7.5000000000000E+05
|
||||
11,3,-1.5000000000000E+06
|
||||
12,3,-3.0000000000000E+06
|
||||
13,3,-3.0000000000000E+06
|
||||
3,3,-750000.0
|
||||
4,3,-750000.0
|
||||
11,3,-1500000.0
|
||||
12,3,-3000000.0
|
||||
13,3,-3000000.0
|
||||
|
||||
|
||||
|
||||
@@ -120,8 +120,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25343 (Git)
|
||||
** written on --> Thu Jul 29 13:06:02 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:28:22 2023
|
||||
** file name --> ccx_cantilever_ele_quad8.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -225,7 +225,7 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: CantileverLine:Vertex2
|
||||
2,3,-9.0000000000000E+06
|
||||
2,3,-9000000.0
|
||||
|
||||
|
||||
|
||||
@@ -246,8 +246,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25335 (Git)
|
||||
** written on --> Wed Jul 28 17:01:46 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 04:06:59 2023
|
||||
** file name --> test.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -83,7 +83,7 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: CantileverLine:Vertex2
|
||||
2,3,-9.0000000000000E+06
|
||||
2,3,-9000000.0
|
||||
|
||||
|
||||
|
||||
@@ -104,8 +104,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25335 (Git)
|
||||
** written on --> Wed Jul 28 16:59:39 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 04:06:59 2023
|
||||
** file name --> test.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -1583,14 +1583,14 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: CanileverPlate:Edge3
|
||||
3,3,-6.4285714285714E+05
|
||||
4,3,-6.4285714285715E+05
|
||||
64,3,-1.2857142857143E+06
|
||||
65,3,-1.2857142857143E+06
|
||||
66,3,-1.2857142857143E+06
|
||||
67,3,-1.2857142857143E+06
|
||||
68,3,-1.2857142857143E+06
|
||||
69,3,-1.2857142857143E+06
|
||||
3,3,-642857.1428571417
|
||||
4,3,-642857.1428571455
|
||||
64,3,-1285714.2857142843
|
||||
65,3,-1285714.285714283
|
||||
66,3,-1285714.28571428
|
||||
67,3,-1285714.2857142847
|
||||
68,3,-1285714.28571429
|
||||
69,3,-1285714.2857142906
|
||||
|
||||
|
||||
|
||||
@@ -1611,8 +1611,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25335 (Git)
|
||||
** written on --> Wed Jul 28 16:57:44 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:27:22 2023
|
||||
** file name --> test.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -313,11 +313,11 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: CanileverPlate:Edge3
|
||||
3,3,-7.5000000000000E+05
|
||||
4,3,-7.5000000000000E+05
|
||||
39,3,-1.5000000000000E+06
|
||||
40,3,-3.0000000000000E+06
|
||||
41,3,-3.0000000000000E+06
|
||||
3,3,-750000.0
|
||||
4,3,-750000.0
|
||||
39,3,-1500000.0
|
||||
40,3,-3000000.0
|
||||
41,3,-3000000.0
|
||||
|
||||
|
||||
|
||||
@@ -338,8 +338,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25335 (Git)
|
||||
** written on --> Wed Jul 28 17:09:34 2021
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 04:06:59 2023
|
||||
** file name --> test.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -377,19 +377,19 @@ ConstraintFixed,3
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: Box:Face2
|
||||
1,3,-0.0000000000000E+00
|
||||
2,3,-0.0000000000000E+00
|
||||
3,3,-0.0000000000000E+00
|
||||
4,3,-0.0000000000000E+00
|
||||
49,3,-0.0000000000000E+00
|
||||
64,3,-7.5000000000000E+05
|
||||
88,3,-7.5000000000000E+05
|
||||
100,3,-7.5000000000000E+05
|
||||
102,3,-7.5000000000000E+05
|
||||
188,3,-1.5000000000000E+06
|
||||
189,3,-1.5000000000000E+06
|
||||
190,3,-1.5000000000000E+06
|
||||
191,3,-1.5000000000000E+06
|
||||
1,3,-0.0
|
||||
2,3,-0.0
|
||||
3,3,-0.0
|
||||
4,3,-0.0
|
||||
49,3,-0.0
|
||||
64,3,-750000.0000000001
|
||||
88,3,-750000.0000000001
|
||||
100,3,-750000.0000000001
|
||||
102,3,-750000.0000000001
|
||||
188,3,-1500000.0000000002
|
||||
189,3,-1500000.0000000002
|
||||
190,3,-1500000.0000000002
|
||||
191,3,-1500000.0000000002
|
||||
|
||||
|
||||
|
||||
@@ -410,8 +410,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.21875 (Git)
|
||||
** written on --> Tue Jul 7 07:19:22 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:26:29 2023
|
||||
** file name --> ccx_cantilever_faceload.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -377,16 +377,16 @@ ConstraintFixed,3
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: Box:Vertex5
|
||||
4,3,-2.2500000000000E+06
|
||||
4,3,-2250000.0
|
||||
|
||||
** node load on shape: Box:Vertex6
|
||||
3,3,-2.2500000000000E+06
|
||||
3,3,-2250000.0
|
||||
|
||||
** node load on shape: Box:Vertex7
|
||||
2,3,-2.2500000000000E+06
|
||||
2,3,-2250000.0
|
||||
|
||||
** node load on shape: Box:Vertex8
|
||||
1,3,-2.2500000000000E+06
|
||||
1,3,-2250000.0
|
||||
|
||||
|
||||
|
||||
@@ -407,8 +407,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.21875 (Git)
|
||||
** written on --> Tue Jul 7 07:19:27 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 03:54:52 2023
|
||||
** file name --> ccx_cantilever_nodeload.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
Binary file not shown.
@@ -38394,7 +38394,7 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node load on shape: Load_place_point:Vertex1
|
||||
5,2,-5.0000000000000E+03
|
||||
5,2,-5000.0
|
||||
|
||||
|
||||
|
||||
@@ -38415,8 +38415,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.19278 (Git)
|
||||
** written on --> Tue Jan 14 20:17:09 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:18:47 2023
|
||||
** file name --> Contact_Shell_Shell.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -18630,9 +18630,9 @@ ConstraintFixed,3
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: BooleanFragments:Edge2
|
||||
2,2,1.6666666666667E+03
|
||||
8,2,1.6666666666667E+03
|
||||
385,2,6.6666666666667E+03
|
||||
2,2,1666.6666666666667
|
||||
8,2,1666.6666666666667
|
||||
385,2,6666.666666666667
|
||||
|
||||
|
||||
|
||||
@@ -18653,8 +18653,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.19481 (Git)
|
||||
** written on --> Wed Feb 5 08:55:37 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 04:35:16 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -2569,119 +2569,119 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce
|
||||
** node loads on shape: Face1:Edge4
|
||||
9,2,-3.3333333333333E+01
|
||||
11,2,-3.3333333333333E+01
|
||||
118,2,-6.6666666666667E+01
|
||||
119,2,-6.6666666666667E+01
|
||||
120,2,-6.6666666666667E+01
|
||||
121,2,-6.6666666666667E+01
|
||||
122,2,-6.6666666666667E+01
|
||||
123,2,-6.6666666666667E+01
|
||||
124,2,-6.6666666666667E+01
|
||||
125,2,-6.6666666666667E+01
|
||||
126,2,-6.6666666666667E+01
|
||||
472,2,-1.3333333333333E+02
|
||||
473,2,-1.3333333333333E+02
|
||||
474,2,-1.3333333333333E+02
|
||||
475,2,-1.3333333333333E+02
|
||||
476,2,-1.3333333333333E+02
|
||||
477,2,-1.3333333333333E+02
|
||||
478,2,-1.3333333333333E+02
|
||||
479,2,-1.3333333333333E+02
|
||||
480,2,-1.3333333333333E+02
|
||||
481,2,-1.3333333333333E+02
|
||||
9,2,-33.33333333333333
|
||||
11,2,-33.33333333333333
|
||||
118,2,-66.66666666666666
|
||||
119,2,-66.66666666666666
|
||||
120,2,-66.66666666666666
|
||||
121,2,-66.66666666666666
|
||||
122,2,-66.66666666666666
|
||||
123,2,-66.66666666666666
|
||||
124,2,-66.66666666666666
|
||||
125,2,-66.66666666666666
|
||||
126,2,-66.66666666666666
|
||||
472,2,-133.33333333333331
|
||||
473,2,-133.33333333333331
|
||||
474,2,-133.33333333333331
|
||||
475,2,-133.33333333333331
|
||||
476,2,-133.33333333333331
|
||||
477,2,-133.33333333333331
|
||||
478,2,-133.33333333333331
|
||||
479,2,-133.33333333333331
|
||||
480,2,-133.33333333333331
|
||||
481,2,-133.33333333333331
|
||||
|
||||
** node loads on shape: Face2:Edge4
|
||||
7,2,-3.3333333333333E+01
|
||||
9,2,-3.3333333333333E+01
|
||||
96,2,-6.6666666666667E+01
|
||||
97,2,-6.6666666666667E+01
|
||||
98,2,-6.6666666666667E+01
|
||||
99,2,-6.6666666666667E+01
|
||||
100,2,-6.6666666666667E+01
|
||||
101,2,-6.6666666666667E+01
|
||||
102,2,-6.6666666666667E+01
|
||||
103,2,-6.6666666666667E+01
|
||||
104,2,-6.6666666666667E+01
|
||||
447,2,-1.3333333333333E+02
|
||||
448,2,-1.3333333333333E+02
|
||||
449,2,-1.3333333333333E+02
|
||||
450,2,-1.3333333333333E+02
|
||||
451,2,-1.3333333333333E+02
|
||||
452,2,-1.3333333333333E+02
|
||||
453,2,-1.3333333333333E+02
|
||||
454,2,-1.3333333333333E+02
|
||||
455,2,-1.3333333333333E+02
|
||||
456,2,-1.3333333333333E+02
|
||||
7,2,-33.33333333333333
|
||||
9,2,-33.33333333333333
|
||||
96,2,-66.66666666666666
|
||||
97,2,-66.66666666666666
|
||||
98,2,-66.66666666666666
|
||||
99,2,-66.66666666666666
|
||||
100,2,-66.66666666666666
|
||||
101,2,-66.66666666666666
|
||||
102,2,-66.66666666666666
|
||||
103,2,-66.66666666666666
|
||||
104,2,-66.66666666666666
|
||||
447,2,-133.33333333333331
|
||||
448,2,-133.33333333333331
|
||||
449,2,-133.33333333333331
|
||||
450,2,-133.33333333333331
|
||||
451,2,-133.33333333333331
|
||||
452,2,-133.33333333333331
|
||||
453,2,-133.33333333333331
|
||||
454,2,-133.33333333333331
|
||||
455,2,-133.33333333333331
|
||||
456,2,-133.33333333333331
|
||||
|
||||
** node loads on shape: Face3:Edge4
|
||||
5,2,-3.3333333333333E+01
|
||||
7,2,-3.3333333333333E+01
|
||||
74,2,-6.6666666666667E+01
|
||||
75,2,-6.6666666666667E+01
|
||||
76,2,-6.6666666666667E+01
|
||||
77,2,-6.6666666666667E+01
|
||||
78,2,-6.6666666666667E+01
|
||||
79,2,-6.6666666666667E+01
|
||||
80,2,-6.6666666666667E+01
|
||||
81,2,-6.6666666666667E+01
|
||||
82,2,-6.6666666666667E+01
|
||||
422,2,-1.3333333333333E+02
|
||||
423,2,-1.3333333333333E+02
|
||||
424,2,-1.3333333333333E+02
|
||||
425,2,-1.3333333333333E+02
|
||||
426,2,-1.3333333333333E+02
|
||||
427,2,-1.3333333333333E+02
|
||||
428,2,-1.3333333333333E+02
|
||||
429,2,-1.3333333333333E+02
|
||||
430,2,-1.3333333333333E+02
|
||||
431,2,-1.3333333333333E+02
|
||||
5,2,-33.33333333333333
|
||||
7,2,-33.33333333333333
|
||||
74,2,-66.66666666666666
|
||||
75,2,-66.66666666666666
|
||||
76,2,-66.66666666666666
|
||||
77,2,-66.66666666666666
|
||||
78,2,-66.66666666666666
|
||||
79,2,-66.66666666666666
|
||||
80,2,-66.66666666666666
|
||||
81,2,-66.66666666666666
|
||||
82,2,-66.66666666666666
|
||||
422,2,-133.33333333333331
|
||||
423,2,-133.33333333333331
|
||||
424,2,-133.33333333333331
|
||||
425,2,-133.33333333333331
|
||||
426,2,-133.33333333333331
|
||||
427,2,-133.33333333333331
|
||||
428,2,-133.33333333333331
|
||||
429,2,-133.33333333333331
|
||||
430,2,-133.33333333333331
|
||||
431,2,-133.33333333333331
|
||||
|
||||
** node loads on shape: Face4:Edge4
|
||||
3,2,-3.3333333333333E+01
|
||||
5,2,-3.3333333333333E+01
|
||||
52,2,-6.6666666666667E+01
|
||||
53,2,-6.6666666666667E+01
|
||||
54,2,-6.6666666666667E+01
|
||||
55,2,-6.6666666666667E+01
|
||||
56,2,-6.6666666666667E+01
|
||||
57,2,-6.6666666666667E+01
|
||||
58,2,-6.6666666666667E+01
|
||||
59,2,-6.6666666666667E+01
|
||||
60,2,-6.6666666666667E+01
|
||||
397,2,-1.3333333333333E+02
|
||||
398,2,-1.3333333333333E+02
|
||||
399,2,-1.3333333333333E+02
|
||||
400,2,-1.3333333333333E+02
|
||||
401,2,-1.3333333333333E+02
|
||||
402,2,-1.3333333333333E+02
|
||||
403,2,-1.3333333333333E+02
|
||||
404,2,-1.3333333333333E+02
|
||||
405,2,-1.3333333333333E+02
|
||||
406,2,-1.3333333333333E+02
|
||||
3,2,-33.33333333333333
|
||||
5,2,-33.33333333333333
|
||||
52,2,-66.66666666666666
|
||||
53,2,-66.66666666666666
|
||||
54,2,-66.66666666666666
|
||||
55,2,-66.66666666666666
|
||||
56,2,-66.66666666666666
|
||||
57,2,-66.66666666666666
|
||||
58,2,-66.66666666666666
|
||||
59,2,-66.66666666666666
|
||||
60,2,-66.66666666666666
|
||||
397,2,-133.33333333333331
|
||||
398,2,-133.33333333333331
|
||||
399,2,-133.33333333333331
|
||||
400,2,-133.33333333333331
|
||||
401,2,-133.33333333333331
|
||||
402,2,-133.33333333333331
|
||||
403,2,-133.33333333333331
|
||||
404,2,-133.33333333333331
|
||||
405,2,-133.33333333333331
|
||||
406,2,-133.33333333333331
|
||||
|
||||
** node loads on shape: Face5:Edge4
|
||||
1,2,-3.3333333333333E+01
|
||||
3,2,-3.3333333333333E+01
|
||||
26,2,-6.6666666666667E+01
|
||||
27,2,-6.6666666666667E+01
|
||||
28,2,-6.6666666666667E+01
|
||||
29,2,-6.6666666666667E+01
|
||||
30,2,-6.6666666666667E+01
|
||||
31,2,-6.6666666666667E+01
|
||||
32,2,-6.6666666666667E+01
|
||||
33,2,-6.6666666666667E+01
|
||||
34,2,-6.6666666666667E+01
|
||||
367,2,-1.3333333333333E+02
|
||||
368,2,-1.3333333333333E+02
|
||||
369,2,-1.3333333333333E+02
|
||||
370,2,-1.3333333333333E+02
|
||||
371,2,-1.3333333333333E+02
|
||||
372,2,-1.3333333333333E+02
|
||||
373,2,-1.3333333333333E+02
|
||||
374,2,-1.3333333333333E+02
|
||||
375,2,-1.3333333333333E+02
|
||||
376,2,-1.3333333333333E+02
|
||||
1,2,-33.33333333333333
|
||||
3,2,-33.33333333333333
|
||||
26,2,-66.66666666666666
|
||||
27,2,-66.66666666666666
|
||||
28,2,-66.66666666666666
|
||||
29,2,-66.66666666666666
|
||||
30,2,-66.66666666666666
|
||||
31,2,-66.66666666666666
|
||||
32,2,-66.66666666666666
|
||||
33,2,-66.66666666666666
|
||||
34,2,-66.66666666666666
|
||||
367,2,-133.33333333333331
|
||||
368,2,-133.33333333333331
|
||||
369,2,-133.33333333333331
|
||||
370,2,-133.33333333333331
|
||||
371,2,-133.33333333333331
|
||||
372,2,-133.33333333333331
|
||||
373,2,-133.33333333333331
|
||||
374,2,-133.33333333333331
|
||||
375,2,-133.33333333333331
|
||||
376,2,-133.33333333333331
|
||||
|
||||
|
||||
|
||||
@@ -2702,8 +2702,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.21802 +11 (Git)
|
||||
** written on --> Sat Jul 4 00:18:53 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:33:12 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -2581,70 +2581,70 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce1
|
||||
** node loads on shape: SquareTube:Edge9
|
||||
1,1,2.7777777777778E+03
|
||||
236,1,2.7777777777778E+03
|
||||
343,1,5.5555555555556E+03
|
||||
344,1,5.5555555555556E+03
|
||||
345,1,5.5555555555556E+03
|
||||
346,1,5.5555555555556E+03
|
||||
347,1,5.5555555555556E+03
|
||||
1376,1,1.1111111111111E+04
|
||||
1378,1,1.1111111111111E+04
|
||||
1380,1,1.1111111111111E+04
|
||||
1383,1,1.1111111111111E+04
|
||||
1386,1,1.1111111111111E+04
|
||||
1390,1,1.1111111111111E+04
|
||||
1,1,2777.7777777777783
|
||||
236,1,2777.7777777777783
|
||||
343,1,5555.555555555557
|
||||
344,1,5555.555555555557
|
||||
345,1,5555.555555555557
|
||||
346,1,5555.555555555557
|
||||
347,1,5555.555555555557
|
||||
1376,1,11111.111111111113
|
||||
1378,1,11111.111111111113
|
||||
1380,1,11111.111111111113
|
||||
1383,1,11111.111111111113
|
||||
1386,1,11111.111111111113
|
||||
1390,1,11111.111111111113
|
||||
|
||||
|
||||
** ConstraintForce2
|
||||
** node loads on shape: SquareTube:Edge3
|
||||
2,1,-2.7777777777778E+03
|
||||
129,1,-2.7777777777778E+03
|
||||
131,1,-5.5555555555556E+03
|
||||
132,1,-5.5555555555556E+03
|
||||
133,1,-5.5555555555556E+03
|
||||
134,1,-5.5555555555556E+03
|
||||
135,1,-5.5555555555556E+03
|
||||
758,1,-1.1111111111111E+04
|
||||
762,1,-1.1111111111111E+04
|
||||
764,1,-1.1111111111111E+04
|
||||
766,1,-1.1111111111111E+04
|
||||
769,1,-1.1111111111111E+04
|
||||
772,1,-1.1111111111111E+04
|
||||
2,1,-2777.7777777777783
|
||||
129,1,-2777.7777777777783
|
||||
131,1,-5555.555555555557
|
||||
132,1,-5555.555555555557
|
||||
133,1,-5555.555555555557
|
||||
134,1,-5555.555555555557
|
||||
135,1,-5555.555555555557
|
||||
758,1,-11111.111111111113
|
||||
762,1,-11111.111111111113
|
||||
764,1,-11111.111111111113
|
||||
766,1,-11111.111111111113
|
||||
769,1,-11111.111111111113
|
||||
772,1,-11111.111111111113
|
||||
|
||||
|
||||
** ConstraintForce3
|
||||
** node loads on shape: SquareTube:Edge11
|
||||
1,2,2.7777777777778E+03
|
||||
2,2,2.7777777777778E+03
|
||||
5,2,5.5555555555556E+03
|
||||
6,2,5.5555555555556E+03
|
||||
7,2,5.5555555555556E+03
|
||||
8,2,5.5555555555556E+03
|
||||
9,2,5.5555555555556E+03
|
||||
429,2,1.1111111111111E+04
|
||||
431,2,1.1111111111111E+04
|
||||
437,2,1.1111111111111E+04
|
||||
440,2,1.1111111111111E+04
|
||||
443,2,1.1111111111111E+04
|
||||
446,2,1.1111111111111E+04
|
||||
1,2,2777.7777777777783
|
||||
2,2,2777.7777777777783
|
||||
5,2,5555.555555555557
|
||||
6,2,5555.555555555557
|
||||
7,2,5555.555555555557
|
||||
8,2,5555.555555555557
|
||||
9,2,5555.555555555557
|
||||
429,2,11111.111111111113
|
||||
431,2,11111.111111111113
|
||||
437,2,11111.111111111113
|
||||
440,2,11111.111111111113
|
||||
443,2,11111.111111111113
|
||||
446,2,11111.111111111113
|
||||
|
||||
|
||||
** ConstraintForce4
|
||||
** node loads on shape: SquareTube:Edge6
|
||||
129,2,-2.7777777777778E+03
|
||||
236,2,-2.7777777777778E+03
|
||||
238,2,-5.5555555555556E+03
|
||||
239,2,-5.5555555555556E+03
|
||||
240,2,-5.5555555555556E+03
|
||||
241,2,-5.5555555555556E+03
|
||||
242,2,-5.5555555555556E+03
|
||||
1067,2,-1.1111111111111E+04
|
||||
1071,2,-1.1111111111111E+04
|
||||
1073,2,-1.1111111111111E+04
|
||||
1075,2,-1.1111111111111E+04
|
||||
1078,2,-1.1111111111111E+04
|
||||
1081,2,-1.1111111111111E+04
|
||||
129,2,-2777.7777777777783
|
||||
236,2,-2777.7777777777783
|
||||
238,2,-5555.555555555557
|
||||
239,2,-5555.555555555557
|
||||
240,2,-5555.555555555557
|
||||
241,2,-5555.555555555557
|
||||
242,2,-5555.555555555557
|
||||
1067,2,-11111.111111111113
|
||||
1071,2,-11111.111111111113
|
||||
1073,2,-11111.111111111113
|
||||
1075,2,-11111.111111111113
|
||||
1078,2,-11111.111111111113
|
||||
1081,2,-11111.111111111113
|
||||
|
||||
|
||||
|
||||
@@ -2665,8 +2665,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.21972 +18 (Git)
|
||||
** written on --> Fri Jul 17 22:12:38 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:35:14 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
@@ -2581,182 +2581,182 @@ ConstraintFixed,6
|
||||
*CLOAD
|
||||
** ConstraintForce1
|
||||
** node load on shape: Forces:Vertex1
|
||||
1,1,-2.7777800000000E+03
|
||||
1,1,-2777.78
|
||||
|
||||
** node load on shape: Forces:Vertex14
|
||||
236,1,-2.7777800000000E+03
|
||||
236,1,-2777.78
|
||||
|
||||
|
||||
** ConstraintForce2
|
||||
** node load on shape: Forces:Vertex2
|
||||
2,1,2.7777800000000E+03
|
||||
2,1,2777.78
|
||||
|
||||
** node load on shape: Forces:Vertex8
|
||||
129,1,2.7777800000000E+03
|
||||
129,1,2777.78
|
||||
|
||||
|
||||
** ConstraintForce3
|
||||
** node load on shape: Forces:Vertex20
|
||||
343,1,-5.5555560000000E+03
|
||||
343,1,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex21
|
||||
344,1,-5.5555560000000E+03
|
||||
344,1,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex22
|
||||
345,1,-5.5555560000000E+03
|
||||
345,1,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex23
|
||||
346,1,-5.5555560000000E+03
|
||||
346,1,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex24
|
||||
347,1,-5.5555560000000E+03
|
||||
347,1,-5555.556
|
||||
|
||||
|
||||
** ConstraintForce4
|
||||
** node load on shape: Forces:Vertex9
|
||||
131,1,5.5555560000000E+03
|
||||
131,1,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex10
|
||||
132,1,5.5555560000000E+03
|
||||
132,1,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex11
|
||||
133,1,5.5555560000000E+03
|
||||
133,1,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex12
|
||||
134,1,5.5555560000000E+03
|
||||
134,1,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex13
|
||||
135,1,5.5555560000000E+03
|
||||
135,1,5555.556
|
||||
|
||||
|
||||
** ConstraintForce5
|
||||
** node load on shape: Forces:Vertex43
|
||||
1376,1,-1.1111111666667E+04
|
||||
1376,1,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex44
|
||||
1378,1,-1.1111111666667E+04
|
||||
1378,1,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex45
|
||||
1380,1,-1.1111111666667E+04
|
||||
1380,1,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex46
|
||||
1383,1,-1.1111111666667E+04
|
||||
1383,1,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex47
|
||||
1386,1,-1.1111111666667E+04
|
||||
1386,1,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex48
|
||||
1390,1,-1.1111111666667E+04
|
||||
1390,1,-11111.111666666666
|
||||
|
||||
|
||||
** ConstraintForce6
|
||||
** node load on shape: Forces:Vertex31
|
||||
758,1,1.1111111666667E+04
|
||||
758,1,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex32
|
||||
762,1,1.1111111666667E+04
|
||||
762,1,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex33
|
||||
764,1,1.1111111666667E+04
|
||||
764,1,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex34
|
||||
766,1,1.1111111666667E+04
|
||||
766,1,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex35
|
||||
769,1,1.1111111666667E+04
|
||||
769,1,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex36
|
||||
772,1,1.1111111666667E+04
|
||||
772,1,11111.111666666666
|
||||
|
||||
|
||||
** ConstraintForce7
|
||||
** node load on shape: Forces:Vertex1
|
||||
1,2,-2.7777800000000E+03
|
||||
1,2,-2777.78
|
||||
|
||||
** node load on shape: Forces:Vertex2
|
||||
2,2,-2.7777800000000E+03
|
||||
2,2,-2777.78
|
||||
|
||||
|
||||
** ConstraintForce8
|
||||
** node load on shape: Forces:Vertex8
|
||||
129,2,2.7777800000000E+03
|
||||
129,2,2777.78
|
||||
|
||||
** node load on shape: Forces:Vertex14
|
||||
236,2,2.7777800000000E+03
|
||||
236,2,2777.78
|
||||
|
||||
|
||||
** ConstraintForce9
|
||||
** node load on shape: Forces:Vertex3
|
||||
5,2,-5.5555560000000E+03
|
||||
5,2,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex4
|
||||
6,2,-5.5555560000000E+03
|
||||
6,2,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex5
|
||||
7,2,-5.5555560000000E+03
|
||||
7,2,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex6
|
||||
8,2,-5.5555560000000E+03
|
||||
8,2,-5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex7
|
||||
9,2,-5.5555560000000E+03
|
||||
9,2,-5555.556
|
||||
|
||||
|
||||
** ConstraintForce10
|
||||
** node load on shape: Forces:Vertex15
|
||||
238,2,5.5555560000000E+03
|
||||
238,2,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex16
|
||||
239,2,5.5555560000000E+03
|
||||
239,2,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex17
|
||||
240,2,5.5555560000000E+03
|
||||
240,2,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex18
|
||||
241,2,5.5555560000000E+03
|
||||
241,2,5555.556
|
||||
|
||||
** node load on shape: Forces:Vertex19
|
||||
242,2,5.5555560000000E+03
|
||||
242,2,5555.556
|
||||
|
||||
|
||||
** ConstraintForce11
|
||||
** node load on shape: Forces:Vertex25
|
||||
429,2,-1.1111111666667E+04
|
||||
429,2,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex26
|
||||
431,2,-1.1111111666667E+04
|
||||
431,2,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex27
|
||||
437,2,-1.1111111666667E+04
|
||||
437,2,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex28
|
||||
440,2,-1.1111111666667E+04
|
||||
440,2,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex29
|
||||
443,2,-1.1111111666667E+04
|
||||
443,2,-11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex30
|
||||
446,2,-1.1111111666667E+04
|
||||
446,2,-11111.111666666666
|
||||
|
||||
|
||||
** ConstraintForce12
|
||||
** node load on shape: Forces:Vertex37
|
||||
1067,2,1.1111111666667E+04
|
||||
1067,2,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex38
|
||||
1071,2,1.1111111666667E+04
|
||||
1071,2,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex39
|
||||
1073,2,1.1111111666667E+04
|
||||
1073,2,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex40
|
||||
1075,2,1.1111111666667E+04
|
||||
1075,2,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex41
|
||||
1078,2,1.1111111666667E+04
|
||||
1078,2,11111.111666666666
|
||||
|
||||
** node load on shape: Forces:Vertex42
|
||||
1081,2,1.1111111666667E+04
|
||||
1081,2,11111.111666666666
|
||||
|
||||
|
||||
|
||||
@@ -2777,8 +2777,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.19.21972 +18 (Git)
|
||||
** written on --> Fri Jul 17 22:14:04 2020
|
||||
** written by --> FreeCAD 0.21.0
|
||||
** written on --> Tue Mar 28 05:36:19 2023
|
||||
** file name -->
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
Reference in New Issue
Block a user