Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Godoy, William
jexio
Commits
3a66012a
Commit
3a66012a
authored
Sep 10, 2020
by
Godoy, William
Browse files
Merge branch 'linear-model' into 'master'
Linear model See merge request
!4
parents
c0fed3e1
b6786836
Changes
3
Hide whitespace changes
Inline
Side-by-side
src/extractor/Amrex.jl
View file @
3a66012a
...
...
@@ -11,7 +11,7 @@ mutable struct Amrex <: AbstractAmrex
Amrex
(
outputPrefix
::
String
,
runlogFile
::
String
)
=
new
(
"Amrex"
,
outputPrefix
,
[
"max_step"
,
"amr.check_int"
,
"amr.plot_int"
,
"amr.n_cell"
,
"amr.max_level"
],
[
"max_step"
,
"amr.check_int"
,
"amr.plot_int"
,
"amr.n_cell"
,
"amr.max_level"
,
"caseID"
],
[
"plots_size"
,
"checkpoints_size"
],
runlogFile
,
)
...
...
src/extractor/AmrexCastro.jl
View file @
3a66012a
...
...
@@ -24,7 +24,7 @@ struct AmrexCastro <: AbstractAmrex
"castro.max_grid_size"
,
],
Dict
{
String
,
Array
{
String
}}(
"plots_size"
=>
[
"amr.nplot_files"
,
"amr.ncells"
,
"amr.max_level"
],
"plots_size"
=>
[
"amr.nplot_files"
,
"amr.ncells"
],
"checks_size"
=>
[
"amr.check_int"
,
"amr.ncheck_files"
,
...
...
@@ -67,6 +67,7 @@ function _get_input_file(extractor::AmrexCastro, outputDir::String)::String
else
end
# print(inputFiles)
return
inputFiles
[
1
]
end
...
...
@@ -75,7 +76,7 @@ end
function
_get_linear_model_X
(
extractor
::
AmrexCastro
)
::
DataFrames
.
DataFrame
# get directories runs output location
outputDirs
=
helper_get_prefix_directories
(
extractor
.
outputPrefix
)
#
println(outputDirs)
println
(
outputDirs
)
X
::
DataFrames
.
DataFrame
=
DataFrames
.
DataFrame
()
isXInit
::
Bool
=
false
...
...
@@ -84,13 +85,15 @@ function _get_linear_model_X(extractor::AmrexCastro)::DataFrames.DataFrame
inputFile
::
String
=
_get_input_file
(
extractor
,
outputDir
)
# get relevant input parameters
parameters
=
_input_parser
(
extractor
,
inputFile
)
independent_variables
=
_get_independent_variables
(
extractor
,
parameters
)
independentVariables
=
_get_independent_variables
(
extractor
,
parameters
)
# get outputDir name
independentVariables
[
"caseID"
]
=
helper_get_relative_path
(
outputDir
)
if
!
isXInit
X
=
DataFrames
.
DataFrame
(
independent
_v
ariables
)
X
=
DataFrames
.
DataFrame
(
independent
V
ariables
)
isXInit
=
true
else
DataFrames
.
push!
(
X
,
independent
_v
ariables
)
DataFrames
.
push!
(
X
,
independent
V
ariables
)
end
end
...
...
@@ -125,21 +128,31 @@ function _run_linear_model_plots_size(extractor::AmrexCastro, X::DataFrames.Data
push!
(
plotsSizesData
,
[
plotsSize
])
end
println
(
plotsSizesData
)
# Prepare the X independent variables in the linear model
XNames
::
Array
{
String
}
=
extractor
.
outputs
[
"plots_size"
]
for
XName
in
XNames
columnName
=
Symbol
(
XName
)
col1
=
Symbol
(
"amr.nplot_files"
)
col2
=
Symbol
(
"amr.ncells"
)
insert!
(
plotsSizesData
,
2
,
X
[
!
,
col1
]
.*
X
[
!
,
col2
],
:
new_data
)
#plotsSizesData[!,col1] =
#for XName in XNames
#columnName = Symbol(XName)
# this syntax [!, symbol] does not make a copy, use [:, symbol] for copies
plotsSizesData
[
!
,
columnName
]
=
X
[
!
,
columnName
]
end
#
plotsSizesData[!, columnName] = X[!, columnName]
#
end
# formula from https://discourse.julialang.org/t/glm-jl-with-unknown-column-names/20692/5
response
=
Symbol
(
names
(
plotsSizesData
)[
1
])
predictors
=
Symbol
.
(
names
(
plotsSizesData
)[
2
:
end
])
println
(
plotsSizesData
)
f
=
@eval
(
GLM
.
@formula
(
$
response
~
(
+
)(
1
,
$
(
predictors
...
))))
f
=
@eval
(
GLM
.
@formula
(
$
response
~
(
+
)(
$
(
predictors
...
))))
ols
=
GLM
.
lm
(
f
,
plotsSizesData
)
...
...
src/helper/helperSystem.jl
View file @
3a66012a
...
...
@@ -22,6 +22,18 @@ function helper_get_prefix_directories(prefix::String)::Array{String}
end
function
helper_get_relative_path
(
fullName
::
String
)
::
String
findDelimiter
=
findlast
(
"/"
,
fullName
)
# if findDelimiter == Nothing
# return fullName
# end
relativeName
=
string
(
fullName
[
findDelimiter
[
1
]
+
1
:
end
])
return
relativeName
end
"""
Gets the list of files inside a path that meet the prefix criteria.
Example:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment