khartmansjsu / khartmansjsu/MOC-Linux
Implementing Standalone call to CreateMOCGrid()
Nobody has claimed this yet.
- Dominant language
- Gnuplot
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
MOC_GridDlg.cpp has a method called CMOC_GridDlg::OnCalcMOCBUTTOM(). This method is printed below for reference.
void CMOC_GridDlg::OnCalcMOCBUTTON()
{
int flag = 0;
m_STTRun_BUTTON.EnableWindow(0);
// This is the function that starts the whole calculation process
MOC_GridCalc *moc = new MOC_GridCalc;
UpdateData(TRUE);
m_CalcMOC_BUTTON.EnableWindow(0);
if(moc->SetInitialProperties( m_pres_i, m_temp_i, m_molWt_i,
m_gamma_i, m_pAmb, m_nC, m_RWTU, m_RWTD, m_dTLimit, m_nRRCAboveBD,
m_nSLi, m_nSLj, m_vel, m_throat_CHECK.GetCheck(), m_ispIdeal));
else
{
AfxMessageBox("Could not set properties");
exit(1);
}
// Set the design variable, designValues[0] and [1] to the correct values depending on the
// designParamtype
if ( designParam == EXITMACH) designValues[0] = m_mDesign;
else if ( designParam == EPS) designValues[0] = m_eps;
else if ( designParam == NOZZLELENGTH) designValues[0] = m_length;
else if ( designParam == EXITPRESSURE) designValues[0] = m_pExit;
if ( nozzleType == FIXEDEND)
{
designParam = ENDPOINT;
designValues[0] = m_xE;
designValues[1] = m_rE;
}
else if (nozzleType == CONE) designValues[1] = m_coneAngle;
moc->SetSolutionParameters( nozzleGeom, nozzleType , designParam, designValues[0],
designValues[1], m_thetaBi);
moc->SetPrintMode(m_print_COMBO.GetCurSel());
flag = moc->CreateMOCGrid();
m_CalcMOC_BUTTON.EnableWindow(1);
if (flag && m_print_COMBO.GetCurSel()) m_STTRun_BUTTON.EnableWindow(1);
delete moc;
return;
}
In this issue, I will document my progress on making a "main" function which will call the CreateMOCGrid method in linux, and produce the same output files which are generated in normal operation.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with MOC_GridDlg.cpp and the OnCalcMOCBUTTON method to trace the inputs passed to CreateMOCGrid(). Implement the Linux main entry point around that flow, then compare its generated files with the outputs_M3.5Perf directory. Done means the standalone Linux run produces the same output files as normal operation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- operating-systems, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100