Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rename LCSO -> SeparableOptimization #6

Merged
merged 4 commits into from Jul 17, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Expand Up @@ -11,7 +11,7 @@ When filing an issue, make sure to answer these five questions:

Open an issue. Please include descriptions of the following:
- The version of Julia that you are running
- The version of LCSO.jl that you are running
- The version of SeparableOptimization.jl that you are running
- Observations
- Expectations
- Steps to reproduce
Expand Down Expand Up @@ -48,6 +48,6 @@ Code coverage can be generated locally using the [LocalCoverage.jl](https://gith
2. generate coverage
```julia
using LocalCoverage
generate_coverage("LCSO")
generate_coverage("SeparableOptimization")
```
3. open coverage report html `open_coverage("LCSO")`
3. open coverage report html `open_coverage("SeparableOptimization")`
2 changes: 1 addition & 1 deletion Project.toml
@@ -1,4 +1,4 @@
name = "LCSO"
name = "SeparableOptimization"
uuid = "b66076ac-575f-47ff-93e2-9c43ffc8d39e"
authors = ["Nicholas Moehle", "Ellis Brown", "Mykel J. Kochenderfer"]
version = "0.1.0"
Expand Down
18 changes: 9 additions & 9 deletions README.md
@@ -1,13 +1,13 @@
# LCSO.jl
# SeparableOptimization.jl

[![Build status](https://github.com/JuliaFirstOrder/LCSO.jl/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/JuliaFirstOrder/LCSO.jl/actions?query=workflow%3ACI+branch%3Amain)
[![codecov](https://codecov.io/gh/JuliaFirstOrder/LCSO.jl/branch/main/graph/badge.svg?token=Cz8LGxvzwx)](https://codecov.io/gh/JuliaFirstOrder/LCSO.jl)
[![Build status](https://github.com/JuliaFirstOrder/SeparableOptimization.jl/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/JuliaFirstOrder/SeparableOptimization.jl/actions?query=workflow%3ACI+branch%3Amain)
[![codecov](https://codecov.io/gh/JuliaFirstOrder/SeparableOptimization.jl/branch/main/graph/badge.svg?token=Cz8LGxvzwx)](https://codecov.io/gh/JuliaFirstOrder/SeparableOptimization.jl)

[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://juliafirstorder.github.io/LCSO.jl/stable)
[![](https://img.shields.io/badge/docs-dev-blue.svg)](https://juliafirstorder.github.io/LCSO.jl/dev)
[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://juliafirstorder.github.io/SeparableOptimization.jl/stable)
[![](https://img.shields.io/badge/docs-dev-blue.svg)](https://juliafirstorder.github.io/SeparableOptimization.jl/dev)


**LCSO.jl** is a [Julia](http://julialang.org) package that solves **L**inearly **C**onstrained **S**eparable **O**ptimization Problems.
**SeparableOptimization.jl** is a [Julia](http://julialang.org) package that solves Linearly Constrained Separable Optimization Problems.


The package currently supports quadratic-plus-separable problems of the form
Expand Down Expand Up @@ -39,14 +39,14 @@ This package and [PiecewiseQuadratics.jl](https://github.com/JuliaFirstOrder/Pie
Use Julia's builtin package manager [Pkg](https://docs.julialang.org/en/v1/stdlib/Pkg/) to install.
From a Julia REPL:
```Julia
] add LCSO
] add SeparableOptimization
```

## Example
Let's use LCSO to solve an example problem.
Let's use SeparableOptimization to solve an example problem.

```Julia
using LCSO
using SeparableOptimization
using PiecewiseQuadratics
using LinearAlgebra

Expand Down
1 change: 1 addition & 0 deletions docs/Project.toml
Expand Up @@ -6,5 +6,6 @@ LDLFactorizations = "40e66cde-538c-5869-a4ad-c39174c6795b"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Parameters = "d96e819e-fc66-5662-9728-84c9c7592b0a"
PiecewiseQuadratics = "63c5698c-79a9-4248-aa10-bd2a91651b58"
SeparableOptimization = "b66076ac-575f-47ff-93e2-9c43ffc8d39e"
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
12 changes: 6 additions & 6 deletions docs/make.jl
Expand Up @@ -17,18 +17,18 @@ limitations under the License.
push!(LOAD_PATH, "../src/")

using Documenter
using LCSO
using SeparableOptimization
using PiecewiseQuadratics


DocMeta.setdocmeta!(LCSO, :DocTestSetup, :(using LCSO, PiecewiseQuadratics); recursive=true)
DocMeta.setdocmeta!(SeparableOptimization, :DocTestSetup, :(using SeparableOptimization, PiecewiseQuadratics); recursive=true)


makedocs(
sitename = "LCSO.jl",
sitename = "SeparableOptimization.jl",
authors = "Nick Moehle, Ellis Brown, Mykel Kochenderfer",
repo = "github.com/JuliaFirstOrder/LCSO.jl.git",
modules = [LCSO],
repo = "github.com/JuliaFirstOrder/SeparableOptimization.jl.git",
modules = [SeparableOptimization],
format = Documenter.HTML(prettyurls = get(ENV, "CI", nothing) == "true"),
pages = [
"index.md",
Expand All @@ -37,7 +37,7 @@ makedocs(
)

deploydocs(;
repo = "github.com/JuliaFirstOrder/LCSO.jl.git",
repo = "github.com/JuliaFirstOrder/SeparableOptimization.jl.git",
devbranch = "main",
push_preview = true,
)
26 changes: 13 additions & 13 deletions docs/src/api.md
@@ -1,9 +1,9 @@
# API Documentation

Docstrings for LCSO.jl interface members can be [accessed through Julia's built-in documentation system](https://docs.julialang.org/en/v1/manual/documentation/#Accessing-Documentation) or in the list below.
Docstrings for SeparableOptimization.jl interface members can be [accessed through Julia's built-in documentation system](https://docs.julialang.org/en/v1/manual/documentation/#Accessing-Documentation) or in the list below.

```@meta
CurrentModule = LCSO
CurrentModule = SeparableOptimization
```

## Contents
Expand Down Expand Up @@ -50,25 +50,25 @@ optimize
## ADMM

```@docs
LCSO.factorize_kkt
LCSO.solve_kkt!
LCSO.admm_step!
LCSO.compute_stats
SeparableOptimization.factorize_kkt
SeparableOptimization.solve_kkt!
SeparableOptimization.admm_step!
SeparableOptimization.compute_stats
```

## Prox cache

```@docs
LCSO.ProxCache
LCSO.prox_step
SeparableOptimization.ProxCache
SeparableOptimization.prox_step
```

## Convergence

```@docs
LCSO.get_term_cond_cache
LCSO.check_term_conds!
LCSO.ConvergeTermCache
LCSO.FirstVarsTermCache
LCSO.get_obj_and_res_from_first_vars
SeparableOptimization.get_term_cond_cache
SeparableOptimization.check_term_conds!
SeparableOptimization.ConvergeTermCache
SeparableOptimization.FirstVarsTermCache
SeparableOptimization.get_obj_and_res_from_first_vars
```
10 changes: 5 additions & 5 deletions docs/src/index.md
@@ -1,6 +1,6 @@
# LCSO.jl
# SeparableOptimization.jl

**LCSO.jl** is a [Julia](http://julialang.org) package that solves **L**inearly **C**onstrained **S**eparable **O**ptimization Problems.
**SeparableOptimization.jl** is a [Julia](http://julialang.org) package that solves Linearly Constrained Separable Optimization Problems.


The package currently supports quadratic-plus-separable problems of the form
Expand Down Expand Up @@ -37,14 +37,14 @@ Depth = 2
Use Julia's builtin package manager [Pkg](https://docs.julialang.org/en/v1/stdlib/Pkg/) to install.
From a Julia REPL:
```Julia
] add LCSO
] add SeparableOptimization
```

## Example
Let's use LCSO to solve an example problem.
Let's use SeparableOptimization to solve an example problem.

```@example 1
using LCSO
using SeparableOptimization
using PiecewiseQuadratics
using LinearAlgebra

Expand Down
2 changes: 1 addition & 1 deletion src/LCSO.jl → src/SeparableOptimization.jl
Expand Up @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License.
=#

module LCSO
module SeparableOptimization

using LinearAlgebra
using LDLFactorizations
Expand Down
2 changes: 1 addition & 1 deletion src/admm_structs.jl
Expand Up @@ -189,7 +189,7 @@ The fields represent:

# Notes:
* We keep the previous values of `x`, `w`, `z`, `y` in order to check for convergence.
* The actual problem we are solving here is detailed in [`LCSO.factorize_kkt`](@ref)
* The actual problem we are solving here is detailed in [`SeparableOptimization.factorize_kkt`](@ref)
* `w` and `y` are used when minimizing the augmented Lagrangian of the original problem (and consequently
in ADMM's update rules)
"""
Expand Down
8 changes: 4 additions & 4 deletions test/runtests.jl
Expand Up @@ -14,17 +14,17 @@ See the License for the specific language governing permissions and
limitations under the License.
=#

using LCSO
using SeparableOptimization
using PiecewiseQuadratics
using LinearAlgebra
using SparseArrays
using Documenter
using Test

@testset "Doctests" begin
DocMeta.setdocmeta!(LCSO, :DocTestSetup, :(using LCSO, PiecewiseQuadratics);
recursive=true)
doctest(LCSO)
DocMeta.setdocmeta!(SeparableOptimization, :DocTestSetup,
:(using SeparableOptimization, PiecewiseQuadratics); recursive=true)
doctest(SeparableOptimization)
end

@testset "ADMM Structs" begin
Expand Down
4 changes: 2 additions & 2 deletions test/test_admm.jl
Expand Up @@ -15,7 +15,7 @@ limitations under the License.
=#

@testset "Identity constrained QP" begin
P = I(4)
P = Diagonal(trues(4)) # === I(4) in 1.2+
q = ones(4)
A = spzeros(1, 4)
b = [1.0]
Expand All @@ -28,7 +28,7 @@ limitations under the License.
end

@testset "Diag constrained QP" begin
P = spdiagm(1:4)
P = spdiagm(0 => 1:4)
q = Vector{Float64}(1:4)
A = spzeros(1, 4) .+ 1
b = [1.0]
Expand Down